← Back to tools

Garmin Connect Export

Download and export your Garmin Connect fitness data

health Data & JSON linuxmacoswindows Python MIT

Description

garmin-connect-export is a Python tool for downloading a copy of your Garmin Connect data, including activity stats and GPS tracks. It supports multiple export formats (GPX, TCX, FIT, JSON) and offers features like OAuth token persistence, date range filtering, activity type filtering, and resume capability for interrupted downloads. Originally created by Kyle Krafka, the actively maintained fork by pe-st continues development.

Install

manualgit clone https://github.com/pe-st/garmin-connect-export && pip install -r requirements.txt
dockerdocker pull ghcr.io/pe-st/garmin-connect-export

AI Summary

Command-line tool for bulk exporting Garmin Connect activity data in GPX, TCX, FIT, and JSON formats, with support for incremental backups and date range filtering.

Capabilities

  • + Export activities in GPX, TCX, original FIT, or JSON formats
  • + Download activity stats into CSV with customizable columns
  • + Persist OAuth tokens to avoid repeated authentication
  • + Filter exports by date range and activity type
  • + Resume interrupted downloads
  • + Adjust file timestamps to match activity start times
  • + Handle activities without GPS data

Use When

  • You want to back up your Garmin Connect activity data
  • You need to export GPS tracks from Garmin for use in other tools
  • You want to migrate fitness data away from Garmin's platform
  • You need bulk export of activity history

Avoid When

  • x You don't have a Garmin Connect account
  • x You only need to export a single activity (use the web interface)
  • x You need real-time sync with other fitness platforms

Usage Patterns

Export all activities as GPX

python3 gcexport.py --directory ./export

Downloads all activities in GPX format to the export directory

Export with persistent session

python3 gcexport.py --directory ./export --session ./session

Persists OAuth token to avoid re-authentication on subsequent runs

Export activities in a date range

python3 gcexport.py --directory ./export --start-date 2024-01-01 --end-date 2024-12-31

Downloads only activities within the specified date range

Export in original FIT format

python3 gcexport.py --directory ./export --format original

Downloads activities in their native Garmin FIT format

Related Tools

View AGENTS.md for Garmin Connect Export