Arte SheetsLearn. Try. Understand.

Statistical & Clinical Analysis

Adrogué-Madias Formula: Predicted Serum Sodium Change per Liter of IV Infusate

Calculate expected Δ[Na+] = ([Na+ + K+]_infusate - [Na+]_serum) / (TBW + 1) and required 3% hypertonic saline volume (mL) while guarding against osmotic demyelination.

Why dividing by (TBW + 1) accounts for the 1 liter of infused water added to total body water!

Horacio J. Adrogué and Nicolaos E. Madias (2000, New England Journal of Medicine) derived the bedside closed-system mass-balance equation predicting how 1 liter of any IV fluid alters serum sodium [Na+]_s: Δ[Na+]_per_L = ([Na+]_inf + [K+]_inf - [Na+]_s) / (TBW + 1), where Total Body Water TBW = Weight_kg * f_TBW (0.60 adult men, 0.50 adult women/elderly men, 0.45 elderly women)—and where potassium [K+]_inf counts osmotically just like sodium via Edelman exchange!

To prevent Osmotic Demyelination Syndrome (ODS), chronic hyponatremia correction is strictly capped at <= 6–8 mEq/L in 24 hours! In a 70 kg man (f_TBW = 0.60 -> TBW = 42.0 L) with severe symptomatic hyponatremia [Na+]_s = 116 mEq/L receiving 3% NaCl ([Na+]_inf = 513 mEq/L), 1 liter raises [Na+] by +9.23 mEq/L—so achieving a safe +6.0 mEq/L target requires 650 mL (whereas 1 L of 0.9% NaCl at 154 mEq/L raises [Na+] by +0.88 mEq/L)!

IV Infusate (70 kg, TBW = 42 L, Serum Na = 116 mEq/L)Δ[Na+] per 1 Liter InfusedVolume for +6 mEq/L TargetODS Safety Check
3% Hypertonic NaCl (513 mEq/L, K = 0)+9.23 mEq/L per L650 mLNever infuse full 1 L blind (> 8 mEq/L)!
0.9% Isotonic NaCl (154 mEq/L, K = 0)+0.88 mEq/L per L6,790 mL (Check ADH/SIADH!)Note: SIADH high urine Osm can paradoxically lower Na
Target 24h Rise > 8 mEq/L or Invalid WeightSafety Guard"Exceeds Safe <= 8 mEq/L 24h ODS Cap"Osmotic Demyelination Guard

Adrogué-Madias Expected Serum Sodium Change per 1 Liter Infused (mEq/L)

Evaluates ([Na]_inf + [K]_inf - [Na]_serum) / (Weight * f_TBW + 1) from B2:B6.

=IF(OR(B2 < 0, B3 < 0, B4 < 90, B4 > 190, B5 <= 0, B6 < 0.35, B6 > 0.75), "Invalid Hyponatremia Inputs", ROUND((B2 + B3 - B4) / (B5 * B6 + 1), 2))

Infusate Volume (mL) for Safe 24-Hour Sodium Rise Target (<= 8 mEq/L Cap)

Computes (Target_Rise / Δ[Na]_per_L) * 1000 mL, blocking unsafe > 8 mEq/L 24-hour correction targets.

=IF(OR(B2 < 0, B3 < 0, B4 < 90, B4 > 190, B5 <= 0, B6 < 0.35, B6 > 0.75), "Invalid Hyponatremia Inputs", IF(OR(B7 <= 0, B7 > 8), "Exceeds Safe <= 8 mEq/L 24h ODS Cap", IF(B2 + B3 <= B4, "Infusate Cannot Raise Serum Na", ROUND((B7 / ((B2 + B3 - B4) / (B5 * B6 + 1))) * 1000, 0))))

Try the example

Use the original values or change them to test your understanding.

Further reading