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.
Free · no signup · your file stays on your device
Bearing change (degrees) to mark a course_point. Higher = fewer turns.
How it works
- 1
Drop a .gpx track
Routes from Komoot, Ride With GPS, Strava, or hand-built - any GPX with trackpoints works.
- 2
We detect the turns
Every bearing change above 60 degrees becomes a course_point waypoint so the head unit can prompt you.
- 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
More from the FIT toolkit
See all toolsFIT to GPX to TCX Converter
Any format in. Any format out.
OpenFIT Time Adjuster
Fix the clock without re-doing the workout.
OpenFIT Sport Changer
Tell every platform what you actually did.
OpenFIT Device Changer
Tell the file which device it came from.
OpenFIT Elevation Setter
Fix flat trainer rides or noisy phone tracks.
OpenClone and Retime
Re-stage any ride for any clock.
OpenFIT Section Remover
Snip out the part of the ride you don't want.
OpenFIT Break Remover
Cut the coffee stop, keep the ride.
OpenFAQ
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