You post about health? Post once at Tublish.com, and it goes to Instagram, Facebook, YouTube, TikTok, Threads, LinkedIn, Discord, Telegram, Bluesky, Mastodon and WordPress. You post about health? Post once at Tublish.com, and it goes to Instagram, Facebook, YouTube, TikTok, Threads, LinkedIn, Discord, Telegram, Bluesky, Mastodon and WordPress.

SpO2 to PaO2 Calculator (Oxygen Dissociation Curve)

Estimate arterial oxygen pressure (PaO2) from a pulse oximeter SpO2 with the Severinghaus curve, plus the S/F ratio and a P/F estimate on oxygen.

Your data stays in your browser. We do not store, collect, or transmit any information you enter.
Estimated PaO2

A pulse oximeter measures saturation (SpO2): how much of your hemoglobin is carrying oxygen. A blood gas measures something else, the pressure of oxygen in arterial blood (PaO2), and that is the number respiratory failure is defined on.
The two are tied together by the oxygen dissociation curve, so one can be estimated from the other. That is what this page does.

The curve

John Severinghaus fitted the standard human curve in 1979:

S = 1 / (23,400 / (P³ + 150P) + 1)

where S is saturation as a fraction and P is PaO2 in mmHg. Run backwards, it turns a saturation into a pressure. Backwards it is a cubic in P, which this page solves exactly rather than reading off a table.

SpO2 Estimated PaO2
98% about 104 mmHg (13.9 kPa)
95% about 76 mmHg (10.1 kPa)
92% about 64 mmHg (8.5 kPa)
90% about 59 mmHg (7.8 kPa)
85% about 50 mmHg (6.7 kPa)
75% about 40 mmHg (5.3 kPa)

The shape is the whole story. Above about 95% the curve is nearly flat, so a saturation of 98 or 99% says only that the PaO2 is high, not how high. Anything from about 90 to well over 100 mmHg fits.
Below about 60 mmHg it turns steep, and there a small further fall in PaO2 takes a big bite out of saturation, which is most of the oxygen the blood carries. That is why 90% sits where it does on every oximeter chart: it lands close to 60 mmHg (8 kPa), the edge of the steep part and the PaO2 below which doctors call it respiratory failure.

PaO2 bands

PaO2 Meaning
80 to 100 mmHg (10.7 to 13.3 kPa) Normal at sea level for a young adult, drifting a little lower with age
60 to 79 mmHg (8.0 to 10.5 kPa) Low, mild hypoxemia
Under 60 mmHg (8 kPa) The respiratory failure range

When the estimate is off

The curve assumes standard conditions: pH 7.40, a temperature of 37 °C and a carbon dioxide pressure of 40 mmHg. Acid blood, fever and a high carbon dioxide shift it to the right, so the true PaO2 is higher than the estimate for the same saturation. Alkalosis, a low temperature, fetal hemoglobin and carbon monoxide shift it left, so the true PaO2 is lower.
The estimate also inherits the oximeter’s own error, and the flat top of the curve magnifies it. Three points of error moves the PaO2 estimate by about 7 mmHg around 90%, by about 12 between 92 and 95%, and by far more above that. Treat the answer as a ballpark, never a substitute for a blood gas.

On oxygen: the S/F ratio

Enter the oxygen fraction being breathed (FiO2) and the page adds the S/F ratio, SpO2 divided by FiO2. Rice and colleagues (Chest, 2007) matched it against the P/F ratio, the blood-gas measure used to grade lung injury, and found that an S/F of 235 corresponds to a P/F of 200 and an S/F of 315 to a P/F of 300.
That match holds only at a saturation of 97% or below, where the curve still carries information, so the page leaves S/F out above it. It also divides its PaO2 estimate by the FiO2 for a rough P/F ratio. Both are screening figures; the real P/F ratio needs a blood gas.

Room air is 21% oxygen. Nasal prongs add very roughly 4 points per litre a minute, but that depends on how you breathe, so use the figure your care team works with if you have one.

For what a reading means for you at rest or at altitude, use the blood oxygen level guide.


How we build and check this calculator

This calculator runs entirely in your browser, so the numbers you enter stay on your device. The math behind it is written by hand and tested against worked examples and standard references before the page goes live.

SuperGlobalCalculator is independently built and maintained. See how we build and verify our calculators.


A FREE website for what you create, plus a link-in-bio page, at myname.tublish.com. No credit card needed. A FREE website for what you create, plus a link-in-bio page, at myname.tublish.com. No credit card needed.

Embed This Calculator

Copy the code below and paste it into your website or blog.
The calculator will work directly on your page.