Frequently Asked Questions
Everything you need to know about app.tracekit.app.
What is TraceKit?
TraceKit is a fitness data integration platform that brings your activity data together from all the apps and devices you use — Strava, Garmin, RideWithGPS, and more — into one place you control.
Instead of your workout history being scattered across a dozen services with no consistent record, TraceKit syncs, deduplicates, and normalizes your activities. You get a unified view of your data and a reliable backup, regardless of which platforms you use now or in the future.
The hosted service lives at app.tracekit.app. TraceKit is also open source if you prefer to self-host.
How do I get started?
TraceKit is currently in early access. Here's the full setup flow once your account is active:
- Sign up at app.tracekit.app. An admin will activate your account shortly after.
- Link your providers. Go to Settings and connect each service you use (Strava, Garmin, RideWithGPS, etc.). See the provider-specific notes below for anything special about a particular service.
- Set your provider order. Drag providers into the order you want TraceKit to prefer them when resolving conflicts — your most trusted source goes first.
- Pull your existing activities. Use the pull action for each provider to import your historical activity metadata into TraceKit.
- Run a sync. The sync process matches activities across providers, identifies duplicates, and surfaces differences for you to review. Running it across a month of data is a good starting point.
- Approve individual changes. Review the proposed updates and approve or dismiss each one. TraceKit never writes anything back to a provider without your explicit confirmation.
How do I use TraceKit day-to-day?
Once you're set up, ongoing use is straightforward: log in and run a sync every now and then. TraceKit will pull new activities from your connected providers, match them up, and show you anything that needs attention.
Full automation is on the roadmap — in the future, new activities will be detected and pulled automatically so you won't need to trigger a sync manually. For now, a periodic manual sync keeps everything up to date.
What happens when I link a provider?
TraceKit gets authorized access to that provider's API so it can read your activity data. For most providers this happens via OAuth — you'll be redirected to the provider's login page to grant permission, and TraceKit stores the resulting access token (encrypted) on your behalf.
Nothing is fetched immediately. You stay in control of when TraceKit pulls activities and runs syncs.
What happens when I unlink a provider?
TraceKit removes its stored credentials for that provider and will no longer pull new activities from it. Any activities already imported from that provider remain in your TraceKit account — unlinking does not delete historical data.
Strava is an exception: when you unlink Strava, all Strava activity data is immediately and permanently deleted from TraceKit. This is required by Strava's API terms. Export anything you need before unlinking.
To fully revoke TraceKit's access, also remove it from the provider's own connected-apps settings page (e.g. Strava's "My Apps" page).
Are there any special considerations for specific providers?
Strava's API terms place specific requirements on how TraceKit may use your Strava data. Please read these carefully:
- Strava is always a write target, never a source. TraceKit treats Strava as a destination only. For example, if you set an activity name in Garmin, TraceKit can push that name to Strava — but it will never go the other direction and push a Strava name to Garmin or another provider. Your other providers are always authoritative.
- Out-of-sync detection and updates. When TraceKit notices that Strava is out of sync with your authoritative data (e.g. a name or gear assignment differs), it will surface the discrepancy and offer to update Strava for you. Nothing is written until you explicitly approve.
- Creating activities in Strava. If you record an activity somewhere else (Garmin, RideWithGPS, etc.), TraceKit can create a matching activity in Strava on your behalf. Activities you originally created in Strava are never pushed outward to other providers.
- No source files from Strava. Strava's API does not permit downloading original source files (GPX, FIT, TCX) for activities. Raw files are not available through the API regardless of how the activity was recorded.
- Initial backfill via export. You can export your data archive from Strava's settings page and import the individual activity files (FIT, GPX, etc.) into TraceKit via the Files provider. Those files are treated identically to files uploaded from any other source — no Strava restrictions apply to them. Note that this only covers the files themselves; any sync suggestions or updates back to Strava still require a live Strava connection, and all of the restrictions above apply.
- Data freshness — 7-day window. Strava data must have been retrieved within the last 7 days to be used for activity matching. If you update an activity's name or gear after the 7-day window has passed, TraceKit will still offer to push the change to Strava, but it will not be able to confirm whether Strava already has that value until you press the "Accept" button and the update is applied.
- Unlinking deletes all Strava data. When you unlink Strava, every piece of Strava activity data stored in TraceKit is immediately and permanently deleted. This is a hard requirement of Strava's API terms. Export anything you need before unlinking.
Have a question that isn't answered here? Open an issue on GitHub or reach out to the maintainer directly.