Health Monitor

Last night’s five vitals against your own normal ranges.

What goes in

Resting heart rate
Fitbit’s daily resting heart rate from Google, in bpm.
Heart rate variability
Fitbit’s nightly HRV, in ms.
Respiratory rate
Breaths per minute asleep, in rpm.
SpO2
Blood oxygen overnight, in %.
Skin temperature
Last night against Google’s skin-temperature baseline, in °C.

How it is weighted

Resting heart rate and HRV use Google’s personal ranges when Google gives them, and skin temperature uses ± 2 of Google’s 30-night standard deviation around its baseline. Otherwise, and always for respiratory rate and SpO2, a normal range is your baseline ± 2 of your usual night-to-night swings, built from earlier nights only. Pulse’s narrowest ranges are about ±5 bpm, ±12.5 ms, ±1.25 rpm, ±1.25 points of SpO2 and ±0.75 °C. SpO2 is one-sided: below 95% is always low, and a high value is never flagged.

The illness signal compares resting heart rate, HRV, skin temperature and respiratory rate with your 30 nights before. A vital fires at 2 standard deviations in the unwell direction and adds 22 points per extra deviation, up to 40. With at least 2 vitals firing, 25 points is mild and 50 is raised. If you logged alcohol, sauna or travel the day before, Pulse takes that as the likely cause instead.

What the bands mean

Within range
Inside your normal range.
Elevated or Low
Outside it; the chip names the bound you crossed.
Below 95%
SpO2 under 95%, whatever your range.
Illness signal
Several vitals moved together, a pattern often seen early in illness.

Limits

A range from Google is there as soon as Google sends one. Pulse’s own range needs 4 earlier nights and lapses after 14 nights without a value; without Google’s baseline, skin temperature needs Pulse’s own first, so it takes about 8 nights. The illness signal stays quiet until 14 of your last 30 nights have resting heart rate or HRV. A flagged vital is a prompt to notice, not a diagnosis.

Sources