Pulse oximetry

Vivian Imbriotis | April 4, 2026

A pulse oximeter measures arterial oxygen saturation. It relies on

  1. The different absorption spectra of OxyHb and DeoxyHb
  2. The pulsatile absorption signal generated by change in optical length
  3. The Beer-Lambert law, optical absorbance by a solute is proportional to the length of the light ray, the concentration of the solute, and the extinction coefficient for the solute and wavelength, \(A = \Delta L \epsilon_{\text{solute}}C_{\text{solute}}\)


The device measures the ratio of the pulsatile absorbances (each normalized by the nonpulsatile part to account for different LED intensities):

$$R = \frac{AC_{660} / DC_{660}}{AC_{940} / DC_{940}}$$

And, by applying Beer-Lambert twice, we can see

$$R = \frac{\Delta L}{\Delta L} \frac{(\epsilon_{\text{oxy}} C_{\text{oxy}} + \epsilon_{\text{deoxy}} C_{\text{deoxy}})_{660}}{(\epsilon_{\text{oxy}} C_{\text{oxy}} + \epsilon_{\text{deoxy}} C_{\text{deoxy}})_{940}}$$

$$R = \frac{(\epsilon_{\text{oxy}} C_{\text{oxy}} + \epsilon_{\text{deoxy}} C_{\text{deoxy}})_{660}}{(\epsilon_{\text{oxy}} C_{\text{oxy}} + \epsilon_{\text{deoxy}} C_{\text{deoxy}})_{940}}$$

If we then assume that there is only OxyHb and DeoxyHb i.e. \(F_{oxy} + F_{deoxy} = 1\) then

$$R = \frac{(\epsilon_{oxy} F_{oxy} [Hb] + \epsilon_{deoxy} (1-F_{oxy}) [Hb])_{660}}{(\epsilon_{oxy} F_{oxy} [Hb] + \epsilon_{deoxy} (1-F_{oxy}) [Hb])_{940}}$$

$$R = \frac{(\epsilon_{oxy} F_{oxy} + \epsilon_{deoxy} (1-F_{oxy}))_{660}}{(\epsilon_{oxy} F_{oxy} + \epsilon_{deoxy} (1-F_{oxy}))_{940}}$$

We could then solve for \(F_{oxy}\) directly; unfortunately, there is a lot of error (due to differential scattering of the different wavelengths, such that \(\Delta L_{660} \neq \Delta L_{940}\)

In practice, R is regressed against SpO2 of healthy subjects breathing gas of varying hypoxic FiO2. R of 1 \(\approx\) SO2 of 95%


Issues due to R's calibration

  1. Dark skin tone \(\to\) overestimates sO2
  2. Anaemia \(\to\) underestimates sO2

Issues due to abnormal Hb species

  1. COHb has a 660nm and 940nm absorbance close to OxyHb, and also left-shifts the ODC \(\to\) overestimates the sO2
  2. MetHb readily absorbs both wavelengths; \(R \to 1,\ sO_2 \to 85\%\)

Issues due to pulsatility

  1. Shock/tourniquet/malposition \(\to\) poor waveform \(\to\) artifact included in pulsatile component \(\to \ R \approx 1 \to sO2 \approx 85\%\)
  2. Movement \(\to\) tissue/venous blood included in AC component \(\to\) underestimated sO2
  3. Venous pulsations e.g. severe TR \(\to\) venous blood in AC component \(\to\) underestimated sO2