How stress is calculated
Stress is a 0–100 reference index where higher means more strain, combining suppressed heart rate variability (60%), elevated resting heart rate (25%) and respiratory rate (15%), all read against your own trailing 28-day baseline — a daily index, not a live reading.
Inputs and weights
- HRV suppressed relative to baseline — 60%
- Resting heart rate elevated relative to baseline — 25%
- Respiratory rate elevated relative to baseline — 15%
- Deliberately excludes sleep and wrist temperature — those are recovery's inputs, not stress's
The evidence
The link between psychological stress and reduced heart rate variability has meta-analytic support: a systematic review and meta-analysis of short-term HRV found time-domain features distinguish states of acute mental stress, and a separate meta-analysis reports the same consistent association between stress and lowered HRV.
We use time-domain features ONLY. Frequency-domain features — the LF/HF ratio above all — are often used to infer "sympathetic-parasympathetic balance", but that interpretation is directly disputed: a dedicated paper argues LF/HF does not accurately measure that balance. So we do not use it.
We do not identify emotions
Some products claim to identify discrete emotions from HRV — pleased, anxious, focused. We do not, because the evidence does not support that resolution: HRV indexes AROUSAL, not the VALENCE of an emotion. High arousal can be excitement or anxiety, and HRV cannot separate them.
What the literature does support is two weaker things: people with anxiety disorders show lower HRV than controls (a between-group difference, not a moment-to-moment reading), and HRV indexes emotional regulation capacity (a trait, not a current feeling). Getting from there to "six named emotions" goes beyond the evidence.
The run matters, not today's number
One elevated day is common: hard training, short sleep, alcohol and the onset of a cold all suppress HRV. What is worth noticing is a RUN of elevated days — that is the accumulation signal.
So Vita only notifies after three or more consecutive elevated days, and then stays quiet for five. Being told you are stressed is itself a stressor, and an alert that fires often is the one people switch off.
Limitations
- 🚨 **A daily index, not live stress.** Apple Health provides HRV once a day, so we cannot show "stress right now" — that needs continuous sampling by the device.
- It measures PHYSIOLOGICAL load, not how you feel. You can feel fine while it reads high (early infection, for instance), or feel tense while it reads normal (deep focus).
- It shares inputs with recovery, so the two move together in opposite directions. The difference is that stress excludes sleep and wrist temperature.
- No score without HRV — a number built on resting heart rate alone would be dominated by caffeine, a warm room and standing up, none of which are stress.
- A reference index. Not medical advice, and not a basis for judging any disease or psychological condition.
References
What it supports:Meta-analytic evidence linking psychological stress to reduced HRV.
What it supports:Short-term HRV time-domain features can assess acute mental stress — systematic review with meta-analysis.
What it supports:The LF/HF ratio does not accurately measure sympatho-vagal balance — the direct reason we do not use frequency-domain features.
What it supports:People with anxiety disorders show lower HRV than controls — a BETWEEN-GROUP difference, which does not support moment-to-moment emotion classification.
What it supports:HRV indexes the CAPACITY for emotional regulation — a trait — rather than identifying a current discrete emotion.
What it supports:The physiological link between HRV and autonomic regulatory capacity.
What it supports:Definitions, measurement windows and population norms for HRV metrics.
Related metrics
Every metric on this page is a reference index for observing your own trends. It is not medical advice and cannot replace a professional diagnosis. If you have health concerns, consult a qualified clinician.
Source module: lib/vitality/score.ts · computeStress
Download Vita free — see your Body Age and Recovery in minutes
Download on the App Store