Free tool · FIT Toolkit

Turn any GPX into a navigable Garmin FIT course.

Convert a GPX route to a navigable Garmin FIT course in your browser. We detect turns, write course_point waypoints, preserve elevation, and hand back a .fit file that prompts you on every Edge, Fenix, or Forerunner. Free, no signup, your route never gets uploaded - the whole conversion runs locally on your device.

Save your training to a real log

Free · no signup · your file stays on your device

Course · 4 turns
Turn-by-turn FIT course

Bearing change (degrees) to mark a course_point. Higher = fewer turns.

How it works

  1. 1

    Drop a .gpx track

    Routes from Komoot, Ride With GPS, Strava, or hand-built - any GPX with trackpoints works.

  2. 2

    We detect the turns

    Every bearing change above 60 degrees becomes a course_point waypoint so the head unit can prompt you.

  3. 3

    Download the .fit

    Course-typed FIT with a course header and every original trackpoint preserved.

What you get

  • Auto-detects turns by bearing delta with an adjustable threshold
  • Course-typed FIT with header, records, and course_point messages
  • Works on Garmin Edge, Fenix, and Forerunner turn-by-turn navigation
  • Elevation field carried through untouched - we never resample altitude
  • Built on the official Garmin FIT SDK for round-trip-safe encoding
  • Works offline - your GPX stays on your device, never uploaded

FAQ

Why not just upload the GPX to my head unit?

Garmin head units treat a GPX as a track without turn prompts. A FIT course carries explicit course_point messages, so you get the beep and the on-screen arrow at every turn. The difference is roughly the same as following a line on a map versus following a real navigation system that tells you what to do.

Will my Garmin show turn-by-turn directions?

For most Edge units (Edge 530/540/830/840/1030/1040/1050), yes - the course_points trigger the standard turn-by-turn UI with the on-screen arrow. Older Fenix watches may only beep without the directional arrow. If your unit supports the Courses app, this file will navigate it.

Does this preserve elevation?

Yes - every trackpoint's ele field carries through verbatim. We do not resample altitude, smooth it, or pull from a different DEM. If your GPX had garbage elevation to start, the FIT will too. To clean that up, run the file through our [FIT Elevation Setter](/tools/fit-elevation-setter) after converting.

What is the turn-detection threshold?

Bearing change greater than 60 degrees across three consecutive trackpoints by default. Adjustable on the tool page if your route is unusually twisty (drop to 45 degrees for tight switchbacks) or unusually open (raise to 75 degrees for highway routes where you only want major decision points marked).

Will this work with Komoot, RWGPS, and Strava GPX exports?

Yes - all three platforms export standard GPX 1.1. Drop the file straight in. The only thing to watch for is that some Komoot exports include turn instructions as waypoints; we ignore those and detect turns from the track geometry to keep the result consistent across sources.

How do I copy the .fit onto my Garmin?

Plug the unit into your computer via USB. Drop the .fit into the Garmin/NewFiles or Garmin/Courses folder (depends on the model). Eject, unplug, and the course shows up in the Courses app on your unit.

Can I batch convert many GPX files at once?

One file at a time today. If you need bulk conversion (commute routes, brevet packages, multi-day tour days), drop a note via the waitlist and we will prioritise a batch flow.

Why does my converted course distance differ slightly from the GPX?

GPX distance is usually summed from haversine deltas between adjacent points; FIT distance is computed during encoding from the same coordinates with a slightly different algorithm. Expect 0.1-0.5% drift, never anything that affects navigation.

Save your training to a real log

Convert once, then keep every ride analyzed in one place.

Join the waitlist