Whoop + RadiantHealth
Whoop gives us excellent continuous HRV and recovery data. The main tradeoff vs. Oura or Garmin is that Whoop's recovery score is proprietary — we treat it as a second-opinion and rebuild readiness from the underlying signals ourselves.
What Whoop gives the coach
| Whoop metric | Used by the coach for |
|---|---|
| Overnight HRV | HRV component of readiness (primary signal) |
| Resting heart rate | Readiness · illness detection |
| Sleep performance, duration, efficiency | Recovery recommendations |
| Whoop Recovery (%) | Second-opinion sanity check on our readiness score |
| Day Strain | Lifestyle load context (not a direct input to TSB) |
| Workout strain + HR streams | TSS estimate for CTL / ATL / TSB |
Why we don't just use Whoop Recovery
Whoop Recovery is a great single-number summary, but it hides its inputs and it ignores training load entirely. Our readiness score uses the underlying signals (HRV, RHR, sleep) and your CTL/ATL/TSB, which is exactly why the coach can distinguish "you're recovered but detraining" from "you're recovered and ready to push" — Whoop Recovery can't tell those apart.
How to connect
- Open the app, go to Settings → Data sources.
- Tap Link Whoop. You'll be redirected to Whoop's OAuth consent screen.
- Grant read access. We use the Whoop v1 / v2 public API.
- The app backfills your last 90 days of recovery, sleep, and workouts in the background.
What to pair Whoop with
Whoop covers workouts natively, so you can run on Whoop alone. That said, for serious endurance training we recommend pairing with one of the following:
- Strava — more accurate workout metadata (route, power, pace).
- Garmin Connect — if you have a Garmin for structured sessions, it wins on TSS precision for cycling/running. We de-duplicate overlapping sessions.
- Google Calendar — so the coach can schedule proposed sessions around your meetings.
Data refresh cadence
Whoop pushes updated metrics to us via webhooks typically within 5–15 minutes of the strap syncing to the Whoop app. If you request a briefing and your strap hasn't synced yet, the coach will use the most recent data it has and explicitly flag the staleness in the briefing.
Revoking access
Settings → Data sources → Whoop → Disconnect. Tokens are immediately invalidated and you can wipe stored Whoop readings with one tap.