What it does
A GPS watch, phone or handheld logger records a track: a point every few seconds with a position, often a height and a time. This tool reads that track and works out how far you went, how long you were moving, your pace and top speed, how much you climbed, and your time for every kilometre or mile. It draws a plan, an elevation profile and a speed chart.
Your file stays on this device. The page reads it in your browser. Nothing is uploaded, saved or sent anywhere, and it works offline once the page has loaded.
How to use it
- Press Open a GPX or CSV file, or paste a table with a header row naming time, lat, lon and ele (any order; elevation and time are optional). GPX text can be pasted too.
- Choose kilometres or miles.
- Adjust the settings if you need to. Each is explained below.
- Read the summary, charts and splits, and download them as PNG, PDF or Word.
The settings
- Distance on: the WGS84 ellipsoid (Vincenty’s formula, the shape GPS uses) or a sphere (haversine). On everyday tracks they differ by a fraction of a percent.
- Counts as stopped below: steps slower than this count as stopped time, not moving time.
- Ignore jumps faster than: GPS sometimes throws a point far away. A step faster than this is skipped, and the next point is measured from the last good one.
- Count climbing in steps of: GPS heights wobble by a few metres. Climbing and descending only count once the height has changed by this much, which stops noise adding up to fake climbing.
- Thin points: drops points that sit within this distance of a straight line through their neighbours (Douglas-Peucker). It speeds up huge files; it can shorten the distance slightly.
Worked example
The example is a made-up loop, recorded every 10 seconds, with a two-minute stop and one GPS jump of over a kilometre. The tool skips the jump and finds 4.75 km in 31:00, of which 29:00 is moving time, an average of 6:06 per km (9.8 km/h) while moving. With a 5 m climbing step it counts +44 m and −44 m, as it should on a loop. Set the step to 0 and the same track shows +63 m: that extra is GPS height noise.
Good to know
- Distances follow the ground track on the ellipsoid; they ignore slope, which adds very little on most routes.
- Several track segments (for example after pausing a watch) are kept apart: no distance is counted across the gap.
- Elevation from GPS alone is rough. Barometric or map-corrected heights are better if your device offers them.
FAQ
Why does my watch show a different distance? Watches smooth the track and may use different filters or extra sensors. Small differences are normal.
Can I open a FIT or TCX file? Not yet. Most apps can export GPX, which this tool reads.
Is my location stored? No. Nothing about you or your file is stored or sent; closing the page clears it.
Where the numbers come from
- Haversine great-circle distance and Vincenty's (1975) inverse formula on the WGS84 ellipsoid (a = 6 378 137 m, f = 1/298.257223563), written by fibub from the published equations; checked against the standard Flinders Peak to Buninyong test line.
- Mean earth radius 6 371 008.8 m (IUGG); GPX 1.1 is an open format.
- Moving time, spike filter, climbing threshold, splits and Douglas-Peucker thinning: written by fibub from first principles.
- The example track is synthetic, generated by fibub; it is not anyone's real route.
Standard scientific values, such as constants, atomic weights and melting points, are facts found in every textbook; we name where ours were checked. If you are an author or publisher and want a value, a credit or a table changed or removed, tell us and we will act quickly.
Last updated 2026-11-08.