Oxygen Delivery & Respiratory Support Calculator
Plain-text formula: effectiveFiO2 = deviceModel(method, flow, setFiO2); sfRatio = SpO2 / (FiO2/100); estPF = (sfRatio - 64) / 0.84; roxIndex = (SpO2 / FiO2fraction) / respiratoryRate; PAO2 = FiO2fraction * (Patm - 47) - PaCO2 / 0.8; AaGradient = PAO2 - PaO2; CaO2 = 1.34 * Hb * SpO2/100 + 0.003 * PaO2; tankMinutes = tankLitres * percentRemaining / flow.
Introduction to oxygen delivery and respiratory support
Oxygen therapy is one of the most common interventions for hypoxemia (low arterial oxygen saturation) and respiratory failure. Clinicians pick an oxygen delivery device — nasal cannula, simple face mask, non-rebreather, high-flow nasal cannula (HFNC), CPAP, or a mechanical ventilator — and then titrate oxygen to a target SpO2 range appropriate for the patient in front of them.
This page is an educational calculator. It estimates the expected FiO2 (fraction of inspired oxygen) for the selected device and flow, then adds the bedside indices clinicians actually trend: the ROX index for HFNC, the SpO2/FiO2 (S/F) and estimated PaO2/FiO2 (P/F) ratios, the alveolar oxygen tension (PAO2), the A–a gradient, arterial oxygen content (CaO2), and how long a portable oxygen cylinder lasts at a given flow. It supports learning and documentation practice — it does not replace bedside assessment, local protocols, or professional judgment.
Sources and review: ROX-index thresholds follow Roca et al., Am J Respir Crit Care Med 2019; the S/F-to-P/F relationship follows Rice et al., Chest 2007 and the 2023 global ARDS definition. SpO2 targets reflect widely taught ranges such as the BTS emergency oxygen guidance. Page reviewed July 10, 2026.
How to use this oxygen and FiO2 calculator
- Pick the patient type and delivery method. Low-flow devices (nasal cannula, simple mask, non-rebreather) estimate FiO2 from flow; HFNC, CPAP, and ventilators use the FiO2 you dial on the blender.
- Enter the flow rate. Flow drives the low-flow FiO2 estimate and the cylinder runtime, and for blended devices you type the set FiO2 instead.
- Add SpO2, respiratory rate, and a target range. These feed the S/F ratio, the estimated P/F ratio, and the ROX index.
- Open “Advanced inputs” for PaO2, PaCO2, age, hemoglobin, altitude, and cylinder size to unlock the alveolar gas equation, A–a gradient, oxygen content, and tank duration.
- Click Calculate Oxygen Support for a plan summary you can copy or download.
Tip: if SpO2 stays low despite a well-fitted device and high settings, escalation hinges on work of breathing, mental status, hemodynamics, and blood gases — never on one index alone.
Formulas and assumptions behind the FiO2 estimate
The calculator leans on simplified, commonly taught rules of thumb. Real delivered FiO2 shifts with minute ventilation, inspiratory demand, mouth breathing, mask seal, and reservoir-bag inflation, so treat these numbers as teaching estimates that explain why changing the device or flow changes oxygenation.
Low-flow nasal cannula (approximation)
The classic low-flow rule of thumb, valid to roughly 6 L/min, is:
Example: 3 L/min by nasal cannula gives FiO2 ≈ 21% + (4% × 3) = 33%. A patient who is tachypneic or has high inspiratory flow demand entrains more room air, lowering the effective FiO2 below this estimate.
Alveolar gas equation (alveolar PO2)
Once you know FiO2 you can estimate the oxygen tension inside the alveolus, which is the ceiling for what the blood can pick up. The simplified alveolar gas equation is:
Patm is barometric pressure (~760 mmHg at sea level, less at altitude), 47 mmHg is water-vapor pressure at body temperature, and 0.8 is the assumed respiratory quotient. Subtract the measured PaO2 from this PAO2 and you get the alveolar–arterial (A–a) gradient, which widens with shunt, V/Q mismatch, and diffusion problems.
Other device approximations used on this page
- Simple face mask: FiO2 ≈ 35–55% across a 6–10 L/min range; the tool interpolates within that band and requires at least 5 L/min to flush exhaled CO2.
- Non-rebreather mask: FiO2 ≈ 60% at 10 L/min rising toward 80–90% at 15 L/min with a well-inflated reservoir and good seal.
- High-flow nasal cannula, CPAP, ventilator: FiO2 is set directly on the blender (21–100%) and is independent of total flow, so the calculator uses your entered FiO2 rather than a flow formula.
Advanced oxygenation indices: ROX, S/F, and P/F
Beyond FiO2, three ratios summarize how well a patient is oxygenating relative to the support they are receiving. They let you compare a patient to themselves over time and to published thresholds.
- SpO2/FiO2 (S/F) ratio. A non-invasive surrogate for the P/F ratio. An S/F near 315 maps to a P/F near 300 (mild-ARDS cutoff) and an S/F near 235 maps to a P/F near 200. It loses accuracy once SpO2 exceeds about 96–97%, where the oximeter plateaus.
- Estimated PaO2/FiO2 (P/F) ratio. Derived from the S/F ratio using the published linear relationship S/F ≈ 64 + 0.84 × P/F. The Berlin classification calls P/F 200–300 mild, 100–200 moderate, and below 100 severe hypoxemia (with the appropriate imaging and clinical context).
- ROX index (HFNC). Defined as (SpO2 ÷ FiO2 fraction) ÷ respiratory rate. A value of 4.88 or higher at 2, 6, and 12 hours predicts HFNC success, while values under 3.85 flag high risk of failure. It is only meaningful on HFNC and should be read as a trend, not a single snapshot.
Worked example: pneumonia patient on nasal cannula
A 65-year-old with pneumonia arrives with SpO2 88% on room air and a respiratory rate of 24 breaths/min. You start a nasal cannula at 4 L/min.
- Estimated FiO2: 21% + (4% × 4) = 37%.
- S/F ratio: 88 ÷ 0.37 ≈ 238, near the P/F ≈ 200 threshold — moderate hypoxemia, worth close watching.
- Target SpO2 (most adults): 94–98% (institutional targets may vary).
- Reassessment: if SpO2 rises to 92% but work of breathing stays high, consider escalating (simple face mask, non-rebreather, or HFNC) while treating the cause.
If instead the patient had COPD with hypercapnia risk, a typical target would be 88–92% to reduce CO2 retention. The correct target is clinical and protocol-driven.
Oxygen delivery methods and typical ranges
Broad teaching ranges — actual performance depends on patient and equipment. A non-rebreather, for instance, underperforms if the reservoir collapses on inspiration or the seal is poor.
| Oxygen Delivery Method | Flow Rate Range | FiO2 Range | Typical Use |
|---|---|---|---|
| Room Air | N/A | 21% | Healthy patients |
| Nasal Cannula | 1–6 L/min | 24–44% | Mild–moderate hypoxemia |
| Simple Face Mask | 6–10 L/min | 35–55% | Moderate hypoxemia |
| Non-Rebreather Mask | 10–15 L/min | 60–90% | Severe hypoxemia |
| High-Flow Nasal Cannula | 20–60 L/min | 21–100% (set) | Moderate–severe hypoxemia; may prevent intubation |
| CPAP / Ventilator | Set on device | 21–100% (set) | Respiratory failure; severe hypoxemia |
SpO2 targets (general educational ranges)
Targets vary by population, and good practice avoids both hypoxemia and hyperoxia. Common educational ranges:
- Most acutely ill adults: 94–98%
- COPD or other hypercapnia risk: 88–92%
- Acute coronary syndromes: usually 94–98% and only when hypoxemic, since routine hyperoxia may be harmful
- Neonates/premature infants: specialized, protocol-driven targets (not modeled here)
What FiO2 and SpO2 do (and do not) tell you
FiO2 is the oxygen concentration you deliver; SpO2 is a noninvasive estimate of how saturated the blood already is. They move together but are not interchangeable. A pneumonia patient with heavy shunt can sit on 90% FiO2 and still read a low SpO2, while another patient's SpO2 looks fine even as CO2 climbs and ventilation quietly fails. Oximetry is also fooled by poor perfusion, motion, dark nail polish, skin-pigmentation effects, and carboxyhemoglobin, so when the reading and the bedside picture disagree, a blood gas is the tiebreaker — and the reason S/F and estimated P/F stay surrogates for a measured PaO2.
Escalation and monitoring (educational checklist)
Escalation is not simply "turn up the oxygen" — it is matching support to the physiology and watching how the patient answers. Confirm the boring things first (probe signal, a snug mask, a live oxygen source, an inflated non-rebreather reservoir), then read the patient rather than the number: accessory-muscle use, one-word answers, sweating, or agitation can announce failure while SpO2 still looks fine. Trend the respiratory rate, mental status, and — on HFNC — the ROX index over hours, remembering that pneumonia, pulmonary edema, a COPD flare, PE, and sepsis all lower saturation for different reasons, so the fix follows the cause. Persistent hypoxemia, a fading mental status, instability, or plain exhaustion all warrant urgent help.
Limitations and safety notes
This calculator intentionally simplifies complex physiology. Key limitations:
- Estimated FiO2 is approximate: delivered FiO2 depends on inspiratory demand, mask fit, mouth breathing, and setup.
- No ventilation/PEEP modeling: CPAP, BiPAP, and ventilator oxygenation depend heavily on PEEP, mean airway pressure, lung mechanics, and shunt fraction, none of which are captured here.
- SpO2 is not PaO2: the oxyhemoglobin dissociation curve, perfusion, dyshemoglobinemias, and probe issues can make SpO2 and the S/F-derived P/F misleading, especially above 96% SpO2.
- Indices are trends, not verdicts: the ROX index and P/F estimate support structured thinking; they never replace clinical judgment or a blood gas.
- Oxygen can cause harm: prolonged high FiO2 may contribute to oxygen toxicity and absorption atelectasis, and excess oxygen can worsen CO2 retention in at-risk patients.
Use local protocols and consult qualified clinicians (respiratory therapy, emergency medicine, pulmonology, critical care) for real patient care. If you are a learner, treat the output as a structured summary of your inputs plus rough estimates — not a prescription.
Quick glossary (plain-language)
- FiO2
- Fraction of inspired oxygen: the percentage of oxygen in the gas the patient breathes (room air is about 21%).
- SpO2
- Peripheral oxygen saturation: a pulse-oximeter estimate of how much hemoglobin is saturated with oxygen.
- ROX index
- (SpO2 ÷ FiO2 fraction) ÷ respiratory rate; a bedside score used to track whether high-flow nasal cannula is succeeding.
- S/F and P/F ratios
- SpO2/FiO2 and PaO2/FiO2; measures of oxygenation relative to the oxygen being delivered, used to grade hypoxemia and ARDS.
- A–a gradient
- The difference between alveolar (PAO2) and arterial (PaO2) oxygen tension; widens with shunt, V/Q mismatch, and diffusion problems.
- PEEP
- Positive end-expiratory pressure kept at end-exhalation to improve oxygenation by preventing alveolar collapse.
Frequently asked questions about oxygen delivery and FiO2
How do you estimate FiO2 from a nasal cannula flow rate?
A commonly taught rule of thumb is FiO2 is about 21% plus 4% for each L/min of flow, so 3 L/min by nasal cannula gives roughly 33%. This only applies to low-flow nasal cannula up to about 6 L/min. Real delivered FiO2 varies with breathing pattern and inspiratory demand, so it is an educational approximation, not a measurement.
Why does the calculator ask me to set FiO2 directly for HFNC, CPAP, and ventilators?
High-flow nasal cannula, CPAP, and mechanical ventilators blend air and oxygen to a dialed-in FiO2 that is independent of the total gas flow, so there is no valid flow-to-FiO2 rule of thumb for them. For these devices the calculator uses the FiO2 you set on the blender and applies it to every downstream index.
What is the ROX index and what threshold suggests high-flow nasal cannula is working?
The ROX index is (SpO2 / FiO2) divided by respiratory rate, with FiO2 as a fraction. In Roca and colleagues' work a value of 4.88 or higher at 2, 6, and 12 hours of HFNC was associated with a lower risk of needing intubation, while values under 3.85 flagged high risk of failure. It is a bedside trend tool, not a rule to intubate or extubate on its own.
How does the SpO2/FiO2 (S/F) ratio relate to the PaO2/FiO2 (P/F) ratio?
The S/F ratio is a non-invasive surrogate for the P/F ratio when no arterial blood gas is available. An S/F of about 315 corresponds to a P/F near 300 (the mild-ARDS cutoff) and an S/F of about 235 corresponds to a P/F near 200. The relationship breaks down once SpO2 rises above 96-97%, because the oximeter plateaus even as PaO2 keeps climbing.
What SpO2 target should I use for oxygen therapy?
Many educational guidelines target 94-98% for most acutely ill adults, while patients with COPD or another risk of hypercapnic respiratory failure are often managed to 88-92% to reduce the risk of CO2 retention. Actual targets are set by local protocols and clinician judgment, and both hypoxemia and hyperoxia carry risk.
Is this calculator suitable for clinical decision making?
No. It is an educational tool for learning and documentation practice. Delivered FiO2 depends on patient inspiratory demand, mask fit, and device setup, and all oxygen therapy decisions must be made by qualified healthcare professionals using clinical assessment and local protocols.
Titration Trainer: hold the SpO2 in the green
The hardest part of oxygen therapy is not the formula — it is titrating in real time as a patient drifts. In this mini-game your patient's oxygen demand rises and wobbles while you nudge the FiO2 knob up or down to keep SpO2 parked inside the 94–98% target band. Chase too little and you slide into hypoxemia; pin it too high and oxygen toxicity creeps up. You score every moment you stay in the band. Click Start game (or press Space) to play; use ↑/↓ (or W/S), or tap the upper/lower half of the board on touch.
Score
SpO2
FiO2 knob
Best
Click to play — press Start game to begin titrating.
Takeaway: real titration is a moving target. Both extremes carry risk — chronic hypoxemia starves tissue, while sustained hyperoxia can worsen CO2 retention in at-risk patients and drive absorption atelectasis. The goal is the smallest FiO2 that holds the target, not the highest.
