A-a Gradient and Alveolar Gas Equation Calculator
Compute alveolar oxygen from the alveolar gas equation, then the A-a gradient, the age adjusted expected value and the P/F ratio, with altitude handled.
Calculator
21 percent is room air, which is an FiO2 of 0.21. Nasal cannula at 2 L/min is roughly 28 percent.
From the blood gas. Normal 35 to 45 mmHg, or 4.7 to 6.0 kPa.
From the blood gas, not the pulse oximeter. Normal 80 to 100 mmHg on room air.
760 mmHg at sea level. Roughly 580 at Shimla and 495 at Leh, and holding 760 at altitude invents a gradient.
CO2 produced over O2 consumed. 0.8 on a mixed diet, 1.0 on pure carbohydrate, 0.7 on pure fat.
Only used for the expected gradient. It does not enter the alveolar gas equation.
Working, with your numbers
- PAO2 = FiO2 x (Patm - PH2O) - PaCO2 / R
- = 0.21 x (760 - 47) - 40 / 0.8
- = 0.21 x 713 - 50
- = 149.73 - 50
- = 99.73 mmHg
- A-a gradient = PAO2 - PaO2
- = 99.73 - 95
- = 4.73 mmHg
Values are converted into the units the equation is worked in before the arithmetic.
- Alveolar oxygen, PAO2 The oxygen tension the alveolus should hold given the inspired mixture and the arterial CO2. Around 100 mmHg on room air at sea level.
- 99.73 mmHg
- Expected for this age By age over 4 plus 4. The gradient widens with age because ventilation and perfusion match less well as the lung loses elastic recoil.
- 10.3 mmHg
- Expected, other estimate By 2.5 plus 0.21 times age. Both estimates are in use and examiners ask for either, so both are shown rather than one being picked silently.
- 7.75 mmHg
- Gradient reads as A wide gradient points at a shunt, a diffusion defect or ventilation and perfusion mismatch. A normal gradient with a low PaO2 points instead at hypoventilation or altitude.
- Within expected
- P/F ratio PaO2 over FiO2 as a fraction. Under 300 meets the oxygenation criterion for acute respiratory distress syndrome, under 100 is severe. More reliable than the A-a gradient once supplemental oxygen is running.
- 452.4
- Inspired oxygen tension PiO2, the humidified inspired tension before any CO2 displaces oxygen. 149.7 mmHg on room air at sea level.
- 149.73 mmHg
Citing this tool
Last updated . Add the date you accessed it as well, which a citation of a page that can change asks for. If a specific result matters, cite the permalink from the tool’s share row instead of this page: it reproduces the exact parameters.
The equation
Alveolar gas equation, Riley and Cournand (1949)
The equation, term by term
PAO₂ = FiO₂ × (Patm − PH₂O) − PaCO₂ / R
Each term is doing something specific, and losing any one of them is a recognisable error.
- Patm − PH₂O. Inspired gas is fully saturated with
water vapour by the time it reaches the alveolus, and that vapour exerts its own partial
pressure which dilutes everything else. At body temperature it is 47 mmHg, and it depends
only on temperature, so it does not fall with altitude. At sea level this leaves
760 − 47 = 713 mmHgfor the dry gases. - FiO₂ × that. Oxygen’s share of the humidified inspired gas.
Room air is 20.9 percent oxygen, so
0.21 × 713 = 149.73 mmHg. This is the inspired oxygen tension, PiO₂, shown as its own readout above. - − PaCO₂ / R. Carbon dioxide arriving from the blood occupies space in the alveolus and displaces oxygen. Arterial carbon dioxide is used as a proxy for alveolar, which is legitimate because carbon dioxide diffuses so readily that the two are essentially equal.
- R, the respiratory quotient. Slightly less carbon dioxide is produced than oxygen consumed, so the gas volumes do not balance exactly. R is the ratio, 0.8 on a mixed diet, about 1.0 on pure carbohydrate and 0.7 on pure fat. Dividing 40 by 0.8 gives 50 rather than 40, so this correction is worth 10 mmHg and is not cosmetic.
Putting room air at sea level through it: 0.21 × (760 − 47) − 40 / 0.8 = 149.73 − 50 = 99.73 mmHg.
That is where the textbook statement that alveolar oxygen is about 100 mmHg comes from.
The gradient, and what widens it
A-a gradient = PAO₂ − PaO₂. It is the oxygen that should
have reached the blood but did not, so it measures how well the lung is transferring gas
rather than how much oxygen is arriving.
Some gradient is normal, because of bronchial and coronary venous drainage into the systemic circulation and because ventilation and perfusion are never perfectly matched even in a healthy lung. It widens with age as elastic recoil is lost. Two estimates of the expected value are in circulation and examiners ask for either, so both are shown above:
expected = age / 4 + 4expected = 2.5 + 0.21 × age
They agree closely in young adults, around 8 to 10 mmHg at 25, and give 19 to 24 mmHg at 80.
The clinical value of the gradient is that it splits the causes of a low arterial oxygen into two groups, and the split is genuinely useful:
- Wide gradient. The lung is the problem. Shunt, whether intrapulmonary as in consolidation or atelectasis, or intracardiac. Ventilation and perfusion mismatch, as in pulmonary embolism, asthma or chronic obstructive disease. Diffusion impairment, as in interstitial disease.
- Normal gradient with a low arterial oxygen. The lung is transferring gas properly and the problem lies outside it. Either hypoventilation, in which case the carbon dioxide will be high, from opioids, neuromuscular weakness or a central cause; or a low inspired oxygen tension, meaning altitude or a hypoxic gas mixture, in which case the carbon dioxide will be normal or low.
A worked contrast. Someone who has taken an opioid overdose might have an arterial oxygen of
55 mmHg and a carbon dioxide of 75. Alveolar oxygen is
0.21 × 713 − 75 / 0.8 = 149.73 − 93.75 = 56 mmHg, so the gradient is about 1 mmHg.
The lung is fine; the patient is simply not breathing. No amount of examining the chest will
explain the hypoxaemia, and the treatment is naloxone and ventilation rather than oxygen alone.
Why altitude is an input rather than a constant
Barometric pressure is a field above, not a hard coded 760, because getting this wrong invents disease. Pressure falls roughly exponentially with altitude:
- Sea level, about 760 mmHg.
- Shimla at around 2,200 m, about 580 to 590 mmHg.
- Leh at around 3,500 m, about 490 to 505 mmHg.
At 495 mmHg the lower pressure alone takes alveolar oxygen on room air down to
0.21 × (495 − 47) − 50 = 44.1 mmHg. Residents at altitude are also chronically
hyperventilating, so their arterial carbon dioxide is low, around 30 rather than 40, and that
partly offsets the fall: 0.21 × (495 − 47) − 30 / 0.8 = 56.6 mmHg. A healthy long
term resident of Leh with an arterial oxygen of 50 therefore has a gradient of 6.6 mmHg, which
is completely normal, and no lung disease at all. Computing their gradient against a sea level
alveolar tension of 99.73 would report roughly 50 mmHg and send you looking for a shunt that
does not exist.
When to use the P/F ratio instead
The A-a gradient has a real weakness: it is not comparable across different inspired oxygen concentrations. Raising the inspired fraction raises the alveolar tension, and a given shunt fraction then costs more absolute millimetres of mercury, so the gradient widens even though the lung has not changed. Comparing today’s gradient on 40 percent oxygen against yesterday’s on room air tells you very little.
The P/F ratio, arterial oxygen divided by the inspired fraction, is more stable across oxygen
concentrations and is what the Berlin definition of acute respiratory distress syndrome uses:
under 300 meets the oxygenation criterion, under 200 is moderate and under 100 is severe. On
room air a normal arterial oxygen of 95 gives 95 / 0.21 = 452. Both numbers are
shown above so the comparison is in front of you rather than requiring a second calculation.
Common mistakes
- Dropping the water vapour term. Using 760 instead of 713 raises alveolar oxygen by 10 mmHg and manufactures a gradient. The most frequent error with this equation.
- Entering the inspired oxygen as 21 rather than 0.21 in the bare formula. The field above takes a percentage and converts, but doing it by hand with 21 gives an absurd alveolar oxygen of 14,923 mmHg. The same error in a P/F ratio gives 4.5 and declares everyone to have severe respiratory failure.
- Using a pulse oximeter reading. The equation needs an arterial oxygen tension in mmHg from a blood gas, not a saturation in percent. A saturation of 95 percent corresponds to a tension of about 80 mmHg, and the relationship between them is the sigmoid oxyhaemoglobin dissociation curve rather than anything linear.
- Guessing the inspired fraction on nasal cannula. It varies with the patient’s own inspiratory flow, so the delivered fraction is genuinely uncertain. Any gradient computed from an assumed value on low flow oxygen carries that uncertainty, and a venturi mask or a stated ventilator setting is far more trustworthy.
- Reading a wide gradient as a diagnosis. It localises the problem to the lung and does not say which lung problem. Distinguishing shunt from mismatch needs the response to supplemental oxygen: a true shunt barely improves, whereas mismatch corrects readily.
Converting units first? Use the pressure conversion table.
Worked examples
Each one runs through the calculator above, so the arithmetic here is the arithmetic it does.
What is the A-a gradient in an opioid overdose with a PaCO2 of 75 mmHg?
- PAO2 = FiO2 x (Patm - PH2O) - PaCO2 / R
- = 0.21 x (760 - 47) - 75 / 0.8
- = 0.21 x 713 - 93.75
- = 149.73 - 93.75
- = 55.98 mmHg
- A-a gradient = PAO2 - PaO2
- = 55.98 - 55
- = 0.98 mmHg
About 1 mmHg, which is normal, yet the arterial oxygen is only 55. The lung is transferring gas perfectly and the patient is simply not breathing, so the treatment is naloxone and ventilation rather than oxygen. No amount of examining the chest explains this hypoxaemia.
What is the A-a gradient with a PaO2 of 60 and a PaCO2 of 30 on room air?
- PAO2 = FiO2 x (Patm - PH2O) - PaCO2 / R
- = 0.21 x (760 - 47) - 30 / 0.8
- = 0.21 x 713 - 37.5
- = 149.73 - 37.5
- = 112.23 mmHg
- A-a gradient = PAO2 - PaO2
- = 112.23 - 60
- = 52.23 mmHg
Wide, and the exact opposite of the opioid case despite a similar arterial oxygen. The low carbon dioxide shows the patient is hyperventilating and still cannot oxygenate, which localises the problem to the lung and fits a pulmonary embolism or any shunt.
What PaO2 gives a normal A-a gradient of 10 mmHg on 40 percent oxygen?
- PAO2 = FiO2 x (Patm - PH2O) - PaCO2 / R
- = 0.4 x (760 - 47) - 40 / 0.8
- = 0.4 x 713 - 50
- = 285.2 - 50
- = 235.2 mmHg
- PaO2 = PAO2 - (A-a gradient)
- = 235.2 - 10
- = 225.2 mmHg
Over 225 mmHg, which is what a healthy lung should manage on 40 percent oxygen. Seeing an arterial oxygen of 90 on that setting therefore means a gradient of about 145, not a reassuring number, and it is why a saturation of 98 percent on oxygen hides a great deal.
Practise this with Lab and Clinical Calculation Practice Problems, questions generated from this calculator and 9 other calculators in Biology.
Common questions
Why subtract 47 mmHg before applying the inspired fraction?
Because inspired gas is fully saturated with water vapour by the time it reaches the alveolus, and that vapour exerts its own partial pressure which dilutes everything else. At body temperature the pressure is 47 mmHg and it does not change with altitude, since it depends only on temperature. So the pressure available to the dry gases at sea level is 760 minus 47, which is 713 mmHg, and room air contributes 0.21 of that, giving an inspired oxygen tension of 149.73 mmHg. Forgetting the 47 is the commonest error here and inflates alveolar oxygen by about 10 mmHg.
What is the respiratory quotient doing in the equation?
Correcting for the fact that slightly less carbon dioxide is produced than oxygen is consumed, so the volume of gas leaving the blood does not quite match the volume entering it. R is the ratio of the two, conventionally 0.8 on a mixed diet, rising towards 1.0 on pure carbohydrate and falling to about 0.7 on pure fat. Dividing arterial carbon dioxide by 0.8 rather than using it directly increases that term from 40 to 50 mmHg, so the choice of R moves alveolar oxygen by a clinically visible amount.
What counts as a normal A-a gradient?
It widens with age, because ventilation and perfusion match less well as the lung loses elastic recoil. Two estimates are in use and examiners ask for either: age divided by four plus four, or 2.5 plus 0.21 times age. For a 25 year old both give roughly 8 to 10 mmHg, and for an 80 year old about 19 to 24. A gradient wider than expected points at a shunt, a diffusion defect or ventilation and perfusion mismatch. A normal gradient with a low arterial oxygen points instead at hypoventilation or at altitude, which is a genuinely different differential.
Why does barometric pressure need to be an input?
Because holding it at 760 mmHg invents a gradient in anyone who is not at sea level. Barometric pressure is roughly 580 to 590 mmHg at Shimla and about 495 mmHg at Leh, so alveolar oxygen at Leh on room air is around 44 mmHg rather than 100, or about 57 mmHg with the lower carbon dioxide of a resident who has acclimatised. A healthy resident there has a normal A-a gradient and a low arterial oxygen at the same time. Using the sea level value computes an alveolar tension the lung never sees and reports a wide gradient in a normal lung.
When should I use the P/F ratio instead?
Once supplemental oxygen is running. The A-a gradient itself rises with inspired oxygen even when the lung has not changed, because a higher alveolar tension makes any given shunt fraction cost more, so gradients measured on different oxygen concentrations are not comparable. The P/F ratio, arterial oxygen divided by the inspired fraction, is more stable and is what the ARDS definition uses: under 300 meets the oxygenation criterion, under 200 is moderate and under 100 is severe. Both are shown here so the comparison is visible.