{
  "id": "abg",
  "version": "7ebee2aee585",
  "status": "published",
  "name": "ABG Calculator",
  "question": "What does my ABG show?",
  "summary": "Reads an arterial blood gas (ABG): the primary acid-base disorder from pH, PaCO2, and bicarbonate, the expected compensation by Winter's formula and the Boston rules, and the anion gap and delta ratio.",
  "category": "health",
  "subcategory": "clinical",
  "url": "https://www.acalculator.org/health/abg-calculator",
  "markdown": "https://www.acalculator.org/health/abg-calculator.md",
  "kind": "function",
  "method": "Primary disorder from pH (7.35 to 7.45), PaCO2 (35 to 45 mmHg), and HCO3 (22 to 26 mmol/L). Winter's formula: PaCO2 = 1.5 × HCO3 + 8 ± 2; metabolic alkalosis: PaCO2 = 40 + 0.7 × (HCO3 − 24) ± 2; respiratory acidosis: HCO3 = 24 + 0.1 (acute) or 0.4 (chronic) × (PaCO2 − 40); respiratory alkalosis: HCO3 = 24 − 0.2 (acute) or 0.4 (chronic) × (40 − PaCO2). Anion gap = Na − (Cl + HCO3), corrected + 2.5 × (4 − albumin).",
  "assumptions": [
    "An arterial sample. Normal ranges: pH 7.35 to 7.45, PaCO2 35 to 45 mmHg, HCO3 22 to 26 mmol/L.",
    "For a respiratory disorder, an HCO3 more than 2 mmol/L outside the acute-to-chronic range suggests an added metabolic disorder.",
    "The delta ratio uses a normal anion gap of 12 and a normal HCO3 of 24, and is shown only for a metabolic acidosis with an anion gap over 12.",
    "This is a teaching aid: it does not replace a clinician reading the whole picture."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "ph": {
        "title": "pH",
        "description": "Arterial blood pH.",
        "type": "number",
        "minimum": 6.5,
        "maximum": 8
      },
      "units": {
        "title": "PaCO2 unit",
        "description": "PaCO2 in mmHg (US) or kPa (SI).",
        "type": "string",
        "enum": [
          "us",
          "si"
        ]
      },
      "paco2": {
        "title": "PaCO2 (mmHg)",
        "description": "Partial pressure of carbon dioxide in arterial blood, in mmHg.",
        "type": "number",
        "minimum": 5,
        "maximum": 200
      },
      "paco2Si": {
        "title": "PaCO2 (kPa)",
        "description": "Partial pressure of carbon dioxide in arterial blood, in kPa.",
        "type": "number",
        "minimum": 0.67,
        "maximum": 26.7
      },
      "hco3": {
        "title": "HCO3 (mmol/L)",
        "description": "Bicarbonate, in mmol/L (the same number as mEq/L).",
        "type": "number",
        "minimum": 2,
        "maximum": 70
      },
      "na": {
        "title": "Sodium (mmol/L)",
        "description": "Serum sodium, for the anion gap. Optional.",
        "type": "number",
        "minimum": 100,
        "maximum": 180
      },
      "cl": {
        "title": "Chloride (mmol/L)",
        "description": "Serum chloride, for the anion gap. Optional.",
        "type": "number",
        "minimum": 60,
        "maximum": 150
      },
      "alb": {
        "title": "Albumin (g/dL)",
        "description": "Serum albumin in g/dL, to correct the anion gap. Optional.",
        "type": "number",
        "minimum": 0.5,
        "maximum": 7
      }
    }
  },
  "outputs": {
    "primary": {
      "label": "Primary disorder",
      "description": "The acid-base pattern of the pH, PaCO2, and HCO3.",
      "format": "text"
    },
    "compensation": {
      "label": "Compensation",
      "description": "The expected compensation for a single primary disorder, and whether the measured value fits it.",
      "format": "text"
    },
    "ag": {
      "label": "Anion gap (mmol/L)",
      "description": "Sodium − (chloride + HCO3).",
      "format": "number"
    },
    "agCorrected": {
      "label": "Albumin-corrected anion gap (mmol/L)",
      "description": "Anion gap + 2.5 × (4.0 − albumin in g/dL).",
      "format": "number"
    },
    "deltaRatio": {
      "label": "Delta ratio",
      "description": "(anion gap − 12) ÷ (24 − HCO3), for a metabolic acidosis with a high anion gap.",
      "format": "number"
    },
    "paco2Mmhg": {
      "label": "PaCO2 (mmHg)",
      "description": "The PaCO2 used, in mmHg.",
      "format": "number"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "ph": 7.25,
      "units": "us",
      "paco2": 28,
      "paco2Si": 3.7,
      "hco3": 12,
      "na": 140,
      "cl": 104
    },
    "outputs": {
      "primary": "Metabolic acidosis",
      "compensation": "Expected PaCO2 24.0 to 28.0 mmHg (Winter's formula): appropriate respiratory compensation.",
      "ag": 24,
      "deltaRatio": 1,
      "paco2Mmhg": 28
    },
    "text": "The blood gas shows: Metabolic acidosis."
  },
  "examples": [
    {
      "given": {
        "ph": 7.25,
        "units": "us",
        "paco2": 28,
        "hco3": 12,
        "na": 140,
        "cl": 104
      },
      "expect": {
        "primary": "Metabolic acidosis",
        "compensation": "Expected PaCO2 24.0 to 28.0 mmHg (Winter's formula): appropriate respiratory compensation.",
        "ag": 24,
        "deltaRatio": 1
      },
      "source": "Winter's formula (Albert 1967): 1.5 × 12 + 8 = 26 ± 2 mmHg, so 28 fits; anion gap 140 − (104 + 12) = 24; delta ratio (24 − 12) ÷ (24 − 12) = 1 (hand calculation in content.mdx)"
    },
    {
      "given": {
        "ph": 7.25,
        "units": "us",
        "paco2": 60,
        "hco3": 26
      },
      "expect": {
        "primary": "Respiratory acidosis",
        "compensation": "Expected HCO3 26.0 (acute) to 32.0 (chronic) mmol/L: HCO3 fits an acute, chronic, or in-between respiratory acidosis."
      },
      "source": "Berend et al., N Engl J Med 2014, Table 1: acute 1 mmol/L per 10 mmHg, 24 + 0.1 × 20 = 26; chronic 4 to 5 mmol/L per 10 mmHg, 24 + 0.4 × 20 = 32 (hand calculation in content.mdx)"
    },
    {
      "given": {
        "ph": 7.5,
        "units": "si",
        "paco2Si": 6.4,
        "hco3": 36
      },
      "expect": {
        "primary": "Metabolic alkalosis",
        "compensation": "Expected PaCO2 46.4 to 50.4 mmHg: appropriate respiratory compensation.",
        "paco2Mmhg": 48.003936322778465
      },
      "source": "Berend et al. 2014: 40 + 0.7 × (36 − 24) = 48.4 ± 2 mmHg; 6.4 kPa ÷ 0.1333224 = 48.0 mmHg fits (hand calculation in content.mdx)"
    },
    {
      "given": {
        "ph": 7.15,
        "units": "us",
        "paco2": 50,
        "hco3": 17
      },
      "expect": {
        "primary": "Mixed metabolic and respiratory acidosis"
      },
      "source": "pH under 7.35 with HCO3 under 22 and PaCO2 over 45: both processes lower the pH (hand calculation)"
    },
    {
      "given": {
        "ph": 7.3,
        "units": "us",
        "paco2": 30,
        "hco3": 14,
        "na": 138,
        "cl": 110,
        "alb": 2
      },
      "expect": {
        "primary": "Metabolic acidosis",
        "ag": 14,
        "agCorrected": 19,
        "deltaRatio": 0.7
      },
      "source": "Anion gap 138 − (110 + 14) = 14; Figge 1998: 14 + 2.5 × (4 − 2) = 19; delta ratio (19 − 12) ÷ (24 − 14) = 0.7 (hand calculation in content.mdx)",
      "tolerance": 1e-12
    }
  ],
  "sources": [
    "Berend K, de Vries APJ, Gans ROB. Physiological approach to assessment of acid-base disturbances. N Engl J Med. 2014;371(15):1434-1445. https://doi.org/10.1056/NEJMra1003327",
    "Albert MS, Dell RB, Winters RW. Quantitative displacement of acid-base equilibrium in metabolic acidosis. Ann Intern Med. 1967;66(2):312-322. https://doi.org/10.7326/0003-4819-66-2-312",
    "Narins RG, Emmett M. Simple and mixed acid-base disorders: a practical approach. Medicine (Baltimore). 1980;59(3):161-182. https://doi.org/10.1097/00005792-198005000-00001",
    "Figge J, Jabor A, Kazda A, Fencl V. Anion gap and hypoalbuminemia. Crit Care Med. 1998;26(11):1807-1810. https://doi.org/10.1097/00003246-199811000-00019",
    "Kraut JA, Madias NE. Serum anion gap: its uses and limitations in clinical medicine. Clin J Am Soc Nephrol. 2007;2(1):162-174. https://doi.org/10.2215/CJN.03020906",
    "NIST Special Publication 811, Guide for the Use of the International System of Units, Appendix B (1 mmHg = 133.3224 Pa). https://www.nist.gov/pml/special-publication-811"
  ],
  "related": [],
  "changelog": [
    {
      "date": "2026-09-29",
      "note": "Published after this site's editorial review against the cited sources (no clinician review); the page notice says so. Chronic respiratory acidosis now expects 4 mmol/L of HCO3 per 10 mmHg (Berend 2014), not 3.5."
    }
  ]
}
