Convert FIT to GPX

Upload a FIT activity file from a Garmin watch, bike computer or training app and download the route as a GPX track. Up to 10 files at once.

Convert to GPX

Garmin watches and bike computers, and many other sports devices and training apps, record activities in FIT, a compact binary format. Most map apps, route planners and GIS programs want GPX instead. Upload the .fit file above and you get a GPX with the route you rode, ran or hiked, including elevation and the time of every point.

Do you actually need to convert?

Not always. Strava reads FIT directly, including heart rate, cadence and power, according to its upload documentation, and Komoot imports FIT as well. If you are uploading to one of those, use the original file. You lose nothing that way.

Conversion is useful when the target takes only GPX. Mapy.com (formerly Mapy.cz) imports GPX only. Navigation apps on phones, older GPS units, QGIS and photo programs that geotag pictures from a track log usually expect GPX too. And sending a friend the route of yesterday's ride is easier as GPX, because anybody can open it.

What the GPX contains

Our converter decodes the activity from the FIT file and writes a standard GPX 1.0 file:

  • Track points with latitude, longitude, elevation and time. If the device recorded speed, it is kept in metres per second.
  • Pauses. Every time the timer is started again after a stop or auto-pause, a new track segment begins. Map apps therefore do not draw a straight line across the place where you stood or took the train.
  • Laps. The end of each lap becomes a waypoint named LAP001, LAP002 and so on. Lap times and lap statistics are not carried over.
  • Saved locations stored in the FIT file become waypoints.

What is lost: heart rate, cadence, power and temperature. The FIT file contains them, but plain GPX has no fields for them and our output does not use the Garmin extensions. The same goes for everything that is not a track point: calories, training effect, session summaries, device and sensor information, and data fields added by apps such as running power meters.

Common problems

FIT to GPX without heart rate

As described above, the GPX holds the route, not the sensor data. If you need heart rate and power in another platform, upload the original FIT there. Strava, for one, takes it directly.

The GPX is empty

The activity has no GPS positions: a treadmill run, a turbo trainer session, pool swimming or strength training. Points without a position are skipped, so there is no track to write.

Conversion fails with a damaged file

Each FIT file ends with a CRC checksum. When the watch battery dies mid-activity or a sync is interrupted, the file can end in the middle of a record. Our converter stops on such errors rather than produce a half-guessed track. Try syncing the device again or exporting the activity from the platform it uploaded to.

Times in the GPX are one or two hours off

They are not wrong. FIT stores time in UTC and the GPX keeps it in UTC, marked with a Z at the end. Map apps convert it to local time, but if you geotag photos from the track, set the camera's time zone offset in the photo program.

Mapy.com refuses a long activity

Mapy.com accepts at most 70,000 points per route. With one point per second that is about 19 hours, so multi-day or ultra events can exceed it. Watches using smart recording store fewer points and rarely hit the limit.

Other ways to get a GPX

If the activity is already in Garmin Connect, open it on the website and use Export to GPX in the gear menu. Strava offers Export GPX for your own activities too. Our converter is handy when you have the files themselves: copied from the device over USB (many Garmin devices keep them in the GARMIN/Activity folder), received from a training partner, or from a brand whose app has no GPX export. You can convert 10 files at once without creating any account.

FIT and GPX side by side

FITGPX
Typebinary, compactXML text, human-readable
Maintained byGarmin (FIT SDK)TopoGrafix; GPX 1.0 in 2002, 1.1 in 2004
Typical contentfull activity: records, laps, sessions, sensors, devicetracks, routes, waypoints
Timeseconds since 31 December 1989 UTCISO 8601 date and time in UTC
Positionsemicircles (2³¹ = 180°)decimal degrees

FIT, short for Flexible and Interoperable Data Transfer, is designed for sport, fitness and health devices. Garmin publishes the specification and SDK on its developer site. Time is counted in seconds from midnight UTC on 31 December 1989, the so-called FIT epoch, and positions are stored as 32-bit integers in which 2³¹ units equal 180 degrees, a resolution of under one centimetre. GPX is an open XML format by TopoGrafix; version 1.1 dates from 9 August 2004.

Frequently asked questions

Does the GPX keep heart rate, cadence and power?

No. The GPX contains the route with elevation, time and speed. For sensor data, upload the original FIT file to the target platform.

Can I import a FIT file into Mapy.com?

Not directly, Mapy.com imports GPX only. Convert the FIT file here and import the GPX.

Are laps preserved when converting FIT to GPX?

The end point of each lap becomes a waypoint named LAP001, LAP002 and so on. Lap times and statistics are not included.

Why is the converted GPX empty?

The activity has no GPS positions, for example a treadmill run or an indoor ride. Without positions there is no track to write.

Where do I find FIT files on a Garmin watch?

On many Garmin devices connected by USB, finished activities are in the GARMIN/Activity folder. You can also download the original file from Garmin Connect on the web.