§ I · Cartography station
Isolate any portion of your GPX track

Your GPX track
segment by segment.

Pick a climb, a sprint or a descent and you get the elevation gain, pace, gradient and speed of that segment alone. Most tools only give you the average for the whole outing.

Segment analysis Zero server upload No account Free
0server upload0account needed∞files analysed13measures per segment2languages · fr / en

I looked for this reader. I never found it.

I wanted my numbers for one specific part of my run, say the climb over the last two kilometres, rather than the average for my three-hour outing.

I couldn't find an online analyser that let me isolate an arbitrary portion of a GPX track. They all showed the totals, or Strava segments drawn by other runners, but never the portion I cared about on my outing.

In the end I coded the reader I was looking for myself. Anyone can use it, with no account and no upload.

— Thomas Winkin — Trail runner • Web developer
§ III · Difference

Not the average. The segment.

Same GPX file, read differently.

Other analysers Full outing · 4 h 12
  • Distance 26.21mi
  • Total D+ 4,213ft
  • Average pace 9:10min/mi
  • Average gradient 1.5%
  • Total time 4 h 12
  • Avg V.A.M. 1,003ft/h
  • Avg heart rate 147bpm
  • Max heart rate 184bpm
  • Km-effort 55.0km-e

These are the same measures as in GPXchunk, but calculated over the whole four-hour outing. The climb gets lost in the flat return leg and the sprint in the warm-up, and you can't isolate the portion you're interested in.

GPXchunk Isolated segment · mi 15 → 17
  • Segment distance 2.39mi
  • Segment D+ 1,352ft
  • Segment pace 13:19min/mi
  • Average gradient 10.7%
  • Segment time 31′48″
  • V.A.M. 2,552ft/h
  • Avg heart rate 168bpm
  • Max heart rate 182bpm
  • Km-effort 8.0km-e

The same measures, recalculated for the segment you pick. Drag two handles on the profile or type the kilometre bounds, and the thirteen numbers update for that segment.

§ IV · Readings

What the analyser reveals.

Thirteen measures calculated point by point from your GPX file. The map, the elevation profile and the selected segment stay in sync.

01 / segment

Segment isolation

Drag two handles on the profile, click two points on the map or type the kilometre bounds. The thirteen measures recalculate live for the isolated segment. I haven't found this feature in any other online GPX reader.

Segment analysis
02 / profile

Interactive topographic profile

The terrain of the route, plotted from the altitude of each point. Click anywhere on the curve and the matching marker moves to that spot on the map.

03 / elevation

Filtered real elevation gain (D+)

The calculation uses a ±1 m threshold to filter out GPS noise, so small altimeter wobbles don't inflate the total. The result is close to what Strava or Garmin Connect show. The same D+ is used for km-effort, a difficulty index that combines distance and climb.

04 / pace

Pace, speed, V.A.M. & HR

On the selected segment: pace in min/mi, speed in mph, climbing speed in ft/h and average and max heart rate in bpm, from timestamped data. Distance is calculated with the haversine formula rather than a linear approximation.

05 / gradient

Smoothed instant gradient

The gradient is smoothed over a rolling 50 m window to absorb altitude noise, which gives a figure closer to what you feel in your legs.

06 / map

OpenStreetMap map

Open map tiles, the track on top and two movable markers at the ends of the segment. You can zoom, pan and open popups.

§ V · Procedure

Three steps, nothing more.

01

Drop the .gpx

A .gpx file exported from Garmin, Strava, Komoot, Suunto, Coros, Wahoo, Apple Watch, Polar and so on. The file stays in your browser and isn't sent anywhere.

02

Isolate the segment

Drag the two profile handles, click on the map or type the kilometre bounds. The selection stays in sync across all three views.

03

Read the measures

The measures update live for the segment alone: distance, time, D+, D−, speed, pace, max altitude, min altitude, net gradient, V.A.M., average HR, max HR and km-effort.

§ VI · Disciplines

Who this tool is built for.

The tool works for any sport that records a GPS track. A trail runner might isolate a climb, a road cyclist a final sprint, a hiker a col crossing.

Trail running Hiking MTB & Gravel Road cycling Ski touring Running Walking & pilgrimage Mountaineering Kayak & rowing Orienteering
§ VII · Privacy & funding

Private processing . Honest funding.

Your GPX file is never sent to a server. Reading the file, calculating distance and elevation, and drawing the map all happen in your browser tab. Your track doesn't leave your device, and that comes from how the tool is built, not from a promise.

The project is free and funded by Google AdSense slots. AdSense sets its own advertising cookies, framed by a consent banner.

When you close the tab, the file goes with it.

§ VIII · Questions

What the curious ask.

How is “segment analysis” different?
You pick two points on your track, on the map, on the elevation profile or by typing mile bounds. The analyser then recalculates the thirteen measures (distance, time, D+, D−, speed, pace, max altitude, min altitude, net gradient, V.A.M., average HR, max HR and km-effort) for that segment alone. Most online GPX analysers only show the average for the whole outing, so you can't isolate a 1 mi climb inside a 25 mi run.
Which file types are supported?
Any .gpx file that follows the 1.0 or 1.1 spec. <trkpt>, <ele> and <time> tags are read for the track; <wpt> (named waypoints) appear as icons on the map with their name and description. Exports from Garmin Connect, Strava, Komoot, Suunto App, Coros, Wahoo SYSTM and Apple Workout work as they are.
Is my file sent to a server?
Never. All the processing (reading the file, calculating distance and elevation, drawing the map and chart) happens in your browser tab. No network request contains the GPX data. Why this guarantee comes from how the tool is built.
Are there ads?
Yes, Google AdSense slots in the page margins pay for hosting and development. They are never placed inside the reader (map, profile, measures, segment). AdSense sets its own advertising cookies, controlled by the consent banner on your first visit.
Does the tool work offline?
Yes, once the page has loaded, except for the OpenStreetMap basemap, which downloads its tiles as you go. Without a connection the map stays blank, but the elevation profile and all the measures keep working.
How is elevation gain computed?
A 1 m threshold is applied between consecutive points: only changes larger than that are added up. This filters out GPS altimeter noise, which usually wobbles by ±1 to 2 m even when you're standing still, and gives a D+ close to what Strava or Garmin Connect show. The calculation is explained in our guide.
Can I analyse large tracks?
Yes. Tens of thousands of points load without slowing down on a recent browser, for example a 24-hour outing recorded at 1 point per second.
Is it really free, and unlimited?
Yes. There's no paid version and no file quota. Hosting is paid for by AdSense alone.
Is it a GPX analyzer or a GPX analyser?
Both. It's the same tool with two spellings: analyzer is US English, analyser is British and Commonwealth. The interface uses the British spelling because that's what the author is used to, and search engines treat both as the same query. Whichever you type, you end up on this page.

Open your next route.

Drop a GPX file and isolate the portion you care about. You don't need to sign up.

Open the analyser →