Skip to content

Garmin training analysis

A script downloads my Garmin activities, sorts them by sport and prepares them. Below: one year of training as charts – or your own Garmin files.

Sample data anonymised: date and totals only, no GPS data.

Data sheet

Identification no.JS-2026-03
Period06/2026
RoleIdea and implementation with AI assistance
ToolsPython · Garmin Connect API · JSON · TypeScript · SVG
Key resultOne year of training: 133 sessions, 544 running km
StatusInteractive analysis
Legal owner
Jakob Steinberger
Identification no.
JS-2026-03
Title
Garmin training analysis
Document type
Test report
Date of issue
08/10/2026
Created by
Jakob Steinberger
Approved by
Rev. · Sheet
F · 4/7
Language
ENDE
ISO 5456-2

1Result

Zone B

Sample: my training data, anonymised (date and totals only)

Your own data: drop or open the files written by download_activities.py (e.g. the data/activities folder). They are read in your browser only, never uploaded or stored.

Activities
133
Training hours
135
Running km
544
Period
10/2025 – 10/2026

Training time per week (hours)

Running Other sports

0.02.55.07.510.0NovDecJanFebMarAprMayJunJulAugSeptOct

Pace per run (min/km, faster ↑)

Dots: single runs · line: mean of the last 5 runs

6:007:00JanAprJul

Average heart rate per run (bpm)

Dots: single runs · line: mean of the last 5 runs

140160180JanAprJul

Sports by training time

Running58.3 h · 60×
Strength34.4 h · 32×
Indoor cycling22.4 h · 26×
Hiking11.7 h · 4×
Indoor rowing3.6 h · 6×
Football1.5 h · 1×
Walking1.5 h · 1×
HIIT0.6 h · 1×
Cycling0.6 h · 2×
Show as table
SportSessionsHourskm
Running6058.3543.7
Strength3234.4–
Indoor cycling2622.4–
Hiking411.741.8
Indoor rowing63.6–
Football11.52.0
Walking11.57.0
HIIT10.6–
Cycling20.613.5

2Problem and motivation

Zone C

The Garmin app shows single values, but no overview across weeks and months that can be analysed in a targeted way.

3Set-up

Zone D
  1. 01Download: activities with detailed metricsMy part
  2. 02Storage: one folder per sportMy part
  3. 03Preparation: summary for the analysisMy part
  4. 04Analysis in the browser: weeks, pace, heart rateMy part

Your own files are read in the browser only, never uploaded or stored. The download itself stays a local script: Garmin does not allow logging in directly from a browser, and passwords should not pass through someone else's server.

4Verification

Zone E

5Insight and next iteration

Zone F