Garmin FIT (.fit)
FIT — Flexible and Interoperable Data Transfer — is Garmin's compact binary format for activity recordings. It is what your watch or bike computer actually writes when you press stop.
At a glance
| Extension | .fit |
| Encoding | binary |
| By | Garmin (originally published through the ANT+ alliance) |
| Current version | FIT SDK, published continuously by Garmin |
History
FIT was designed by Garmin and originally published through the ANT+ alliance as the successor to the earlier ANT-FS logging formats. Garmin documents it as a protocol "designed specifically for the storing and sharing of data that originates from sport, fitness and health devices", built for interoperability across platforms and for scaling from a small embedded device up to a cloud service. Garmin publishes an SDK with encoders, decoders and a FIT-to-CSV tool.
Where it is used
FIT is written by Garmin Edge, Forerunner and fēnix devices and by most modern fitness wearables, and it is the format Strava, TrainingPeaks, Zwift and Garmin Connect prefer when you upload an activity. Because it is binary and versioned, newer devices can add fields that older readers ignore instead of choking on.
Structure
A FIT file is a binary stream of records. Each record is either a definition message, which declares the fields and types of a message, or a data message that follows the most recent definition — so a file describes its own layout as it goes. On top of this Garmin defines a catalogue of standard messages (session, lap, record, event) and a set of file types (activity, course, workout, settings). Per-second records carry position, speed, heart rate, cadence, power and temperature. The file ends with a CRC.
How widespread
FIT is the de-facto standard for recorded activities in cycling and running. It packs far more per byte than an XML format and carries sensor data that GPX cannot express without vendor extensions — which is exactly why it exists, and why nothing else has displaced it.
RouteConverter support
| Reads | Garmin FIT |
| Writes | Garmin FIT |
RouteConverter reads and writes FIT files, so a recording from a Garmin device can be converted without a detour through Garmin Connect.