Troubleshooting your data

Written By Martijn Russchen

Last updated About 6 hours ago

Why an activity has no TSS or training load

If an activity shows no TSS (training load) or empty training zones, it's almost always about how the activity reached Intervals.icu, not a bug. TSS and zone analysis need the full per-second power or heart-rate streams from the original .fit file:

  • Summary-only sources (Fitbit, Google, Whoop) hand over only totals (duration, distance, average HR), so there is nothing to compute TSS from.

  • Strava-only activities cannot be read at all (Strava API terms), so they carry no load.

  • No power or heart rate recorded β€” a ride without a power meter or an HR strap has no intensity signal to turn into TSS.

The fix in every case is to get the full activity into Intervals.icu through a direct device sync. See Missing or zero data below for exactly how, per source.

Missing or zero data

Data quality depends on how your device syncs to Intervals.icu:

  • Best β€” direct device sync: Garmin, Wahoo, Coros, and Zwift send .fit files with full power, HR, cadence, and GPS.

  • Strava sync: Strava's API terms prohibit Intervals.icu from sharing Strava-sourced activity data with apps like IntervalCoach. If your activities only reach ICU via Strava, we can't read them. Fix: connect your device directly to Intervals.icu (keep Strava connected too) β€” ICU replaces the Strava copy with the original, no duplicates. The "Import All Strava Data" button also works (those imports aren't restricted).

  • Summary only β€” Fitbit, Google, Whoop: these APIs provide only summary data (duration, distance, average HR). TSS and zone analysis need per-second streams, so these show minimal metrics.

  • Apple Watch: sync your workouts through the IntervalCoach iOS app β€” turn on the Apple Health integration (app β†’ Settings β†’ Apple Health) and your Apple Watch activities are pulled in directly, no third-party export tools needed.

If data looks wrong, check your Intervals.icu activity page first β€” IntervalCoach can only use what ICU receives.

Wrong resting HR or HRV

These come straight from your Intervals.icu wellness data β€” IntervalCoach reads, it doesn't calculate. If they look off: (1) verify them on the Intervals.icu Wellness page, (2) check your device is measuring RHR during sleep, (3) for third-party apps (HRV4Training, Oura) confirm the scale matches what ICU expects. Once correct in Intervals.icu, they're correct here.

Running emails when you didn't run

If you get "Analysis: Running" emails for activities that weren't runs, your watch is auto-detecting movement and syncing it to Intervals.icu as a run. Fix it by turning off movement auto-detection on your watch (Garmin: Activity Tracking β†’ Auto Activity Start; Apple Watch: Workout β†’ Auto-detect Workouts), and deleting or reclassifying the activity in Intervals.icu. IntervalCoach analyses whatever the sport is labelled as in ICU.