SpO2 (blood oxygen saturation)
What SpO2 measures, normal ranges, and why wearables track blood oxygen for health monitoring.
The oxygen reading on your wrist
SpO2 is the share of the hemoglobin in your blood that is carrying oxygen, written as a percentage. A healthy adult at sea level reads between 95 and 100 %, awake or asleep. The clip a nurse puts on your finger measures the same thing; a watch does it with the red and infrared light of the sensor on its underside, which is why the number can appear on a wrist at all.
The "Sp" stands for peripheral: the reading is taken at a finger or a wrist, not from an artery. The arterial value, SaO2, is what a blood gas test reports, and in healthy people a good peripheral reading stays within about two percentage points of it (Jubran 2015). Two points is the accuracy the best oximeters are specified to, clinical or consumer, so no single reading is sharper than that.
For most of the day the number sits high and says nothing new. It becomes worth reading at night, at altitude, and on the day it drops.
What counts as normal
SpO2 is one of the few biomarkers with reference ranges that do not move with age, sex or fitness:
- 95 to 100 %: the normal range for a healthy adult at sea level.
- 92 to 94 %: mild hypoxaemia. Common for a few minutes after hard exercise, briefly during sleep and at moderate altitude. A level that stays in this band for days is worth a conversation with a doctor.
- 88 to 91 %: moderate hypoxaemia. In chronic lung disease this is the band where doctors weigh supplemental oxygen; the usual criterion for prescribing it is 88 % and below.
- Below 88 %: significant hypoxaemia. That is medical attention, not a note in the diary.
People with chronic lung disease (COPD, pulmonary fibrosis) often live at 88 to 92 % and their bodies have adapted to it. Their doctor sets their own threshold, and the generic ranges above are not for them.
Why the night is where it matters
Some people lose oxygen in repeated dips while they sleep, and the pattern of those dips says a lot:
- Sleep apnoea. Repeated drops of 3 points or more, called desaturation events, are one of its signatures. The Oxygen Desaturation Index counts them per hour: above 5 is suggestive, above 15 is consistent with moderate to severe apnoea. What a watch can and cannot tell you here is the subject of the article on sleep apnoea detection on wearables.
- Early illness. During COVID-19, wearables flagged infections before symptoms from resting heart rate and sleep (Mishra 2020), and a later Fitbit study found lower overnight oxygen among the signals that moved in the days before a positive test (Natarajan 2020).
- Altitude. At 2,500 m most healthy people spend part of the night at 90 to 93 %; at 3,500 m it is 85 to 90 %. The body adapts over one to two weeks and the nights climb back.
- Respiratory conditions. Asthma, COPD and pneumonia can all hold the night lower.
- Anemia. A trap in the other direction: anemia does not lower SpO2. The hemoglobin you have is still saturated, there is just less of it. SpO2 is a percentage, not an amount.
Why the wrist is not always right
Watch oximetry is a wellness measurement, not a medical one; regulators classify almost all wrist-based SpO2 that way, and the reason is the list of things that push the reading off:
- Skin pigmentation. Darker skin tends to read higher than the true value; in a hospital study the oximeter missed genuinely low oxygen about three times as often in Black patients (Sjoding 2020), a limitation clinical and consumer devices share.
- Cold hands or poor perfusion. With little blood flow at the wrist the sensor either skips the reading or reports a false low.
- Movement. Even a small shift of the wrist adds noise, which is why most wearables measure only while you are still, usually asleep.
- Tattoos. Ink directly under the sensor blocks the light path.
- Nail polish, for fingertip oximeters. Dark colors interfere, which is why a hospital removes it before clipping the sensor on.
For one reading you need to trust, a fingertip pulse oximeter from a pharmacy beats the watch. For the shape of your nights across weeks, the watch is the better instrument, because it is there every night and collects hundreds of samples nobody had to remember to take.
Spot readings and overnight tracking
Two different things appear under "SpO2" on most wearables.
A spot reading is the one you trigger from the watch face: thirty seconds of holding still, one number. It has a place at altitude, after exercise, or when you feel short of breath. It is not a diagnosis. A single 92 % can be cold fingers, a bad angle on the sensor, or a real signal; repeat it after warming up, and take it seriously only if it stays low.
Overnight tracking is what the watch samples on its own while you sleep. Fitbit, Withings, Garmin and Apple do it on supported models; some draw a graph, some report only summary numbers. The ones that carry information:
- The minimum. Healthy sleepers touch 90 % now and then, mostly in REM; a night that keeps going lower is a flag.
- Time below 88 %. Minutes spent at clinically significant hypoxaemia. Healthy people: none or almost none. With apnoea: tens of minutes a night.
- The shape. A sawtooth in the overnight chart, with the teeth 30 to 90 seconds apart, is the visual signature of apnoea events.
When to act on a low reading
A single low number is rarely a reason to worry. A sensible ladder:
- One reading of 92 to 94 % at rest, feeling fine. Warm your hands, wait five minutes, measure again. If it is back in range, let it go.
- Repeated daytime readings below 95 % with no obvious cause. Note it for your next visit and bring the data.
- An overnight minimum below 88 % on several nights. Ask for a sleep study. Apnoea is treatable, and untreated apnoea shortens lives (Marin 2005).
- Anything sustained below 90 % together with breathlessness, blue lips or chest pain. That is an emergency.
SpO2 in MyBodyAI
MyBodyAI reads the overnight SpO2 your device already recorded: Fitbit and Withings through their connections, Garmin through the data export, and an Android phone through Health Connect, where the app reads the oxygen samples that fall inside the night. Polar publishes no overnight SpO2 to third-party apps, only the on-demand spot check, so a Polar night carries no oxygen curve; a spot check taken near the night is the most it can contribute. Nothing is estimated: a night without a reading is a night without a reading.
The number feeds three of the twelve health indices, each with a small weight, because one signal should never carry a verdict alone. Immunity scores the week's mean overnight saturation on one clinical ladder shared by the whole app: 96 % and above reads as 90 to 100 out of 100, 94 to 96 % as 75 to 90, 92 to 94 % as 55 to 75, and the curve is steepest between 94 and 88 %, where the clinical concern begins; the result is then shifted toward your own baseline, so a wearer whose nights always sit at 94 % is not marked down every morning for it. Body Alert reads the newest nights as an absolute level rather than a trend, the one number in that index that needs no history to count, and a mean under 90 % scores it in full. Breathing scores the mean too, but gives the nightly minimum a weight of its own: a nadir below 90 % is what defines a desaturation event, and a whole-night average hides it by construction. A median minimum of 94 % or better reads as a good night, 90 to 93 as an ordinary one, under 85 as a poor one.
When a low night arrives together with a fall in HRV and a rising resting heart rate, Body Alert rises and the app names the signals that moved. That combination is the one a Fitbit study saw move in the days before a positive COVID-19 test (Natarajan 2020); how many days of warning it gives you personally is not something anyone has measured, and the app does not claim a number.
Frequently asked questions
What is a normal SpO2 during sleep?
Awake and at sea level, 95 to 100 %. During sleep the average sits a point or two lower and brief dips to 92 to 94 % are common, especially in the deeper stages. What matters is the pattern: an average below 92 % or repeated drops of 3 points or more many times an hour are the shapes worth showing a doctor, because they are how sleep apnea looks on a watch.
Why does my watch show a low SpO2 at night?
Most single low readings are the sensor, not the lungs: a loose band, a cold wrist with poor blood flow, an arm slept on, or movement. Altitude lowers the whole night honestly. A reading that is low once and normal the rest of the night can be ignored; a night full of dips, or several nights of low averages, cannot, and a fingertip oximeter or a sleep study gives the answer a watch cannot.
How accurate is SpO2 on a smartwatch?
Wellness grade, not medical grade. Under good conditions a wrist reading tracks a clinical oximeter within about 2 to 3 percentage points; darker skin, cold hands, tattoos under the sensor and motion widen the error, usually toward reading too high. For one number you need to trust, a fingertip pulse oximeter is more reliable. For the shape of your nights over weeks, the watch is the better instrument because it is there every night.