Where heart rate is stored in a GPX file
GPX 1.1 defines a handful of values per track point: latitude and longitude (both required), elevation and time. For anything else there is an <extensions> slot. The extension almost everyone uses for sensor data is Garmin's TrackPointExtension, which adds hr (heart rate in beats per minute), cad (cadence) and atemp (air temperature).
A track point with heart rate looks like this:
<trkpt lat="52.0907" lon="5.1214">
<ele>4.2</ele>
<time>2026-09-20T08:14:05Z</time>
<extensions>
<gpxtpx:TrackPointExtension>
<gpxtpx:hr>148</gpxtpx:hr>
<gpxtpx:cad>86</gpxtpx:cad>
</gpxtpx:TrackPointExtension>
</extensions>
</trkpt>The prefix in front of the tag changes between apps (gpxtpx: in one file, ns3: in another), but it points to the same Garmin schema. Power is not part of TrackPointExtension. It needs a separate Garmin PowerExtension or a non-standard tag, so support for power in GPX varies from app to app.
What Strava's GPX export keeps
The Export GPX option on a Strava activity gives you the track (position, elevation and time) with heart rate and cadence added as extensions when the activity has them. What it does not give you is the structure around it: laps and device details are not part of a GPX. If you want everything your watch recorded, choose Export Original in the same menu instead. For Garmin and Wahoo recordings that is the FIT file. The steps are in how to convert FIT to GPX.
How to check whether your GPX has heart rate
- In a text editor: open the file and search for
hr>. If you find matches inside the track points, the data is there. - With a free tool: drop the file into the GPS Activity Stats viewer. It shows an average heart rate when it finds one, and a dash when it does not. It runs in your browser, so the file stays on your device.
When to use FIT or TCX instead
| What you need | Best format |
|---|---|
| Heart rate per lap, lap averages | FIT or TCX |
| Heart rate from an indoor session without GPS | FIT or TCX (a GPX track point needs coordinates) |
| Power, temperature and other extra sensors | FIT |
| A full, untouched archive copy | FIT |
| Sharing a route or making a poster | GPX is fine |
Does converting to GPX lose heart rate?
Not with the GPX, TCX & FIT converter on this site. Converting FIT or TCX to GPX writes heart rate and cadence into TrackPointExtension and power into Garmin's PowerExtension. Going from GPX back to FIT restores them as native FIT fields. Two things are dropped: lap boundaries, and any samples recorded without a GPS position.