The Henderson-Hasselbalch Equation: Formula, Derivation and Buffer Examples
By Dr. Zubair Khalid, DVM, MS, PhD ·

The Henderson-Hasselbalch equation states that the pH of a buffer equals the pKa of its weak acid plus the base-10 logarithm of the ratio of conjugate base concentration to weak acid concentration: pH = pKa + log10([A⁻]/[HA]). It converts an equilibrium constant into a practical arithmetic tool that predicts how a buffer will respond to changes in composition, dilution, and dissolved gas tension.
Few equations do as much routine work in a molecular biology laboratory. Every buffer recipe in a cloning manual, every pH adjustment before an enzymatic reaction, and every bicarbonate value printed by a blood gas analyzer depends on this relationship. The equation is not a separate law of chemistry. It is the mass-action expression for a weak acid, rearranged so that hydrogen ion concentration appears on one side and a logarithmic pH scale appears on the other. Once you see the rearrangement, the formula stops looking like something to memorize and starts looking like something you could rebuild from first principles on a napkin.
The Henderson-Hasselbalch Formula and What Each Symbol Means
Start with definitions, because most errors with this equation come from misassigning terms rather than from arithmetic.
- pH is the negative base-10 logarithm of hydrogen ion activity, approximated in routine work as -log10[H⁺].
- Ka is the acid dissociation constant, the equilibrium constant for the reaction HA ⇌ H⁺ + A⁻.
- pKa is -log10 Ka, the pH at which half of the acid molecules in solution are deprotonated.
- HA is the weak acid, the proton donor.
- A⁻ is the conjugate base, the proton acceptor.
- A buffer is a solution of a weak acid and its conjugate base (or a weak base and its conjugate acid) that resists pH change when small amounts of strong acid or strong base are added.
The Henderson-Hasselbalch formula takes two equivalent shapes depending on whether the buffering species is described as an acid or a base.
Acid form: pH = pKa + log10([A⁻]/[HA])
Base form: pH = pKa + log10([B]/[BH⁺])
In the base form, B is the unprotonated weak base, BH⁺ is its protonated conjugate acid, and pKa still refers to the conjugate acid. Tris is the standard example. Tris base (B) and Tris hydrochloride (BH⁺) together form a buffer in the pH 7 to 9 range.
A third form dominates clinical chemistry. For the carbonic acid and bicarbonate system, the equation is written with the dissolved gas term in the denominator:
pH = pK'1 + log10([HCO₃⁻] / (α × PCO₂))
Here PCO₂ is the partial pressure of carbon dioxide in mmHg, α is the solubility coefficient of CO₂ in plasma (about 0.03 mmol/L per mmHg), and pK'1 is an operational constant near 6.1. The prime symbol marks it as an apparent constant that folds together CO₂ hydration and carbonic acid dissociation.
| Concept | Expression or value | What it tells you |
|---|---|---|
| Weak acid dissociation | HA ⇌ H⁺ + A⁻, Ka = [H⁺][A⁻]/[HA] | The equilibrium that creates the buffer |
| Definition of pKa | pKa = -log10 Ka | The pH of half-dissociation |
| Henderson-Hasselbalch formula | pH = pKa + log10([A⁻]/[HA]) | Predicts buffer pH from composition |
| Base form | pH = pKa + log10([B]/[BH⁺]) | The same equation for a weak base |
| Bicarbonate form | pH = 6.1 + log10([HCO₃⁻]/(0.0307 × PCO₂)) | The blood gas bicarbonate calculation |
| Half-neutralization point | [A⁻] = [HA], so pH = pKa | The center of the buffering region |
| Useful buffering range | pH = pKa ± 1, ratios from 1:10 to 10:1 | Where the buffer resists pH change well |
| Buffer capacity | Base added per unit pH change, maximal at pH = pKa | How much acid or base the buffer can absorb |
Concentrations versus activities
The derivation below uses concentrations in place of activities. That substitution is an approximation. Equilibrium constants are formally defined with activities, and activity coefficients fall below 1 as ionic strength rises. In dilute buffers below roughly 0.1 M ionic strength, the difference is small and the equation performs well. In high-salt buffers, the apparent pKa can shift enough to move the measured pH by a few tenths of a unit. This is one reason a phosphate-buffered saline recipe measured at 0.15 M NaCl does not give exactly the pH predicted from the simple ratio.
Deriving the Henderson-Hasselbalch Equation
The derivation takes six short steps and requires only the definition of a logarithm. Work through it once and the formula becomes self-explanatory.
Step 1: Write the dissociation reaction
A weak acid HA releases a proton to water:
HA ⇌ H⁺ + A⁻
Step 2: Write the equilibrium expression
By the law of mass action, at equilibrium:
Ka = [H⁺][A⁻] / [HA]
Step 3: Solve for [H⁺]
Rearrange algebraically:
[H⁺] = Ka × [HA] / [A⁻]
Step 4: Take the negative base-10 logarithm of both sides
-log10[H⁺] = -log10(Ka) - log10([HA]/[A⁻])
Step 5: Substitute the definitions of pH and pKa
The left side is pH by definition. The first term on the right is pKa by definition. So:
pH = pKa - log10([HA]/[A⁻])
Step 6: Invert the ratio inside the logarithm
Because -log10(x) = log10(1/x):
pH = pKa + log10([A⁻]/[HA])
That is the Henderson-Hasselbalch equation. Nothing was assumed beyond the equilibrium expression and the properties of logarithms.
Deriving the base form
For a weak base B reacting with water:
B + H₂O ⇌ BH⁺ + OH⁻
Kb = [BH⁺][OH⁻] / [B]
Use the water dissociation constant Kw = 1.0 × 10⁻¹⁴ at 25 °C to convert Kb into the Ka of the conjugate acid: Ka(BH⁺) = Kw / Kb. Applying the same logarithm steps to the Ka expression for BH⁺ gives:
pH = pKa + log10([B]/[BH⁺])
The structure is identical. Only the labels change.
Deriving the bicarbonate form
Carbon dioxide dissolves in water, hydrates to carbonic acid, and then dissociates:
CO₂(aq) + H₂O ⇌ H₂CO₃ ⇌ H⁺ + HCO₃⁻
The true pKa of carbonic acid is near 3.6, far from the pH of blood. The hydration step is slow relative to dissociation and the concentration of true H₂CO₃ is tiny. Clinical chemistry therefore uses a composite constant, pK'1, that absorbs the hydration equilibrium, and it expresses the denominator as dissolved CO₂ rather than as H₂CO₃. The dissolved gas concentration equals α × PCO₂ by Henry's law, which produces the familiar clinical form.
That composite constant is the source of most of the analytical uncertainty in bicarbonate reporting. In a study of 50 acutely ill patients, the calculated pK'1 averaged 6.10 with a standard deviation of 0.018 and a range from 6.06 to 6.15 [1]. In dialysis patients the mean pK'1 differed significantly from 6.10, and calculated bicarbonate disagreed with measured total CO₂ even when both assays ran on the same arterial sample [2]. A later study in the same population reported a largest calculated pK'1 of 6.285 and suggested that CO₂ loss during sample handling could account for much of the increase [3]. A separate clinical review argued that variability in pK'1 is large enough that measured total CO₂ should settle conflicts between calculated and measured bicarbonate in acutely ill patients [4].
pKa and pH: The Relationship That Governs Buffering
The difference between pKa and pH is the single most useful number in buffer design. When pH equals pKa, the logarithm term is zero and the acid and conjugate base are present in equal concentrations. This is the half-neutralization point, and it is where the buffer resists pH change most effectively.
Move one pH unit above the pKa and the ratio [A⁻]/[HA] becomes 10:1, meaning about 91 percent of the buffering species sits in the deprotonated form. Move one unit below and the ratio inverts to 1:10. Outside that window the buffer still works, but its capacity collapses because one partner is nearly exhausted.
Buffer capacity has a formal definition. Van Slyke defined buffer value as the quantity of base, in gram equivalents per liter, required to change the pH of one liter of solution by one unit [5]. That quantity is maximal at pH = pKa and falls off symmetrically on either side. Modern treatments express it as the reciprocal slope of the titration curve, d[base]/dpH.
Standard pKa values at 25 °C that cover most laboratory needs:
- Acetic acid, 4.76
- Citric acid, second pKa 4.76 and third pKa 6.40
- MES, 6.10
- PIPES, 6.8
- MOPS, 7.2
- Phosphoric acid, second pKa 7.20
- HEPES, 7.55
- Tris, 8.06
- Bicine, 8.35
- Boric acid, 9.24
- CHES, 9.3
The practical rule that follows is simple: pick a buffer whose pKa sits within one unit of the target pH. A phosphate buffer at pH 7.4 uses the second dissociation (pKa 7.20) and works well. The same phosphate at pH 4.0 would be dominated by the first dissociation (pKa 2.15) and would buffer poorly.
There is a second, subtler point. Two buffers at the same pH are not interchangeable. Dynamic light scattering and nuclear magnetic resonance measurements of bovine serum albumin and lysozyme at pH 7.15 showed that protein motion depended on which buffer ions were present, because buffer ions adsorb to protein surfaces and change the effective surface charge [6]. That observation supports broader doubts about treating the Henderson-Hasselbalch equation as a complete description of a buffered solution.
How to Calculate the pH of a Buffer: Six Worked Examples
The following examples use the standard pKa values listed above. Each one isolates a different habit that students need.
Example 1: Equal concentrations of acid and conjugate base
Mix 0.10 M acetic acid with 0.10 M sodium acetate in equal volumes. After mixing, [A⁻] = [HA] = 0.05 M (each is diluted by a factor of two, so the ratio is unchanged).
pH = 4.76 + log10(0.05/0.05) = 4.76 + 0 = 4.76
The answer equals the pKa. Any equal-concentration buffer sits exactly at its pKa.
Example 2: Unequal concentrations
A buffer contains 0.15 M acetic acid and 0.050 M sodium acetate.
pH = 4.76 + log10(0.050/0.15) = 4.76 + log10(0.333) = 4.76 - 0.477 = 4.28
The buffer is now more acidic than the pKa because the acid form dominates. Note that the same answer would appear if you used moles instead of molarity, because the volume cancels inside the ratio.
Example 3: Mixing a weak acid with strong base
Take 100.0 mL of 0.100 M acetic acid and add 40.0 mL of 0.100 M NaOH. The strong base converts acid to conjugate base quantitatively.
Moles of HA initially = 0.100 L × 0.100 mol/L = 0.0100 mol Moles of OH⁻ added = 0.0400 L × 0.100 mol/L = 0.00400 mol Moles of HA remaining = 0.0100 - 0.00400 = 0.00600 mol Moles of A⁻ formed = 0.00400 mol
pH = 4.76 + log10(0.00400/0.00600) = 4.76 + log10(0.667) = 4.76 - 0.176 = 4.58
This is the most common bench scenario. You do not weigh both partners. You start with the acid and titrate partway to the salt form.
Example 4: A weak base buffer with Tris
Tris base has a pKa of 8.06 at 25 °C. Prepare a buffer containing 0.20 M Tris base and 0.10 M Tris hydrochloride.
pH = 8.06 + log10(0.20/0.10) = 8.06 + 0.301 = 8.36
The numerator is the unprotonated base because that is the species that accepts protons. Reversing the ratio is the most frequent error students make with base buffers.
Example 5: A phosphate buffer near physiological pH
Phosphoric acid has three pKa values. At pH 7.4 the relevant pair is H₂PO₄⁻ (acid) and HPO₄²⁻ (base), with pKa2 = 7.20. Prepare a buffer with 0.050 M KH₂PO₄ and 0.079 M K₂HPO₄.
pH = 7.20 + log10(0.079/0.050) = 7.20 + log10(1.58) = 7.20 + 0.198 = 7.40
This is a realistic recipe. A 1.58-to-1 ratio of dibasic to monobasic phosphate gives a buffer at physiological pH with substantial capacity.
Example 6: The bicarbonate buffer from PCO₂
Use the clinical form with pK'1 = 6.10 and α = 0.0307 mmol/L per mmHg. A arterial sample has PCO₂ = 40 mmHg and [HCO₃⁻] = 24 mmol/L.
Dissolved CO₂ = 0.0307 × 40 = 1.228 mmol/L pH = 6.10 + log10(24/1.228) = 6.10 + log10(19.54) = 6.10 + 1.291 = 7.39
Now raise PCO₂ to 80 mmHg while holding bicarbonate constant, which models acute hypoventilation.
Dissolved CO₂ = 0.0307 × 80 = 2.456 mmol/L pH = 6.10 + log10(24/2.456) = 6.10 + log10(9.77) = 6.10 + 0.990 = 7.09
A doubling of CO₂ without a change in bicarbonate drops pH by about 0.3 units. That is respiratory acidosis in one line of arithmetic.
Buffer pH Calculation in Reverse: Designing a Buffer for a Target pH
Bench work usually runs the equation backward. You know the target pH and the pKa, and you need the ratio.
[A⁻]/[HA] = 10^(pH - pKa)
Design 1: phosphate buffer at pH 7.40. The ratio is 10^(7.40 - 7.20) = 10^0.20 = 1.58. For one liter of 0.10 M total phosphate, let the acid concentration be x and the base concentration be 1.58x. Then x + 1.58x = 0.10, so x = 0.0388 M and the base is 0.0612 M. Weigh the corresponding amounts of KH₂PO₄ and K₂HPO₄, dissolve, and check the pH with a calibrated meter.
Design 2: Tris buffer at pH 7.50. The ratio of base to conjugate acid is 10^(7.50 - 8.06) = 10^-0.56 = 0.276. For 0.10 M total Tris, the base is 0.0216 M and the protonated form is 0.0784 M.
Two practical corrections follow from the derivation. First, dilution does not change the ratio, so a buffer can be diluted several-fold without much pH drift, provided the solution stays concentrated enough for water autoionization to remain negligible. Second, pKa depends on temperature. Tris is the classic offender, and its pKa falls noticeably as temperature rises from 25 °C to 37 °C. A Tris buffer adjusted to pH 7.5 at room temperature will read differently in a 37 °C incubator. Phosphate is far less temperature sensitive.
The Bicarbonate Buffer System in Blood and Clinical Calculations
The bicarbonate system is the most heavily used application of the Henderson-Hasselbalch equation in medicine. Blood gas analyzers measure pH and PCO₂ directly and then compute bicarbonate by rearranging the equation:
[HCO₃⁻] = α × PCO₂ × 10^(pH - pK'1)
Most modern analyzers are programmed with this calculation [7]. The result appears on every arterial blood gas report and drives the classification of metabolic and respiratory disorders. The traditional clinical framework built on this equation sorts acid-base disturbances into four primary categories: respiratory acidosis from raised PCO₂, respiratory alkalosis from lowered PCO₂, metabolic acidosis from reduced bicarbonate or base excess, and metabolic alkalosis from raised bicarbonate [8].
The equation also reaches into sample types far from arterial blood. Urinary bicarbonate can be estimated with the same relationship, and a comparison of two parameter sets (a pK corrected for ionic strength in each sample versus a fixed pK of 6.1) found a correlation of 0.99 between the methods and no significant difference in the calculated values [9]. Gastric bicarbonate secretion has been quantified from intragastric pCO₂ and pH measurements processed through the equation, with recovery of instilled bicarbonate averaging 96.8 percent in validation fluids [10]. In a large cohort of older adults, arterialized venous bicarbonate calculated from the equation was positively associated with bone mineral density and inversely associated with the rate of bone loss [11].
Agreement between calculated and directly measured bicarbonate is imperfect, and the size of the disagreement matters for interpretation. In critically ill patients, the calculated method differed from an enzymatic assay with a bias of -1.6 mmol/L and limits of agreement from -5.85 to 2.65 mmol/L [12]. A later comparison in the same clinical setting reported a bias of 2.1 mmol/L and limits of agreement from -1.8 to 5.9 mmol/L against the enzymatic method [13]. In hemodialysis patients, calculated and biochemically measured bicarbonate correlated at r = 0.73 with a mean difference of 1.15 ± 3 mmol/L, and the median interval between collection and analysis was 241 minutes [14]. In neonates, calculated values exceeded measured total CO₂ by about 1.5 mmol/L, with 94 percent of errors falling between -10 percent and +20 percent and 95 percent agreement within ±3.30 mmol/L once the systematic bias was removed [7].
The interpretive lesson is that the equation is a model, not a measurement. The traditional approach is descriptive rather than mechanistic, and it can give misleading information about the cause of an acid-base disturbance when albumin, total protein, or phosphate concentrations are markedly abnormal [8]. The Stewart-Fencl quantitative approach treats the strong ion difference, the total concentration of weak nonvolatile acids, and PCO₂ as the three independent variables, with pH and bicarbonate as dependent outputs [15]. That framing explains why the same bicarbonate value can arise from different underlying processes.
Other Uses of the Equation in Physiology and Sports Science
The equation travels well beyond the pH meter. Buffer capacity in capillary blood can be estimated from pre-exercise and post-exercise lactate and pH values processed through the Henderson-Hasselbalch relationship, although a reliability study found that the pre-exercise inputs varied enough to make the derived capacity unstable unless constants were substituted [16]. Intramucosal pH computed with arterial bicarbonate rather than mucosal capillary bicarbonate underestimated simulated mucosal pH as PCO₂ rose, with bias exceeding 0.1 pH unit at a PCO₂ of 120 torr [17]. Intracellular bicarbonate in brain tissue has been calculated from measured intracellular pH and sagittal sinus PCO₂ using the same equation [18]. Each of these uses carries the same caveat: the equation returns a value consistent with the inputs and the assumed constants. It does not verify that the assumption is correct.
Common Mistakes and Limitations
- Using the wrong species in the numerator. For an acid buffer, the conjugate base goes on top. For a base buffer, the unprotonated base goes on top. Reversing the ratio flips the sign of the logarithm term and moves the answer to the wrong side of the pKa.
- Using the wrong pKa for a polyprotic acid. Phosphate has pKa values near 2.15, 7.20, and 12.3. Choosing the first value for a pH 7.4 buffer produces a nonsensical result.
- Applying the equation outside the buffer region. When the ratio falls below about 0.1 or rises above about 10, the approximation that the nominal concentrations equal the equilibrium concentrations begins to fail, and buffering is weak. Use the full equilibrium treatment in that regime.
- Ignoring activity coefficients. At high ionic strength the apparent pKa shifts. The equation uses concentrations, and concentrated salt solutions violate that assumption.
- Forgetting that pKa changes with temperature. Tris is the standard cautionary example. Adjust the pH at the temperature where the buffer will be used.
- Treating pK'1 as a universal constant. The clinical constant near 6.1 is an operational value, and measured values deviate from it in dialysis patients and other severely ill groups [2][3]. Discrepancies between calculated and measured bicarbonate are well documented [12][13][4].
- Assuming the calculated value is the measured value. Blood gas bicarbonate is derived, not directly assayed. When the clinical picture and the calculated number disagree, a direct total CO₂ measurement can settle the question [4].
- Mixing units for PCO₂. The solubility coefficient of about 0.03 mmol/L per mmHg only works with PCO₂ in mmHg. If PCO₂ is reported in kPa, the coefficient must change accordingly.
- Believing the equation explains buffering completely. Buffer ions adsorb to protein surfaces and alter protein behavior independently of pH [6]. Two buffers at identical pH can produce different biological results.
- Confusing buffer capacity with buffer pH. A buffer can sit at the right pH and still have almost no capacity if it is extremely dilute or far from its pKa.
Quick Review
- The Henderson-Hasselbalch equation is pH = pKa + log10([A⁻]/[HA]), derived by taking the negative logarithm of the Ka expression.
- pH equals pKa when the acid and conjugate base are present in equal concentrations.
- Buffers work best within one pH unit of their pKa, where the ratio stays between 1:10 and 10:1.
- For a weak base buffer, the unprotonated base sits in the numerator: pH = pKa + log10([B]/[BH⁺]).
- The bicarbonate form uses a composite constant near 6.1 and dissolved CO₂ equal to about 0.03 × PCO₂ in mmHg.
- Dilution leaves the ratio unchanged, so it barely moves the pH of a concentrated buffer.
- The equation is an approximation that ignores activity coefficients and assumes a fixed pKa, and both assumptions fail in concentrated salt solutions and in some critically ill patients.
Frequently Asked Questions
What is the Henderson-Hasselbalch equation in simple terms?
It is a formula that gives the pH of a buffer from the pKa of its weak acid and the ratio of conjugate base to acid. If you know those three quantities, you can predict the pH without a titration curve.
Why does pH equal pKa when the acid and base concentrations are equal?
The logarithm of 1 is zero, so the log term drops out of the equation and leaves pH = pKa. At that point the acid is exactly half-dissociated, and the solution sits at the center of its buffering range.
Can the Henderson-Hasselbalch equation be used for strong acids or outside the buffer region?
No. Strong acids dissociate almost completely, so the assumption that undissociated HA remains in solution fails. The equation also loses accuracy when the conjugate base to acid ratio falls far outside the 1:10 to 10:1 window.
How do I calculate the pH of a buffer after adding strong acid or base?
Convert the added strong acid or base into moles, subtract it from the conjugate base or add it to the weak acid, then recompute the ratio with the new mole values. The volume cancels, so molarity is optional as long as both species are expressed in the same units.
What is the difference between pKa and pH?
pH measures the current hydrogen ion activity of a solution. pKa is a property of the acid itself, the pH at which that acid is half-dissociated. pH changes when you add acid or base, while pKa stays fixed for a given molecule at a given temperature.
Why is the pKa used for blood bicarbonate about 6.1 rather than the true carbonic acid pKa?
The value near 6.1 is an apparent constant that combines CO₂ hydration with carbonic acid dissociation and uses dissolved CO₂ as the denominator. The true pKa of carbonic acid is near 3.6, which is far from physiological pH and would not describe the blood buffer.
Sources
- The reliability of calculated bicarbonate in clinical practice.
- The pK'1 of the carbonic acid-bicarbonate buffer system in hemodialyzed patients.
- Acid-base regulation in hemodialyzed renal failure patients: effect of serum proteins and bicarbonate buffering.
- Indications for measurement of total carbon dioxide in arterial blood.
- An estimation of buffer values of human whole blood by titration experiment under the open condition for carbon dioxide gas.
- Specific Buffer Effects on the Intermolecular Interactions among Protein Molecules at Physiological pH.
- Determination of plasma bicarbonate of neonates in intensive care.
- Clinical assessment of acid-base status: comparison of the Henderson-Hasselbalch and strong ion approaches.
- Determination of urinary bicarbonate with the Henderson-Hasselbalch equation. Comparison using two different methods.
- [[Determination of gastric bicarbonate secretion in the human without acid suppression].](https://pubmed.ncbi.nlm.nih.gov/2514498/)
- Arterialized venous bicarbonate is associated with lower bone mineral density and an increased rate of bone loss in older men and women.
- Agreement between two plasma bicarbonate assays in critically ill patients.
- Comparison of three methods to estimate plasma bicarbonate in critically ill patients: Henderson-Hasselbalch, enzymatic, and strong-ion-gap.
- Concordance analysis between dosed serum bicarbonate and that calculated by gas analysis in chronic renal patients.
- [[Clinical evaluation of acid-base status: Henderson-Hasselbalch, or Stewart-Fencl approach?].](https://pubmed.ncbi.nlm.nih.gov/27990831/)
- Reliability of a non-invasive method to calculate buffer capacity after exhaustive cycling exercise of 20 s to 12 min: a pilot study.
- Accuracy of intramucosal pH calculated from arterial bicarbonate and the Henderson-Hasselbalch equation: assessment using simulated ischemia.
- Bicarbonate conservation during incomplete cerebral ischemia with superimposed hypercapnia.