finds.dev

pkpio/fitbit-googlefit

Export Fitbit data to Google Fit. Unlike the alternatives such as fitnessyncer.com, this offers very fine intraday granularity (every minute/second data).

View on GitHubHomepage ↗

★ 518PythonGPL-3.0updated May 2023

// the take

A personal-use Python script that pulls Fitbit data (steps, heart rate, sleep, activities, weight) via OAuth and pushes it into Google Fit at near-raw granularity — down to per-second heart rate and per-minute steps. It's for a single Fitbit user who wants their data in Google Fit's ecosystem instead of Fitbit's, and is willing to register their own OAuth apps to get it.

The granularity claim actually holds up — most sync tools downsample to daily or hourly totals, this one preserves minute/second-level data by mapping Fitbit's intraday API directly to Google Fit's dataset format. Activity mapping is simple and documented (one line in convertors.py per new sport), so extending coverage doesn't require touching the sync logic. Headless auth (--console flag) means it actually works on a Raspberry Pi or server, not just a dev machine with a browser. Cron-friendly by design — cron.sh plus date-range CLI args makes unattended daily syncing straightforward.

No commits since May 2023 — in a space where both Fitbit's and Google Fit's APIs shift auth requirements and endpoints over time, a 3-year-stale OAuth integration is a real risk of silently breaking. Bigger problem: Google has been deprecating the Google Fit REST API this tool writes to, which threatens the whole premise independent of this repo's own maintenance. OAuth client secrets and tokens live in plaintext config files and CLI args with no mention of encryption at rest, which matters since this is health data. It's architected for exactly one user — there's no multi-account handling, so anyone wanting to sync a household's worth of Fitbits is running separate instances by hand.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
518
Forks
58
Language
Python
License
GPL-3.0
Last commit
9 May 2023

// nearby

If fitbit-googlefit isn't quite it.

All repos →