Convert CSV (spreadsheet) to GPX

Your file never leaves your device — conversion happens here in your browser.

Spreadsheet GPS data — whether exported from another tool or built by hand — needs a real GPS format before any device or fitness app will touch it, and GPX is the one nearly all of them accept. This tool reads a CSV using FitFileHub's own documented column names (timestamp, lat, lon, elevation_m, and optional sensor columns), while also tolerating common alias headers so a spreadsheet that wasn't built exactly to spec still has a good chance of parsing cleanly. Each row becomes a GPX trackpoint: position and elevation carry over in full, heart rate and cadence map onto GPX's standard extension fields, and timestamps come across at GPX's native second resolution. Power survives too, though GPX support for it is lossy by nature of the target format rather than anything this tool does to it. What doesn't make the trip is distance and speed — GPX has no fields for either, so if your CSV has them, they're dropped, though most GPX-reading software recalculates both from position and time anyway. Any lap-index column in the source has nowhere to go, since GPX has no lap structure at all. The conversion happens entirely in your browser, in a background worker for large files, so nothing about your data — however it was generated — ever reaches a server.

Questions

What column names does the CSV need?

FitFileHub's own schema: timestamp, lat, lon, elevation_m, and optionally hr_bpm, cadence_rpm, power_w, temperature_c, and a lap index. Common alias headers are also recognized, so an export from another tool will often parse without edits.

Will my lap markers survive in the GPX file?

No — GPX has no concept of laps at all. If lap structure matters, convert to TCX instead, which represents laps natively.

What happens to distance or speed columns in my CSV?

They're not written to the GPX, since GPX has no fields for either. Almost all GPX-reading software recalculates both from position and timestamps automatically.

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.