Can one obtain actual cadence, distance and speed data points. from Garmin Connect Data Base

I am looking for the actual cadence, distance and speed data points in order to calculate cadence within a certain speed range... and then optimise in terms of cadence, stride across speeds ... just for fun.

  • All that data is in the activity FIT file that you can export from GC Web. You can then convert it for example to a CSV format for easier further processing. Garmin offers a FITtoCSV tool on their developer website, or you can use a 3rd party tool as well. Another option is using the JSON data pulled with browser's DevTools from the activity page.

  • Wonderful. Thank you for your prompt response

  • https://www.fitfileviewer.com/ is a great 3rd party site for decoding FIT files. 

    IMO it's better than Garmin's own FITToCSV tool (which is part of the FIT SDK), especially because it's able to decode much more data than FITToCSV, and FITToCSV effectively throws away data which it can't decode by rendering it as unknown (without preserving the original numerical data). Because of this, it's also better at repairing FIT files than the SDK's repair tool (which, like FITToCSV, throws away a significant amount of data).

    To export an activity FIT file:

    - Log into connect.garmin.com 

    - Navigate to the activity of interest

    - Click on the gear-icon (top-right corner)

    - Select Export File (this will download a ZIP containing the original FIT file)

  • Thank you, and that makes sense in my case because upon converting there was not much data available at all and definitely missing what i was looking for. In essence I am needing the "discreet ???" data points for cadence, stride length at the normal intervals that Garmin uses to record (I think its 10 seconds ?) The average is not useful information because my historic data base has data including variables I don't want included. Eg sprinting data is averaged with normal distance running data. I think I can get around this by adding "Laps" to discriminate but not sure. Hope this makes sense as I only have a rudimentary understanding of the language of the subject.  Nevertheless, I will follow your advice.

  • Eg sprinting data is averaged with normal distance running data. I think I can get around this by adding "Laps" to discriminate but not sure.

    I see. In that case I don't think it's necessary to look at the raw data from the FIT file.

    In the future, when you sprint (or do any kind of intervals), you should absolutely press the LAP button before/after every work (high-intensity) and rest (low-intensity) interval. This way you will see meaningful lap averages in Connect for the high-intensity periods. Whenever I do any kind of running interval workout, I use a copy of my Run activity profile which has Auto Lap disabled, and I just press LAP before/after every work/rest interval. If incorporate strides or fartleks within a steady state run, then I leave Auto Lap enabled, but I still press LAP before/after every interval.

    As far as historical activity data goes, you can use the 3rd-party website runalyze.com to do advanced analysis of your Connect activities (the site automatically syncs with Connect). One feature that's relevant to your use case is the ability to temporarily set laps of arbitrary (and differing) time/distance for a given activity. That way you can look at an old activity and manually set laps which correspond to periods of sprinting (or other high intensity). runalyze also lets you visually select a region of the pace, HR, or running dynamics (cadence) graphs; the average, min and max values for the selected region are displayed. The downside is runalyze only fully works on a device with a mouse/trackpad (whether it's a computer or an tablet with a trackpad)

    If you use strava, the desktop version of strava.com also has a feature called Analysis Graph which shows pace, heart rate and cadence for a given range of time or distance (that you select by highlighting a section of the graph). In this case, both the max and average values are shown for each metric, over the selected range. The downside is this feature only works on a computer (and not a tablet or phone).

  • Thank you. Last question, how is stride length presented.

  • runalyze calculates stride length for laps (whether it's the original laps from the activity, or your temporary custom laps). Speaking of calculations, I have noticed that lap/activity stride length and cadence are different across Connect, Strava, and Runalyze, which means that each platform must have slightly different algorithms for determining average cadence and/or filtering cadence data. (I assume that average stride length is calculated as distance / steps = distance / (cadence * time).) Nonetheless, I don't think it hurts to analyze your data in strava or runalyze.

    Instant stride length (as recorded by Garmin) is available on the running dynamics graph in runalyze. It isn't available in strava.

    In general, runalyze shows almost much everything that Connect shows you, and more. There are certain things recorded in the FIT file that Connect hides, but runalyze shows, like body battery impact and activity vo2max. It also calculates several other metrics of its own.