GPX to GeoJSON Converter
Gets GPS-recorded paths into a format a web map can plot, typically for sharing rides, routes, or field surveys.
Common issues converting GPX to GeoJSON
- Tracks (<trk>) become LineString features; routes (<rte>) also become LineStrings. If your consumer treats them differently, tag them with a gpxType property before rendering.
- Elevations are written as the Z component of coordinates (longitude, latitude, elevation). Consumers that only read 2D will silently ignore Z — fine for most maps.
- Per-trackpoint timestamps land in a coordTimes property aligned by index. Reconstruct the full 3D-plus-time picture by zipping coordinates with coordTimes.
- Fitness extensions (heart rate, cadence, temperature) are preserved under feature properties in a structured sub-object.
Frequently asked questions
Are track timestamps preserved?
Yes. Each LineString feature gets a coordTimes property — an array of ISO timestamps aligned with the coordinates array, so you can replay the track in time order.
Is elevation included?
Yes. GPX <ele> values are written as the Z component of each coordinate, producing 3D geometries. Libraries that render 2D ignore Z silently.
What about heart rate and cadence?
GPX TrackPointExtension elements (hr, cad, atemp, depth) are preserved as nested properties on the output features, making the data available for fitness analysis.
How are waypoints represented?
As Point features with the waypoint's name, description, and time in the properties object.