GPX Track Analyzer
Inspect position, time and elevation continuity in GPX 1.1 tracks or FIT activity records locally. Distance never bridges GPX segment boundaries, and each issue includes its original record and coordinates. The SVG route uses no external map tiles and is not a road-distance or survey-grade measurement.
Key features
- Read GPX 1.1 multiple tracks/segments and FIT activity records in the browser
- Compute per-segment WGS84 great-circle horizontal distance, positive elapsed time, ascent and descent
- Detect reversed/equal times, missing elevation/time and GPS jumps above a chosen speed threshold
- Draw local SVG route and distance-based elevation/speed profiles without external map requests
- Locate issues by track, segment, point, original record, coordinate and timestamp
- Choose display distance units and export formula-safe CSV plus versioned JSON report
How to use
- Choose a GPX 1.1 or FIT file up to 5 MB, or load the example GPX.
- Set a GPS-jump speed threshold in km/h and rerun the analysis.
- Review total and per-segment horizontal distance, positive elapsed time, ascent and descent.
- Compare the route and elevation/speed charts with the located issue table.
- Save per-point CSV or a JSON report containing the threshold and calculation units locally.
Use cases
- Check whether an abrupt GPS spike inflated a running route's total distance
- Find missing elevation samples in a hiking GPX file
- Inspect reversed timestamps in a FIT activity record
- Compare lengths and elevation change across multiple GPX tracks and segments
Frequently asked questions
How is distance calculated?
Adjacent WGS84 coordinates are joined with haversine great-circle horizontal distance using mean Earth radius 6,371,008.8 m. Segment boundaries are not joined. Elevation, road bends and GPS error are not corrected, and the raw total still includes steps marked as GPS-jump candidates.
What counts as a GPS jump?
When adjacent timestamps have a positive interval, calculated mean speed from horizontal distance must exceed your km/h threshold. Missing or reversed time prevents speed and jump classification for that step. Choose a threshold appropriate to your activity.
Which FIT data is used?
Position, time and elevation from CRC-valid FIT Activity record messages are used. Records without position are counted and skipped. FIT lap/pause events are not split into new segments; device speed is ignored in favor of speed recomputed from coordinates and time.
Are GPX routes and extensions analyzed?
Only GPX 1.1 trk/trkseg/trkpt are analyzed. Independent rte routes, wpt waypoints and manufacturer extensions are not merged into the track. Standard trkpt latitude/longitude and optional ele/time are used.
How are ascent, descent and missing elevation handled?
Elevation change is counted only when both consecutive points in the same segment have elevation. Missing values are flagged and never interpolated. No elevation noise filter is applied.
Is the file uploaded?
No. The file is read and analyzed in the current browser tab. No external map tiles or conversion API are used. CSV and JSON are created only when you click a download button.
Privacy
Location and movement times can be sensitive. The source file and report remain in the current browser tab; there is no automatic upload or persistent storage. Review who receives an exported file before sharing it.
Comments & questions