Method and limits

How the app turns daily WHOOP numbers into a picture of your injection week, how it was checked, and what it can't tell you.

The steps

  1. Your usual week: for each weekday, the average of your mornings in the weeks before your first dose.
  2. Adjust: each morning minus your usual for that weekday, so a regular Monday dip doesn't look like an injection effect.
  3. Line up injection weeks: day 0 is set by your injection time, and each week runs to the next injection. Weeks with a missed, moved or changed injection day are left out, as are weeks with too few mornings.
  4. Center each week: subtract that week's own average, which removes slow drift such as weight change, dose level or season.
  5. Average across weeks: the result for each day is the mean over your injection weeks, with a band from resampling whole weeks.
  6. Clear or not: a day is called clear only if a stricter interval, which allows for the many days and metrics checked, excludes zero.

Self-tests

The analysis is checked on synthetic members whose answers are known in advance. These results are computed by the app's own code.

  • PassPlanted pattern: on Member A, the recovered shape is within 0.61 × the day-to-day noise of the planted one on its worst day (allowed: 1.0 ×).
  • PassNo effect: Member B showed a clear pattern in 1 of 100 simulated runs (allowed: up to 10%).
  • PassPlacebo date: Member B's data before starting, with a fake start date, showed a clear pattern in 1 of 100 runs (allowed: up to 10%).
  • PassWeekday trap: Member C's weekly habit shows as clear on day 0 in the raw view, and disappears once adjusted.

Smallest change this analysis can detect for one person

Simulated on 2,000 runs of a member with no drug effect, about 30 injection weeks and 12 pre-drug weeks. A smaller change on a given day may be real but won't be called clear.

MetricDay-to-day noiseDetected about half the timeDetected 4 in 5 times
Resting heart rate3.0 bpm4.0 bpm4.8 bpm
HRV10.0 ms13.3 ms16.2 ms
Recovery12.0 points15.9 points19.3 points
Sleep performance8.0 points10.7 points13.0 points

Why this interval

The first approach, percentile intervals from resampling, was slightly too narrow with few injection weeks. At the strict level needed for many checks, that let Member B show false clear patterns in 14 of 100 runs, and 31 of 100 with a placebo date.

The app now builds a t interval from the resampled spread, with degrees of freedom set by the scarcer of injection weeks and pre-drug weeks. False clear patterns fell to about 1 in 100. A more lenient option reached the 10 in 100 limit with only 8 weeks of data, while the app allows as few as 6.

For a health-facing tool, a false clear pattern is worse than a missed one, so the stricter interval was chosen. It costs some sensitivity.

Known limits

  • One person's data: a few dozen injection weeks can only reveal fairly large within-week changes (see the table above).
  • This shows patterns that line up with your injection days. It cannot show what produced them.
  • WHOOP's API has no medication data, so injection dates come from what you enter in Setup.
  • Your usual week is learned from the weeks before your first dose. If your routine changed when you started, the comparison shifts too.
  • The demo members are synthetic. Their patterns were planted to test the method, not taken from real people.

Sources