What is a FIT file?
FIT (Flexible and Interoperable Data Transfer) is the binary file format used by Garmin and other fitness devices to store activity data. It contains GPS coordinates, heart rate, cadence, power, temperature, and hundreds of other data fields recorded during your workout.
While Garmin Connect provides basic analysis, this tool gives you deeper insights — including per-lap breakdowns, HR zone distribution, pace charts, and the ability to export raw data to CSV for custom analysis.
Inside the FIT Binary Format
FIT stands for Flexible and Interoperable Data Transfer — a compact binary protocol developed by Garmin and published as an open specification. Unlike GPX (plain XML) or TCX (XML with heart rate extensions), a FIT file is not human-readable. Open one in a text editor and you will see garbled bytes; you need a parser that understands the FIT protocol to extract anything useful.
Every FIT file is organized into a sequence of messages. The file starts with a global header that identifies the FIT version and total file size. This is followed by alternating definition messages and data messages. A definition message declares the structure of the records that follow — which fields are present, their data types, and their sizes in bytes. A data message then carries the actual values for those fields. This design lets a single FIT file efficiently store dozens of different data types without wasting space on fields a device does not support.
The most important message types are: file_id (device make, model, and serial number), session (aggregate totals for the whole activity), lap (split summaries at each manual or auto lap), and record (the per-sample data captured roughly every one to five seconds). Record messages typically include timestamp, GPS position (latitude and longitude as semicircles), altitude, heart rate, cadence, speed, power, and temperature where the sensor supports it. Garmin devices can also embed developer fields — custom data added by third-party app developers such as running dynamics metrics or FirstBeat physiology scores.
Which Devices Use FIT Files?
FIT originated with Garmin but is now widely adopted across the fitness industry. Wahoo ELEMNT cycling computers and RIVAL watches record natively in FIT. Zwift saves virtual ride and run data as FIT files. Suunto watches export FIT alongside their own SML format. COROS, Polar (on newer devices), and many other training platforms either record FIT directly or offer FIT as an export option. If you train with any GPS device, there is a good chance your activities are already stored as FIT files on your computer or synced to a platform that can give you the original FIT.
Why Analyze FIT Directly Instead of Using Garmin Connect or Strava?
Platform dashboards like Garmin Connect and Strava are convenient, but they make decisions for you about which metrics to show and how to visualize them. They also require you to upload your data to a cloud server. This tool takes a different approach: everything runs directly in your browser using JavaScript. Your FIT file is read from local memory and never transmitted over the network. The analysis is entirely private.
Beyond privacy, direct FIT analysis gives you access to fields that platform dashboards often omit or aggregate. You can inspect raw per-record cadence to find the exact moment your running form broke down late in a long run, or examine lap-by-lap heart rate to spot cardiac drift on a tempo effort. Developer fields added by third-party Garmin Connect IQ apps — power estimates, running economy scores, training load metrics — are also present in the raw FIT and visible here, even if Garmin Connect does not surface them in its own interface.
How to Interpret the Key Metrics
Heart Rate Drift
The heart rate chart plots your bpm at every recorded sample across the full activity. A gradual upward trend at constant pace — known as cardiac drift — is normal during long aerobic efforts as your body works harder to maintain output. A sudden spike usually indicates a sensor disconnect or a hard effort change, while a flat line at a suspiciously round number (like 0 or 255) means the strap lost contact entirely.
Pace and Power Over Time
The speed chart shows your pace in real time. Erratic spikes on a run typically reflect GPS noise in dense urban canyons or under tree cover — the FIT device averages GPS position over one-second intervals, so brief signal loss creates artificially high or low speed readings. For cyclists, power data from a supported power meter appears here instead of speed, giving you a far more reliable picture of actual effort.
Lap Splits
The lap table shows every split recorded in the FIT file. Laps can be triggered manually by pressing a button on your device, automatically at each kilometer or mile, or by the auto-pause feature when you stop moving. Comparing average heart rate across laps tells you whether your pacing was sustainable: if HR climbs 10–15 bpm from the first lap to the last at the same pace, you started too fast.
HR Zones
The zone bar chart shows how many minutes you spent in each of five heart rate zones, estimated from your maximum heart rate. Zone 1–2 time builds aerobic base; Zone 4–5 develops speed and lactate threshold. Most endurance coaches recommend spending 80% of training time in Zones 1–2 and only 20% in Zones 3–5 — a principle known as polarized training.
What FIT Contains That GPX and TCX Lose
GPX stores GPS waypoints, timestamps, and elevation — nothing else. TCX adds heart rate and cadence but still uses a text-based XML structure that inflates file size and drops advanced fields. When you convert FIT to GPX or TCX, you lose power data, running dynamics (ground contact time, vertical oscillation), temperature, device metadata, and developer fields. For route sharing and mapping, GPX is ideal. For full training analysis, always keep the original FIT file.
If you need to convert between formats, see our FIT to GPX converter and FIT to CSV exporter — both run entirely in your browser with the same privacy guarantee.
How FIT Analyzer Works
FIT Analyzer parses the binary FIT protocol directly in your browser using JavaScript — no server upload required. The FIT (Flexible and Interoperable Data Transfer) format stores data in a series of messages: file header, definition messages that describe the data structure, and data messages containing the actual values. The analyzer decodes device info, session summaries, lap splits, record-level data (every 1–5 seconds), and event markers. It then presents this in a readable dashboard with summary statistics, split tables, and time-series charts. Unlike platform-specific tools, FIT Analyzer shows you everything the device recorded, including developer fields and undocumented metrics.
Common Issues When Analyzing FIT Files
Multi-sport FIT files (triathlon, duathlon) contain multiple sessions in a single file. Some tools only show the first activity — FIT Analyzer processes all sessions and labels them by sport type. If your file shows zero heart rate data, check whether the HR sensor was paired during the activity; some chest straps disconnect briefly and create gaps. GPS-only activities (no HR strap, no power meter) will naturally show fewer metrics — the analyzer adapts its display based on available data fields. Corrupted FIT files from interrupted syncs or low battery shutdowns may fail to parse; try re-syncing the activity from your device to Garmin Connect and re-exporting.
How to export your FIT files
In Garmin Connect, open any activity, click the gear icon, and select "Export Original." This downloads the .fit file. You can also find FIT files on your device — connect via USB and look in the Garmin/Activity folder.
Frequently Asked Questions
Can I analyze FIT files from a Wahoo ELEMNT or Zwift?
Yes. Wahoo ELEMNT computers and RIVAL watches record in FIT and you can copy the files over USB from the device's internal storage. Zwift saves FIT files locally on your computer in the Documents/Zwift/Activities folder. Both work with this analyzer exactly like a Garmin FIT file.
Why does my FIT file show no GPS data?
Some activities are intentionally GPS-free — treadmill runs, indoor cycling on a trainer, and strength workouts recorded with a chest strap alone will have no position data. The FIT file is still valid and will contain all available sensor data; the elevation chart and map view will simply be empty.
Is my data stored or sent anywhere?
No. The FIT file is read directly by your browser and all parsing happens in local memory. Nothing is uploaded to a server. You can disconnect from the internet and the analyzer will still work. Once you close the browser tab, the file data is discarded.
What is the maximum file size?
The analyzer accepts FIT files up to 50 MB. A typical one-hour run produces a FIT file of roughly 500 KB to 2 MB depending on how many sensors were active. Ultra-distance activities recorded over many hours will be larger but almost always stay well under the 50 MB limit. Multisport FIT files from triathlon events can be bigger than single-sport files because they contain multiple session and lap blocks.