Stress Monitor

How far your heart rate sits above your calm level, from 0 to 3.

  1. Low0-0.9
  2. Medium1-1.9
  3. High2-3
Stress Monitor scale, from 0 to 3

What goes in

Minute heart rate
The average heart rate of each minute.
Steps
Only still minutes count: no steps in that minute or the 2 either side.
Workouts and sleep
Minutes inside them are left out.
Your calm baseline
Your resting daytime heart rate, from earlier days.

Each day’s calm heart rate is the 10th percentile of its hourly averages between 06:00 and 22:00, using hours with at least 15 still minutes. It feeds the next day’s baseline.

How it is weighted

Each still minute’s distance above your baseline is measured in your usual spread, never less than 3.76 bpm, and mapped onto 0 to 3 on an S-shaped curve. At your baseline it reads 0.3, 1.5 spreads above reads 1.5, and 3 spreads above reads 2.7. Today Pulse shows the latest scored minute; past days show the day’s average.

What the bands mean

0-0.9
Low: calm.
1.0-1.9
Medium: heart rate above your calm level.
2.0-3.0
High: well above your calm level while you are still.

Limits

Stress is Provisional until 4 days have set your baseline; until then it uses a fixed spread of 7.65 bpm, so 15 bpm above your calm level reads 2.0. It reads heart rate alone, so caffeine, heat, illness or recovering from exercise raise it too. It is not a measure of how you feel.

Sources

The full specification, with formulas, constants and worked examples, is stress.md on GitHub. The code is tested against those examples.

  1. noop: the open-source analytics engine Pulse's recovery, strain and sleep scoring is ported from