Buffers Resist pH Change

A single drop of 1 M HCl added to a liter of pure water crashes the pH from 7.0 to nearly 4.0. Add that same drop to a liter of blood plasma, and the pH barely moves, from 7.40 to about 7.395. This near-total immunity to acid or base insult is not an accident of biology. It is a direct chemical consequence of having a weak acid and its conjugate base sitting together in solution. Together they absorb protons on one side of an equilibrium and release them on the other. Understanding why this works, and precisely how well it works, is the subject of this article. Buffering matters because life's catalysts are exquisitely pH-sensitive. Enzyme active sites depend on specific protonation states of histidine imidazoles, aspartate carboxylates, and cysteine thiols. A shift of even 0.3 pH units can silence a catalytic triad or unfold a protein domain. Metabolism itself is relentlessly acid-generating. Glycolysis produces lactate, respiration produces carbonic acid, fat oxidation produces ketoacids. Yet cytosolic and extracellular pH are held within remarkably narrow bounds. The chemistry that makes this possible is the same chemistry used at the bench. Every time a biochemist prepares a Tris or phosphate buffer to keep a purified enzyme happy, the same principles apply. The big picture is this: a buffer is a reservoir of conjugate acid-base pairs (HA and A⁻) present in comparable amounts. When strong acid is added, A⁻ mops it up by converting to HA. When strong base is added, HA neutralizes it by converting to A⁻. Because both processes consume only a small fraction of the total buffer pool, the ratio [A⁻]/[HA] changes only modestly. Therefore the pH, via the Henderson-Hasselbalch Equation, changes only modestly too. This resistance is quantified by a number called the buffer capacity, β. It is maximal exactly at pH = pKa and falls off sharply more than one pH unit away. This article builds the mechanism from the acid-base equilibrium up. It derives buffer capacity as a formal derivative. It shows why the useful buffering range is pKa ± 1. It also works through three complete numerical examples. These are a classic acetate buffer, a phosphate buffer prepared by a biochemist at the bench, and a multi-step problem tracking capacity loss upon acid addition. It closes by connecting this chemistry to the physiological systems that keep you alive: blood, cytosol, and mitochondrial matrix.

Key takeaways
  • A buffer pairs a weak acid HA with its conjugate base A⁻; both must be present in significant amounts.
  • Added H⁺ reacts with A⁻; added OH⁻ reacts with HA — the ratio of the pair shifts, not its total amount.
  • Buffer capacity β = dCb/dpH (or −dCa/dpH) measures moles of strong base (or acid) needed per liter per pH unit change.
  • β is maximized exactly at pH = pKa, where [HA] = [A⁻], and falls by roughly threefold at pH = pKa ± 1.
  • The usable buffering range is conventionally pKa ± 1, where the ratio [A⁻]/[HA] stays between 1:10 and 10:1.
  • Total buffer concentration Ctotal scales β linearly — more buffer means more resistance, at fixed pH and pKa.
  • Key idea: Buffering works because a reservoir of both proton-donor and proton-acceptor species converts an incoming strong acid or base into a small shift in a conjugate-pair ratio, not a shift in free [H⁺] itself — and this conversion is most efficient when the reservoir is split evenly, i.e. at pH = pKa.

Where this lives today

Every enzyme purification, every cell-culture medium, and every crystallography experiment depends on buffer selection guided directly by the pKa ± 1 rule derived here. Molecular biologists choose Tris (pKa ≈ 8.1 at 25 °C) for near-neutral to mildly basic work, phosphate buffer for pH 6–8 biochemical assays, and citrate or acetate buffers for the pH 3–6 range used in some enzyme kinetics and food chemistry applications; the choice is dictated entirely by matching pKa to the experimental pH, because the buffer capacity math shown above guarantees that a mismatched buffer will fail exactly when it's needed most — during an unexpected pH excursion mid-experiment. Pharmaceutical formulation leans on the same principle: injectable drugs and eye drops are buffered near physiological pH (often with phosphate or citrate systems) both for patient comfort and for chemical stability of the active ingredient, since many drugs degrade via pH-dependent hydrolysis or oxidation. Buffer capacity calculations directly inform how much buffering agent must be included in a formulation to survive the pH-shifting metabolic or storage conditions it will encounter. In physiology, the concepts developed here are the entry point to understanding the body's own multi-buffer defense system, the bicarbonate buffer in blood plasma (working in the open system described above), the phosphate buffer in the cytosol and renal tubules, and the histidine-rich protein buffering (including hemoglobin) that absorbs much of the proton load generated by aerobic and anaerobic metabolism. Clinically, acid-base disorders such as metabolic acidosis or respiratory alkalosis are diagnosed and managed using exactly this buffer-capacity reasoning — anesthesiologists and intensivists compute base excess and anion gaps using Henderson–Hasselbalch-derived relationships extended to these physiological systems. Industrial biotechnology, including large-scale fermentation and monoclonal antibody production, likewise depends on buffered feed media to keep bioreactor pH within the narrow window that maximizes cell viability and product yield — a direct, large-scale echo of the beaker-scale chemistry derived in this article.

Ask the tutor: How does an open respiratory system let the bicarbonate buffer protect blood pH so much more effectively than its pKa alone would predict?

The physical picture — how a buffer absorbs a proton

Picture a beaker containing acetic acid and sodium acetate in comparable concentrations, say 0.10 M each. In solution these species sit at chemical equilibrium:

CH3COOH⇌CH3COO−+H+\text{CH}_3\text{COOH} \rightleftharpoons \text{CH}_3\text{COO}^- + \text{H}^+

with an equilibrium constant Ka=1.8×10−5K_a = 1.8 \times 10^{-5} (pKa = 4.74). At equilibrium, tiny fluxes of protons are constantly hopping on and off acetate — the forward and reverse reaction rates are equal, not zero. This dynamic equilibrium is the buffer's working machinery. Now inject a small pulse of strong acid, say HCl. Free H⁺ ions do not stay free for long: they are captured almost quantitatively by the base component,

H++CH3COO−⟶CH3COOH\text{H}^+ + \text{CH}_3\text{COO}^- \longrightarrow \text{CH}_3\text{COOH}

This reaction runs essentially to completion because acetic acid's Ka is small — acetate is a fairly strong proton acceptor relative to water. The net effect: some A⁻ converts to HA, [H⁺] barely rises because almost all of the incoming acid gets consumed by this reaction rather than accumulating as free hydronium. Symmetrically, added strong base (OH⁻) reacts with HA,

OH−+CH3COOH⟶CH3COO−+H2O\text{OH}^- + \text{CH}_3\text{COOH} \longrightarrow \text{CH}_3\text{COO}^- + \text{H}_2\text{O}

converting HA to A⁻ and consuming the hydroxide before it can raise the pH appreciably. In both cases, the total buffer concentration Ctotal=[HA]+[A−]C_{\text{total}} = [\text{HA}] + [\text{A}^-] stays fixed (mass balance — no acetate is created or destroyed, only interconverted), while the ratio [A⁻]/[HA] shifts. Because pH depends only logarithmically on that ratio (Henderson–Hasselbalch), a modest ratio shift produces only a modest pH shift.

Figure
Proton buffering: added acid is absorbed by the conjugate base reservoir
Buffer response to added strong acid Before: pH = 4.74 (= pKa) [A⁻] = 0.10 M [HA] = 0.10 M + 0.02 mol H⁺ After: pH = 4.57 [A⁻] = 0.08 M [HA] = 0.12 M Reaction consumed: H⁺ + A⁻ → HA ΔpH = 4.57 − 4.74 = −0.17 (compare: same acid in pure water gives ΔpH ≈ −5) Total buffer conserved: 0.10+0.10 = 0.08+0.12 = 0.20 M

The magnitude of resistance is not infinite, and it is not uniform across pH. It depends on how much buffer is present and on how close the pH sits to the pKa. A quantity called buffer capacity captures both dependencies in a single number.

Figure
Buffer capacity β versus pH: a peak centered on pKa
β(pH) for 0.10 M total acetate buffer (pKa = 4.74) pH β (mol L⁻¹ per pH unit) 2.7 3.7 4.74 5.7 6.7 peak: β_max = 0.0576 at pH=pKa useful range: pKa ± 1

The core ideas

The starting point is the equilibrium expression for a monoprotic weak acid,

Ka=[H+][A−][HA]K_a = \frac{[\text{H}^+][\text{A}^-]}{[\text{HA}]}

where: KaK_a is the acid dissociation constant, [H+][\text{H}^+] is free hydronium concentration, and [HA][\text{HA}], [A−][\text{A}^-] are the protonated and deprotonated forms of the buffer species. Taking −log⁡10-\log_{10} of both sides and rearranging gives the Henderson–Hasselbalch relation,

pH=pKa+log⁡10 ⁣([A−][HA])\text{pH} = \text{p}K_a + \log_{10}\!\left(\frac{[\text{A}^-]}{[\text{HA}]}\right)

where: pKa =−log⁡10Ka= -\log_{10} K_a, and the log term vanishes (pH = pKa) exactly when [A⁻] = [HA].

Reading: this equation is the algebraic skeleton of buffering — it says pH tracks the logarithm of a ratio of concentrations, not the concentrations themselves. Because log is a slowly varying, compressive function, large fractional changes in the ratio produce only modest changes in pH. That compression is the qualitative reason buffers work; the quantitative measure of how well they work is buffer capacity, defined as

β≡dCbd(pH)=−dCad(pH)\beta \equiv \frac{dC_b}{d(\text{pH})} = -\frac{dC_a}{d(\text{pH})}

where: CbC_b is moles per liter of strong base added, CaC_a is moles per liter of strong acid added, and β\beta (units mol L⁻¹ per pH unit) is the buffer capacity — literally the slope of the titration curve, inverted (how much titrant it takes to move the pH by one unit). For a single weak acid/conjugate base system at total concentration Ctotal=[HA]+[A−]C_{\text{total}} = [\text{HA}]+[\text{A}^-], the closed-form result (derived below) is

β=2.303 Ctotal(Ka[H+](Ka+[H+])2)+2.303([H+]+[OH−])\beta = 2.303 \, C_{\text{total}} \left(\frac{K_a [\text{H}^+]}{(K_a+[\text{H}^+])^2}\right) + 2.303\big([\text{H}^+]+[\text{OH}^-]\big)

where: the first term is the contribution of the buffer pair itself, and the second term is the (usually negligible, except at extreme pH) contribution from water's own autoionization providing free H⁺ or OH⁻.

Derivation ABuffer capacity from the acid-base equilibrium and mass balance

Goal: derive an explicit formula for β = dCb/d(pH) for a monoprotic buffer, and show it peaks at pH = pKa.

Step 1 — Set up the charge and mass balances. Let Ctotal=[HA]+[A−]C_{\text{total}} = [\text{HA}] + [\text{A}^-] be fixed by how much buffer was weighed out. Define α=[A−]/Ctotal\alpha = [\text{A}^-]/C_{\text{total}}, the fraction deprotonated, so [A−]=αCtotal[\text{A}^-] = \alpha C_{\text{total}} and [HA]=(1−α)Ctotal[\text{HA}] = (1-\alpha)C_{\text{total}}. From the Ka expression,

Ka=[H+] αCtotal(1−α)Ctotal=[H+] α1−αK_a = \frac{[\text{H}^+]\,\alpha C_{\text{total}}}{(1-\alpha)C_{\text{total}}} = \frac{[\text{H}^+]\,\alpha}{1-\alpha}

Solve for α as a function of [H⁺]:

α=KaKa+[H+]\alpha = \frac{K_a}{K_a + [\text{H}^+]}

Step 2 — Relate α to added strong base. Suppose we start with all buffer in the HA form and add CbC_b moles/L of strong base (e.g., NaOH). Each mole of OH⁻ converts one mole of HA to A⁻ (Step reaction: OH⁻ + HA → A⁻ + H₂O, essentially quantitative since it is proton transfer from a weak acid to a much stronger base, hydroxide). A full proton balance also lets a bit of A⁻ arise or HA reform from water autoionization, but away from extreme pH this correction is negligible, so to leading order

Cb≈α CtotalC_b \approx \alpha \, C_{\text{total}}

Step 3 — Differentiate α with respect to pH. Since [H+]=10−pH[\text{H}^+] = 10^{-\text{pH}}, we need dα/d(pH)d\alpha/d(\text{pH}). Write α=Ka/(Ka+[H+])\alpha = K_a/(K_a+[\text{H}^+]) and use the chain rule:

dαd[H+]=−Ka(Ka+[H+])2\frac{d\alpha}{d[\text{H}^+]} = -\frac{K_a}{(K_a+[\text{H}^+])^2}

and

d[H+]d(pH)=dd(pH)(10−pH)=−ln⁡(10)⋅10−pH=−2.303 [H+]\frac{d[\text{H}^+]}{d(\text{pH})} = \frac{d}{d(\text{pH})}\left(10^{-\text{pH}}\right) = -\ln(10)\cdot 10^{-\text{pH}} = -2.303\,[\text{H}^+]

Multiplying these two derivatives (chain rule) cancels the two minus signs:

dαd(pH)=(−Ka(Ka+[H+])2)×(−2.303 [H+])=2.303 Ka[H+](Ka+[H+])2\frac{d\alpha}{d(\text{pH})} = \left(-\frac{K_a}{(K_a+[\text{H}^+])^2}\right)\times\left(-2.303\,[\text{H}^+]\right) = \frac{2.303\,K_a[\text{H}^+]}{(K_a+[\text{H}^+])^2}

Step 4 — Assemble β. Since Cb=αCtotalC_b = \alpha C_{\text{total}} (Step 2) and CtotalC_{\text{total}} is constant with respect to pH,

βbuffer=dCbd(pH)=Ctotal⋅dαd(pH)=2.303 Ctotal Ka[H+](Ka+[H+])2\beta_{\text{buffer}} = \frac{dC_b}{d(\text{pH})} = C_{\text{total}}\cdot\frac{d\alpha}{d(\text{pH})} = 2.303\,C_{\text{total}}\,\frac{K_a[\text{H}^+]}{(K_a+[\text{H}^+])^2}

Adding back the always-present water contribution (from [H+][\text{H}^+] and [OH−][\text{OH}^-] themselves shifting, relevant only near pH 0 or pH 14) gives the full expression stated above. This confirms the formula.

Step 5 — Locate the maximum. Treat βbuffer\beta_{\text{buffer}} as a function of x≡[H+]x \equiv [\text{H}^+] with KaK_a fixed:

f(x)=Kax(Ka+x)2f(x) = \frac{K_a x}{(K_a+x)^2}

Differentiate using the quotient rule and set the numerator to zero:

f′(x)=Ka(Ka+x)2−Kax⋅2(Ka+x)(Ka+x)4=Ka(Ka+x)[(Ka+x)−2x](Ka+x)4f'(x) = \frac{K_a(K_a+x)^2 - K_a x \cdot 2(K_a+x)}{(K_a+x)^4} = \frac{K_a(K_a+x)\big[(K_a+x)-2x\big]}{(K_a+x)^4}

Since Ka+x≠0K_a + x \ne 0, the bracket must vanish:

Ka+x−2x=0    ⇒    x=Ka    ⇒    [H+]=Ka    ⇒    pH=pKaK_a + x - 2x = 0 \;\;\Rightarrow\;\; x = K_a \;\;\Rightarrow\;\; [\text{H}^+] = K_a \;\;\Rightarrow\;\; \text{pH} = \text{p}K_a

So buffer capacity is maximized exactly when pH = pKa, i.e., when [HA] = [A⁻]. Substituting x=Kax = K_a back:

βmax⁡=2.303 Ctotal⋅Ka⋅Ka(2Ka)2=2.303 Ctotal⋅14=2.3034 Ctotal≈0.576 Ctotal\beta_{\max} = 2.303\,C_{\text{total}}\cdot\frac{K_a\cdot K_a}{(2K_a)^2} = 2.303\,C_{\text{total}}\cdot\frac{1}{4} = \frac{2.303}{4}\,C_{\text{total}} \approx 0.576\,C_{\text{total}}

Limiting-case check: as pH moves far from pKa in either direction (say [H⁺] ≫ Ka or [H⁺] ≪ Ka), the denominator (Ka+[H+])2(K_a+[\text{H}^+])^2 grows much faster than the numerator Ka[H+]K_a[\text{H}^+], so β → 0 (aside from the residual water term). This matches intuition: far from pKa, the buffer pair is almost entirely in one form, and there is little of the minority species left to absorb titrant.

Go deeper · Derivation B · 1 minWhy the useful buffering range is conventionally pKa ± 1
Derivation BWhy the useful buffering range is conventionally pKa ± 1

Goal: show quantitatively that buffer capacity has fallen substantially by one pH unit away from pKa, justifying the "pKa ± 1" rule of thumb used when choosing a buffer.

Step 1 — Express β relative to its maximum. From the closed form above (ignoring the small water term away from extreme pH),

β(pH)βmax⁡=2.303 Ctotal Ka[H+]/(Ka+[H+])22.303 Ctotal/4=4Ka[H+](Ka+[H+])2\frac{\beta(\text{pH})}{\beta_{\max}} = \frac{2.303\,C_{\text{total}}\,K_a[\text{H}^+]/(K_a+[\text{H}^+])^2}{2.303\,C_{\text{total}}/4} = \frac{4K_a[\text{H}^+]}{(K_a+[\text{H}^+])^2}

Step 2 — Substitute pH = pKa + δ, where δ is the pH offset from pKa. Since [H+]=Ka⋅10−δ[\text{H}^+] = K_a \cdot 10^{-\delta} (because pH = pKa − log[H⁺]/Ka rearranges this way), let r=[H+]/Ka=10−δr = [\text{H}^+]/K_a = 10^{-\delta}. Then

β(δ)βmax⁡=4r(1+r)2\frac{\beta(\delta)}{\beta_{\max}} = \frac{4r}{(1+r)^2}

Step 3 — Evaluate at δ = 1 (one pH unit away), so r = 10⁻¹ = 0.1.

β(δ=1)βmax⁡=4(0.1)(1+0.1)2=0.41.21=0.331\frac{\beta(\delta{=}1)}{\beta_{\max}} = \frac{4(0.1)}{(1+0.1)^2} = \frac{0.4}{1.21} = 0.331

So at one full pH unit away from pKa, buffer capacity has already dropped to about 33% of its peak value — a threefold reduction.

Step 4 — Evaluate at δ = 2 (two pH units away), so r = 0.01.

β(δ=2)βmax⁡=4(0.01)(1.01)2=0.041.0201=0.0392\frac{\beta(\delta{=}2)}{\beta_{\max}} = \frac{4(0.01)}{(1.01)^2} = \frac{0.04}{1.0201} = 0.0392

Capacity has collapsed to under 4% of its peak — the buffer is essentially useless there. This is why biochemists restrict a buffer's working range to pKa ± 1: within that window capacity stays above roughly one-third of maximum, but venture further and the reservoir of the minority species is too depleted to neutralize meaningful titrant.

Limiting-case check: at δ = 0 (pH = pKa exactly), r=1r=1 and β/βmax⁡=4(1)/(1+1)2=4/4=1\beta/\beta_{\max} = 4(1)/(1+1)^2 = 4/4 = 1, recovering the defined maximum — consistent by construction.

Worked examples

Example 1 — Foundational: acetate buffer response to a small acid pulse. A buffer is prepared with 0.10 M acetic acid and 0.10 M sodium acetate (pKa = 4.74, so Ka=1.8×10−5K_a = 1.8\times10^{-5}). To 1.00 L of this buffer, 0.020 mol of HCl is added (assume negligible volume change). Find the new pH and compare to what pure water would do. Step 1 — initial state. Since [HA] = [A⁻] = 0.10 M, Henderson–Hasselbalch gives

pHinitial=4.74+log⁡10(0.10/0.10)=4.74+0=4.74\text{pH}_{\text{initial}} = 4.74 + \log_{10}(0.10/0.10) = 4.74 + 0 = 4.74

Step 2 — reaction with added acid. HCl reacts stoichiometrically: H⁺ + CH₃COO⁻ → CH₃COOH. Starting amounts (in a 1 L system): 0.10 mol HA, 0.10 mol A⁻. Adding 0.020 mol H⁺ converts 0.020 mol of A⁻ into HA:

[A−]new=0.10−0.020=0.080 M,[HA]new=0.10+0.020=0.120 M[\text{A}^-]_{\text{new}} = 0.10 - 0.020 = 0.080\ \text{M}, \qquad [\text{HA}]_{\text{new}} = 0.10 + 0.020 = 0.120\ \text{M}

Step 3 — new pH.

pHnew=4.74+log⁡10 ⁣(0.0800.120)=4.74+log⁡10(0.667)=4.74−0.176=4.56\text{pH}_{\text{new}} = 4.74 + \log_{10}\!\left(\frac{0.080}{0.120}\right) = 4.74 + \log_{10}(0.667) = 4.74 - 0.176 = 4.56

So ΔpH = 4.56 − 4.74 = −0.18 pH units for 0.020 mol/L of strong acid. Step 4 — compare to pure water. Adding 0.020 mol HCl to 1 L of pure water gives (assuming full dissociation, ignoring water's own tiny autoionization) [H+]≈0.020[\text{H}^+] \approx 0.020 M, so pH ≈ −log⁡10(0.020)=1.70-\log_{10}(0.020) = 1.70. That is a drop from 7.00 to 1.70 — over five pH units — compared to the buffer's 0.18-unit shift. The buffer is roughly 30-fold more resistant under these conditions. Step 5 — cross-check with the β formula. Predicted β at pH = pKa for Ctotal=0.20C_{\text{total}} = 0.20 M is βmax⁡=0.576×0.20=0.115\beta_{\max} = 0.576 \times 0.20 = 0.115 mol L⁻¹ per pH unit. A rough linear estimate of ΔpH for adding 0.020 mol/L of acid is

ΔpH≈−0.0200.115=−0.174\Delta \text{pH} \approx -\frac{0.020}{0.115} = -0.174

This matches the exact Henderson–Hasselbalch calculation (−0.18) closely — the small discrepancy arises because β is a local derivative and the true ratio shift is finite, not infinitesimal, but the agreement confirms both formulas are self-consistent.

Example 2 — Applied: designing a phosphate buffer at the bench. A biochemist needs 500 mL of 0.15 M phosphate buffer at pH 7.40 for an enzyme assay, using the H2PO4−/HPO42−\text{H}_2\text{PO}_4^-/\text{HPO}_4^{2-} pair (pKa₂ = 7.21 for phosphoric acid's second ionization). How many grams of NaH₂PO₄ (MW 120.0 g/mol) and Na₂HPO₄ (MW 142.0 g/mol) are needed? Step 1 — required ratio from Henderson–Hasselbalch.

7.40=7.21+log⁡10 ⁣([HPO42−][H2PO4−])7.40 = 7.21 + \log_{10}\!\left(\frac{[\text{HPO}_4^{2-}]}{[\text{H}_2\text{PO}_4^-]}\right)
log⁡10 ⁣([HPO42−][H2PO4−])=7.40−7.21=0.19\log_{10}\!\left(\frac{[\text{HPO}_4^{2-}]}{[\text{H}_2\text{PO}_4^-]}\right) = 7.40 - 7.21 = 0.19
[HPO42−][H2PO4−]=100.19=1.549\frac{[\text{HPO}_4^{2-}]}{[\text{H}_2\text{PO}_4^-]} = 10^{0.19} = 1.549

Step 2 — solve for individual concentrations given total 0.15 M. Let [H2PO4−]=x[\text{H}_2\text{PO}_4^-] = x, so [HPO42−]=1.549x[\text{HPO}_4^{2-}] = 1.549x, and x+1.549x=0.15x + 1.549x = 0.15:

x=0.152.549=0.0588 M(H2PO4−),1.549x=0.0912 M(HPO42−)x = \frac{0.15}{2.549} = 0.0588\ \text{M} \quad (\text{H}_2\text{PO}_4^-), \qquad 1.549x = 0.0912\ \text{M} \quad (\text{HPO}_4^{2-})

Step 3 — convert to moles for 0.500 L.

n(H2PO4−)=0.0588×0.500=0.0294 mol,n(HPO42−)=0.0912×0.500=0.0456 moln(\text{H}_2\text{PO}_4^-) = 0.0588 \times 0.500 = 0.0294\ \text{mol}, \qquad n(\text{HPO}_4^{2-}) = 0.0912\times0.500 = 0.0456\ \text{mol}

Step 4 — convert to mass.

m(NaH2PO4)=0.0294 mol×120.0 g/mol=3.53 gm(\text{NaH}_2\text{PO}_4) = 0.0294\ \text{mol}\times 120.0\ \text{g/mol} = 3.53\ \text{g}
m(Na2HPO4)=0.0456 mol×142.0 g/mol=6.48 gm(\text{Na}_2\text{HPO}_4) = 0.0456\ \text{mol}\times142.0\ \text{g/mol} = 6.48\ \text{g}

Step 5 — sanity check via capacity. This buffer sits 0.19 pH units above its pKa (well inside pKa ± 1), so it retains strong capacity: using r=10−0.19=0.6457r = 10^{-0.19} = 0.6457,

ββmax⁡=4(0.6457)(1.6457)2=2.5832.708=0.954\frac{\beta}{\beta_{\max}} = \frac{4(0.6457)}{(1.6457)^2} = \frac{2.583}{2.708} = 0.954

95% of maximal capacity — an excellent working buffer for an assay that might generate or consume small amounts of acid during the reaction.

Example 3 — Exam-level: tracking capacity loss as titrant is added stepwise. A 0.050 L buffer contains 0.30 M total imidazole buffer (pKa = 7.00) at pH 7.00 exactly. Strong base (NaOH, no volume change assumed) is added in two successive 0.0020 mol portions. (a) Find the pH after each addition. (b) Compute the instantaneous buffer capacity β at the starting point and use it to estimate the first ΔpH, then compare to the exact result. Step 1 — initial composition. At pH = pKa, [HA] = [A⁻] = 0.15 M (half of 0.30 M total), each present as n=0.15×0.050=0.00750n = 0.15 \times 0.050 = 0.00750 mol. Step 2 — after first 0.0020 mol NaOH. OH⁻ converts HA → A⁻ one-for-one:

n(HA)=0.00750−0.0020=0.00550 mol,n(A−)=0.00750+0.0020=0.00950 moln(\text{HA}) = 0.00750 - 0.0020 = 0.00550\ \text{mol}, \qquad n(\text{A}^-) = 0.00750+0.0020 = 0.00950\ \text{mol}
pH1=7.00+log⁡10 ⁣(0.009500.00550)=7.00+log⁡10(1.727)=7.00+0.2374=7.237\text{pH}_1 = 7.00 + \log_{10}\!\left(\frac{0.00950}{0.00550}\right) = 7.00 + \log_{10}(1.727) = 7.00+0.2374 = 7.237

Step 3 — estimate using β at the starting point. Total concentration Ctotal=0.30C_{\text{total}} = 0.30 M, so

βmax⁡=0.576×0.30=0.173 mol L−1 per pH unit\beta_{\max} = 0.576 \times 0.30 = 0.173\ \text{mol L}^{-1}\text{ per pH unit}

Added base concentration: ΔCb=0.0020 mol/0.050 L=0.040\Delta C_b = 0.0020\ \text{mol}/0.050\ \text{L} = 0.040 M. Linear estimate:

ΔpH≈0.0400.173=0.231\Delta\text{pH} \approx \frac{0.040}{0.173} = 0.231

This is close to the exact value of 0.237 — the small difference (about 2.5%) reflects the curvature of the titration curve (β itself decreases slightly as pH moves away from pKa during the step), which the linear estimate ignores. Step 4 — after second 0.0020 mol NaOH (cumulative 0.0040 mol added).

n(HA)=0.00750−0.0040=0.00350 mol,n(A−)=0.00750+0.0040=0.01150 moln(\text{HA}) = 0.00750-0.0040 = 0.00350\ \text{mol}, \qquad n(\text{A}^-) = 0.00750+0.0040=0.01150\ \text{mol}
pH2=7.00+log⁡10 ⁣(0.011500.00350)=7.00+log⁡10(3.286)=7.00+0.5166=7.517\text{pH}_2 = 7.00+\log_{10}\!\left(\frac{0.01150}{0.00350}\right) = 7.00+\log_{10}(3.286)=7.00+0.5166=7.517

Step 5 — capacity comparison. The first 0.0020 mol addition moved the pH by 0.237 units; the second identical 0.0020 mol addition moved it by an additional 7.517 − 7.237 = 0.280 units — a larger jump for the same amount of titrant, because the system has moved further from pKa (buffer capacity has decreased, exactly as the β(δ) formula predicts: at δ ≈ 0.24 the ratio β/βmax is already below 1, and it continues falling as titration proceeds). This stepwise erosion of capacity is precisely why a buffer eventually "breaks" — a single large excess of titrant can swing pH by many units once the minority species is nearly exhausted, which is the same phenomenon seen in the steep vertical region of a Titration Curves of Weak Acids plot beyond the buffering plateau.

Limiting cases, scope & common traps

RegimeBehavior of βPractical consequence
pH = pKa exactlyβ = βmax = 0.576·CtotalBest possible buffering; always choose pKa closest to target pH
pH = pKa ± 1β ≈ 0.33·βmaxConventional edge of "usable" buffer range
pH = pKa ± 2β ≈ 0.04·βmaxBuffer effectively exhausted; treat as unbuffered
pH ≪ pKa₁ or pH ≫ pKa (last ionization)β dominated by [H⁺] or [OH⁻] term aloneStrong acid/base solutions "self-buffer" via water autoionization only
Ctotal → 0β → 0 at all pHDilute buffers offer negligible protection — capacity is directly proportional to concentration
Ctotal doubled at fixed pH = pKaβmax doublesDoubling buffer concentration doubles capacity — a linear, not logarithmic, scaling

The chemist behind it

Lawrence Joseph Henderson was a physiologist and biochemist at Harvard whose 1908 paper on the equilibrium between carbonic acid, bicarbonate, and blood established the physiological reasoning behind buffering: he recognized that a mixture of a weak acid and its salt resists pH change because the ratio of the two forms, not their absolute amounts, governs proton availability. Henderson framed this in terms of mass-action equilibrium applied to blood chemistry, motivated by respiratory physiology rather than pure chemistry — he wanted to understand how the body tolerates the CO₂ load of metabolism without catastrophic pH swings. Karl Albert Hasselbalch, a Danish biochemist working on blood gas chemistry, took Henderson's equilibrium expression and recast it in logarithmic form in 1916, introducing the now-familiar pH = pKa + log([A⁻]/[HA]) notation that could be read directly off pH meters and used practically at the lab bench. Their combined equation bridges rigorous chemical equilibrium and the practical, everyday task of preparing and reasoning about buffers — a bridge that remains the working tool of every biochemistry laboratory today.

Origins · 1 minLawrence Joseph Henderson and how this was discovered
LJ
Lawrence Joseph Henderson
1878–1942 · Harvard physiologist and biochemist, pioneer of blood buffer chemistry and systems physiology

Henderson trained as a physician but redirected his career toward physical chemistry applied to physiology, becoming one of the first to treat the blood as a rigorously analyzable chemical system rather than a biological black box. His 1908 analysis of the carbonic acid–bicarbonate equilibrium in blood, and his later 1928 book Blood: A Study in General Physiology, established that living systems could be understood through the same mass-action and equilibrium reasoning used in inorganic chemistry — a viewpoint that helped found modern physiological chemistry and, more broadly, systems thinking in biology.

History
- 1908 — Henderson analyzes the CO₂/bicarbonate/carbonic-acid equilibrium in blood and derives the mass-action relationship behind buffering.
- 1909 — Sørensen introduces the pH scale, giving buffer chemists a compact logarithmic measure of acidity to pair with Henderson's equilibrium.
- 1916 — Hasselbalch recasts Henderson's equation in logarithmic form, yielding the Henderson–Hasselbalch equation used today.
- 1922 — Van Slyke formalizes the quantitative concept of buffer capacity (buffer value), enabling systematic comparison of buffering systems.
- 1966 — Good and colleagues introduce a family of synthetic "Good's buffers" (e.g., HEPES, MOPS, Tris) engineered with pKa values spanning physiological pH, designed specifically to minimize side reactions with biological metal ions and membranes.
Why is the buffer capacity formula 2.303 × Ctotal × (something), rather than just Ctotal?

The factor of 2.303 = ln(10) arises purely from converting between natural and base-10 logarithms during the differentiation of pH = −log₁₀[H⁺]. Buffer capacity is defined as a derivative with respect to pH (a base-10 log quantity), but the underlying chemistry (mass action, exponential relationships) is naturally expressed with natural logarithms. When you differentiate [H⁺] = 10⁻ᵖᴴ, the chain rule introduces exactly this ln(10) factor. It is not an empirical correction — it is a direct mathematical consequence of choosing a log-base-10 pH scale, and it appears in every buffer capacity formula derived from first principles.

Does a buffer's capacity depend on which specific weak acid/base pair is used, apart from its pKa and concentration?

To leading order, no — the formula β = 2.303·Ctotal·Ka[H⁺]/(Ka+[H⁺])² depends only on total concentration and pKa (through Ka), not on any other structural feature of the specific molecule. Two different buffers with the same pKa and same total concentration have essentially identical capacity curves. Differences arise only in secondary effects: some buffers (like Tris) have significant temperature-dependent pKa shifts, some interact with metal ions or membranes (a key reason "Good's buffers" like HEPES were designed), and some participate in side reactions that consume buffer capacity chemically rather than just via proton transfer. The core buffering math, however, is universal.

Can a buffer ever have more than one region of high capacity?

Yes — polyprotic acids like phosphoric acid (three ionizable protons, pKa₁ ≈ 2.15, pKa₂ ≈ 7.21, pKa₃ ≈ 12.32) produce a buffer capacity curve with multiple peaks, one centered near each pKa, provided the pKa values are well separated (more than about 2–3 units apart) so the peaks don't merge. This is why phosphate buffer is useful both around pH 2 (using the H₃PO₄/H₂PO₄⁻ pair) and around pH 7.2 (using the H₂PO₄⁻/HPO₄²⁻ pair) — two entirely different buffering systems living in the same molecule.

Why is the pKa ± 1 rule only a convention, and not an exact chemical law?

The number "1" in pKa ± 1 is a practical threshold, not a fundamental constant — it corresponds to accepting capacity that has fallen to about a third of its peak (as derived from β(δ)/βmax = 4r/(1+r)² at δ = 1). A more demanding application might insist on staying within pKa ± 0.5 (where capacity is still about 69% of maximum), while a less demanding one might tolerate pKa ± 1.5 (about 15% of maximum). The underlying physics is the continuous curve β(pH); "pKa ± 1" is simply a widely-adopted, convenient rule of thumb for where that curve has decayed enough to be considered impractical for most laboratory purposes.

How does an open system like respiration change this closed-system math?

Everything derived here assumes a fixed total buffer concentration Ctotal in a closed beaker. The bicarbonate buffer in blood is different because it is open to the atmosphere (via the lungs): CO2\text{CO}_2 can be exhaled or retained, which means [H2CO3][\text{H}_2\text{CO}_3] (in equilibrium with dissolved CO₂) is not fixed by mass balance but is instead actively regulated by ventilation rate. This decouples the system from the simple closed-form β formula and gives it enormously enhanced effective capacity — the lungs can "regenerate" the HA reservoir on demand, something no closed beaker buffer can do. This distinction is the essential bridge to physiological buffer systems.

Is there a maximum possible buffer capacity for a given concentration, independent of pKa?

Yes — the absolute ceiling is βmax = (ln 10 / 4)·Ctotal ≈ 0.576·Ctotal, achieved only when pH is tuned exactly to pKa. No choice of buffer species can exceed this ceiling at a given total concentration; the only ways to increase absolute buffering power are to increase Ctotal (more buffer) or to select a pKa closer to the pH you actually need to protect. This is why buffer recipes always specify both a concentration and a species chosen for its pKa — both parameters are doing quantifiable, derivable work.

Why do biochemists usually prepare buffers by mixing a weak acid and its conjugate base directly, rather than partially titrating a pure weak acid with strong base?

Both methods are chemically equivalent at completion — the final solution contains the same [HA] and [A⁻] either way, since the system only "remembers" the equilibrium state, not its history. In practice, weighing out calculated masses of the acid form and the conjugate-base salt form (as in Example 2) is faster, more reproducible, and avoids the slow endpoint-approach and pH-meter drift issues that come with dropwise titration. Some protocols do titrate to a target pH as a final fine adjustment, correcting for small deviations from ideal pKa values due to ionic strength effects, but the bulk composition is usually set by direct weighing.

Before this

Where this leads