Convert KML to CSV (spreadsheet)
Your file never leaves your device — conversion happens here in your browser.
A KML placemark is coordinates, full stop — no rows, no columns, nothing a spreadsheet can chart until it's converted. This tool walks every point in the KML geometry and writes one CSV row per coordinate, with columns for timestamp (when present), lat, lon, and elevation_m, using FitFileHub's own documented CSV schema throughout. That makes it a natural target for anyone who wants to plot an elevation profile of a planned route, measure distance between waypoints in a spreadsheet, or hand the coordinate list to another tool that reads CSV rather than XML. Because KML is purely a geometry format — built for Google Earth and mapping, not for recording a workout — there are no heart rate, cadence, power, or lap columns to include; those channels were never part of the source, so the CSV simply omits them rather than leaving blank cells behind. KML also stores coordinates in lon,lat,ele order, the reverse of most GPS formats, and this tool handles that reordering automatically so the output lines up with what a spreadsheet or plotting script expects. Everything runs client-side in your browser, in a background worker for larger files, so a multi-thousand-point route converts without ever leaving your device or touching a server anywhere.
Questions
What columns will the CSV have?
lat, lon, and elevation_m always; a timestamp column only if the source KML's coordinates included time values. There are no hr_bpm, cadence_rpm, power_w, or lap columns, since KML never carries that data.
Why does my output CSV have no timestamp column at all?
Most routes drawn by hand in Google Earth or My Maps have no time information on their coordinates, so there's nothing to put in a timestamp column and it's left out entirely.
Is the coordinate order corrected automatically?
Yes — KML stores lon,lat,ele, but the CSV output uses standard lat/lon columns, matching what spreadsheet tools and plotting scripts expect.
Is there a file size limit?
Free use handles files up to 25 MB, 3 at a time. Larger or more frequent conversions are unlocked by supporting the project.