1. Data sources
- Garmin (with your permission, via your Garmin account): sleep summary including Sleep Score and stages, individual overnight HRV readings, the heart-rate stream, stress and activities.
- Your evening log: dinner, drinks, coffee, wind-down, things that kept you wired.
- Your morning check-in (optional): how you felt you slept and how ready you feel.
2. Personal baselines
Every comparison is made against your own history, not against population tables:
- Heart rate: your evening and morning resting heart rate are compared with a rolling 7-day baseline.
- HRV target: built from your HRV plateau (second half of the night) over the last 30 nights, excluding the current night.
- Outlier nights are removed with an interquartile-range (IQR) filter.
- Nights with a good Sleep Score and a small HRV-Incline count more.
- With fewer than 7 nights there is no target; between 7 and 13 nights the target is pulled towards your plain average.
- The target never falls below your plain average and never exceeds 1.35 times it. In practice it usually sits about 10–15% above your average.
3. Recovery Score (0–100)
The current algorithm (version 8) combines four components:
| Component | Weight | Based on |
|---|---|---|
| Sleep Score | 10% | Garmin Sleep Score, used directly |
| HRV block | 60% | Plateau vs. personal HRV target, minus an HRV-Incline deduction |
| Evening resting heart rate | 10% | Deviation from 7-day baseline |
| Morning resting heart rate | 20% | Deviation from 7-day baseline |
HRV block. At or above your target the proximity score is 100 up to 25% above target, then decreases gently to a floor of 85. Below target it falls: 20% below gives 33 points, 40% below gives 0. A strong HRV-Incline then deducts up to 25 points; if you reached your target, the deduction is reduced, but never below half.
Heart-rate components. Evening resting heart rate: full marks up to 3% above baseline, 40 points at 20% above, 0 at 40% above. Morning resting heart rate: full marks at or below baseline, 40 points at 15% above, 0 at 40% above.
Missing data. If an optional component (evening or morning resting heart rate) is missing, the remaining weights are rescaled and the score is marked as provisional. If required data (sleep or HRV) is missing, SAYA shows no score instead of guessing. With fewer than 7 nights of history, an earlier weighting is used until a personal HRV target can be calculated.
4. Correlations
SAYA looks for associations between your evening habits (inputs) and your sleep and recovery results (outcomes), always within your own data — see personal sleep analytics.
Pairing. Each night gives one pair: the habit value and the outcome value. Nights where either is missing are skipped.
Outlier handling (on the outcome only):
- Nights with a Sleep Score below 50 are excluded from Sleep Score correlations — they usually reflect illness or an extreme disruption.
- Nights whose outcome lies more than 2.5 standard deviations from the mean are excluded.
Minimum sample sizes. A result is only shown once there is enough data:
| Habit type | 7-day view | 30+ day view |
|---|---|---|
| Numeric (e.g. dinner time) | ≥ 6 nights | ≥ 10 nights |
| Yes/no (e.g. alcohol) | ≥ 3 nights with and ≥ 3 without | ≥ 5 with and ≥ 5 without |
In the short 7-day view, these thresholds can be relaxed further so that sparse data still shows a first, rough signal. Those early results are the least reliable.
Strength. Pearson's correlation coefficient r (−1 to +1).
Effect size. For numeric habits: the difference in the outcome between the top and bottom quarter of habit values, as a percentage of the average outcome. For yes/no habits: the difference between nights with and without the habit, as a percentage of the "without" nights.
Significance. A two-sided p-value from the t-distribution. SAYA shows it in bands (p < 0.05, p < 0.01, p < 0.001) rather than as an exact number.
5. Multiple comparisons
SAYA tests many habit–outcome pairs at the same time — dozens of habits against around ten outcomes. There is currently no statistical correction for this. At the p < 0.05 level, roughly one in twenty pairs with no real relationship will still look "significant" by chance.
How to read results with this in mind:
- Give more weight to results with more nights and stronger p-values.
- Be sceptical of a single surprising result that fits nothing else.
- Test a promising pattern by changing the habit for a few weeks — see personal sleep analytics.
6. Timing ideals and chronotype
Timing ideals. Your ideal gap between dinner and bedtime and between training and bedtime start from research-based assumptions (about 3.5 and 3 hours) and shift towards what your best nights show — nights with a good Sleep Score and a small HRV-Incline count more. With little data the assumption dominates, and SAYA says it is still learning.
Chronotype. Measured from the mid-point of your recorded sleep (the MCTQ approach from chronobiology), with a confidence level: learning below 7 nights, high from 14 nights.
7. Limitations
- Wearable data. Optical wrist sensors and sleep stage estimates are less precise than clinical measurements.
- Self-reported habits. Your evening log is only as complete as your entries.
- Correlation, not causation. Habits come in bundles, the direction can be reversed, and other factors can drive both. SAYA shows associations in your data; it doesn't prove causes.
- Small samples. Personal data sets are small by research standards; results can change as more nights come in.
- Wellness, not medicine. SAYA is not a medical device and doesn't diagnose or treat any condition.
8. Changes to the methods
SAYA's methods evolve. When a calculation changes in a way that affects your results, this page is updated; the date at the top shows the last revision. The research background is on the science page. Who builds SAYA is on the About page.
Keep reading
SAYA is a wellness product, not a medical device. Nothing here is a diagnosis or medical advice — if you suspect a sleep or heart condition, please talk to a professional.
See these patterns in your own Garmin data.
SAYA is in private beta with a first group of Garmin athletes. Join the waitlist — invites go out in order.
Get early access