Buffer solutions

Add a drop of strong acid to plain water and the pH crashes; add the same drop to blood plasma and the pH barely twitches. That stubbornness is the work of a buffer solution — a mixture that resists changes in pH when small amounts of acid or base are added, or when it is diluted. Buffers are not magic: they are simply a weak acid (or weak base) deliberately paired with a large reservoir of its own conjugate, so that any intruding H+H^+ or OH−OH^- is mopped up before it can move the pH far. This is the common-ion effect from ionic equilibrium, put to practical use. This section builds the idea from the ground up: what an acidic and a basic buffer actually contain, why the mechanism works (Le Chatelier's principle acting on a suppressed equilibrium), the derivation of the Henderson–Hasselbalch equation, and how to use it both to calculate a buffer's pH and to check numerically just how little that pH moves when acid is added. The chemistry, scope, and every worked number below match the syllabus exactly — nothing here goes beyond ionic equilibrium as covered in ISC Class 11.

The core insight

A buffer pairs a weak acid or base with a large reservoir of its conjugate so that added H+H^+ or OH−OH^- is consumed by the common-ion equilibrium, and its pH is fixed by pH=pKa+log⁡10([salt]/[acid])\text{pH} = \text{p}K_a + \log_{10}([\text{salt}]/[\text{acid}]).

The core idea

Two kinds of buffer, built the same way. An acidic buffer is a weak acid HAHA mixed with a salt of that acid with a strong base — a large reservoir of the conjugate base A−A^- sitting alongside the unionised acid, e.g. CH3COOH+CH3COONa\text{CH}_3\text{COOH} + \text{CH}_3\text{COONa}. A basic buffer is a weak base BOHBOH mixed with a salt of that base with a strong acid — a reservoir of the conjugate acid B+B^+ alongside the unionised base, e.g. NH4OH+NH4Cl\text{NH}_4\text{OH} + \text{NH}_4\text{Cl}. In both cases the point of adding the salt is to force a large, controllable excess of the conjugate species into solution, something the weak acid or base alone could never supply through its own tiny ionisation.

Why the mixture resists pH change. Take the acidic buffer as the working example. The solution already contains sizeable amounts of both HAHA (proton donor) and A−A^- (proton acceptor), from the equilibrium HA⇌H++A−HA \rightleftharpoons H^+ + A^-. If a little strong acid is added, the incoming H+H^+ does not simply accumulate — it is captured by the excess A−A^-: A−+H+→HAA^- + H^+ \rightarrow HA. If a little strong base is added instead, the incoming OH−OH^- is captured by the excess HAHA: HA+OH−→A−+H2OHA + OH^- \rightarrow A^- + H_2O. Either way, the disturbance is absorbed by shifting the equilibrium only slightly (Le Chatelier's principle), because both reservoirs — HAHA and A−A^- — are large compared with the amount of acid or base being added. The ratio [A−]/[HA][A^-]/[HA] barely changes, and since pH is set by that ratio (shown below), pH barely changes either. The same logic, with BOHBOH and B+B^+ swapped in, explains a basic buffer.

From KaK_a to a usable pH formula. The acid-dissociation equilibrium constant for HAHA is

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

where: [H+][H^+] is the free hydrogen-ion concentration, [A−][A^-] is the conjugate-base concentration, and [HA][HA] is the unionised acid concentration, all at equilibrium. Because the salt fully dissociates and supplies a large excess of A−A^-, the equilibrium's own ionisation of HAHA and any hydrolysis of A−A^- are both pushed to negligible extents — the common-ion effect again. So [HA][HA] and [A−][A^-] can safely be taken as the concentrations actually weighed out and mixed, called [acid][\text{acid}] and [salt][\text{salt}].

Basic buffers mirror this exactly. For a weak base BOHBOH with a salt providing excess B+B^+, the analogous equation is

pOH=pKb+log⁡10[salt][base]\text{pOH} = \text{p}K_b + \log_{10}\dfrac{[\text{salt}]}{[\text{base}]}

where: pKb=−log⁡10Kb\text{p}K_b = -\log_{10}K_b for the weak base, and pH=14−pOH\text{pH} = 14 - \text{pOH} at 298 K converts back to pH.

Why the salt-to-acid ratio, not the absolute amounts, is what matters. Doubling both [salt][\text{salt}] and [acid][\text{acid}] together leaves the ratio — and so the pH — essentially unchanged, though it does raise the buffer's capacity (how much acid or base it can absorb before its pH starts to drift). This is the reason concentrated buffers are preferred when large disturbances are expected, even though a dilute buffer at the same ratio gives the same starting pH.

Figure
Two beakers side by side showing an acidic buffer of acetic acid and sodium acetate absorbing added acid on the left by converting acetate to acetic acid, and absorbing added base on the right by converting acetic acid to acetate, with the pH scale barely moving
How a buffer absorbs added acid or base strong acid added reservoir: excess A minus A minus + H plus goes to HA free H plus is captured salt to acid ratio drops slightly pH falls only a little strong base added reservoir: excess HA HA + OH minus goes to A minus + water free OH minus is captured salt to acid ratio rises slightly pH rises only a little Both reservoirs, HA and A minus, are large compared with the added acid or base so the equilibrium shifts only slightly and pH stays close to pKa
Derivation ADeriving the Henderson–Hasselbalch equation

Starting from the acid-dissociation equilibrium constant KaK_a for a weak acid HAHA in the presence of its salt, derive the working formula that gives the pH of an acidic buffer directly from pKa\text{p}K_a and the ratio of salt to acid concentrations, and show why that formula reduces to pH=pKa\text{pH} = \text{p}K_a exactly when the salt and acid concentrations are equal.

Step 1. Write the equilibrium expression for the weak acid: Ka=[H+][A−][HA]K_a = \dfrac{[H^+][A^-]}{[HA]}, where [H+][H^+], [A−][A^-], and [HA][HA] are the equilibrium concentrations of hydrogen ion, conjugate base, and unionised acid respectively.

Step 2. Rearrange to isolate [H+][H^+], the quantity that actually sets the pH: [H+]=Ka[HA][A−][H^+] = K_a\dfrac{[HA]}{[A^-]}.

Step 3. Invoke the common-ion effect: because the salt supplies a large excess of A−A^-, the weak acid's own ionisation and the salt's hydrolysis are both suppressed to negligible extents, so [HA][HA] and [A−][A^-] may be replaced by the concentrations actually prepared, [acid][\text{acid}] and [salt][\text{salt}]: [H+]=Ka[acid][salt][H^+] = K_a\dfrac{[\text{acid}]}{[\text{salt}]}.

Step 4. Take −log⁡10-\log_{10} of both sides. Since −log⁡10[H+]=pH-\log_{10}[H^+] = \text{pH} and −log⁡10Ka=pKa-\log_{10}K_a = \text{p}K_a, and −log⁡10-\log_{10} of a quotient flips it into a positive log of the reciprocal quotient, this gives

pH=pKa+log⁡10[salt][acid]\text{pH} = \text{p}K_a + \log_{10}\dfrac{[\text{salt}]}{[\text{acid}]}

where: pKa=−log⁡10Ka\text{p}K_a = -\log_{10}K_a for the weak acid, [salt][\text{salt}] is the prepared concentration of its conjugate-base salt, and [acid][\text{acid}] is the prepared concentration of the unionised weak acid.

Step 5. Check the special case [salt]=[acid][\text{salt}] = [\text{acid}]: the ratio equals 11, and log⁡10(1)=0\log_{10}(1) = 0, so pH=pKa\text{pH} = \text{p}K_a exactly. This is why a buffer's pH is said to be "centred" on the acid's pKa\text{p}K_a, and why buffering capacity is greatest — the mixture can absorb roughly equal amounts of added acid or base before the ratio, and hence the pH, drifts appreciably — when [salt]/[acid][\text{salt}]/[\text{acid}] is close to 11, i.e. when a weak acid is chosen whose pKa\text{p}K_a is close to the desired buffer pH.

Worked example

Buffer pH, then its response to added strong acid. A buffer is prepared by mixing 0.20 M0.20\ M acetic acid (Ka=1.8×10−5K_a = 1.8\times10^{-5}) with 0.30 M0.30\ M sodium acetate.

Step 1. Find pKa\text{p}K_a: pKa=−log⁡10(1.8×10−5)=−(log⁡101.8−5)=−(0.2553−5)=4.74\text{p}K_a = -\log_{10}(1.8\times10^{-5}) = -(\log_{10}1.8 - 5) = -(0.2553 - 5) = 4.74 (two decimal places).

Step 2. Identify [salt]=[CH3COO−]=0.30 M[\text{salt}] = [\text{CH}_3\text{COO}^-] = 0.30\ M and [acid]=[CH3COOH]=0.20 M[\text{acid}] = [\text{CH}_3\text{COOH}] = 0.20\ M.

Step 3. Apply Henderson–Hasselbalch: pH=4.74+log⁡100.300.20=4.74+log⁡10(1.5)\text{pH} = 4.74 + \log_{10}\dfrac{0.30}{0.20} = 4.74 + \log_{10}(1.5).

Step 4. Since log⁡10(1.5)≈0.176\log_{10}(1.5) \approx 0.176, pH=4.74+0.176≈4.92\text{pH} = 4.74 + 0.176 \approx 4.92 — close to pKa\text{p}K_a, as expected when salt and acid concentrations are comparable.

Step 5 — now add 0.01 mol0.01\ \text{mol} of HCl to 1.0 L of this buffer (negligible volume change). The added H+H^+ reacts as CH3COO−+H+→CH3COOH\text{CH}_3\text{COO}^- + H^+ \rightarrow \text{CH}_3\text{COOH}: moles of acetate fall from 0.300.30 to 0.290.29, moles of acetic acid rise from 0.200.20 to 0.210.21 (volume still 1.0 L, so these are also the new molarities).

Step 6. Recompute: pH=4.74+log⁡100.290.21≈4.74+0.140=4.88\text{pH} = 4.74 + \log_{10}\dfrac{0.29}{0.21} \approx 4.74 + 0.140 = 4.88. The pH moved only from 4.924.92 to 4.884.88 — compare a plain 1.0 L of water, which the same 0.01 mol0.01\ \text{mol} HCl would drop from pH 7 all the way to pH 2. The buffered pH shift is under 0.05 units, versus 5 units unbuffered — this is buffer action.

Common traps

  • Believing a buffer keeps pH perfectly constant. It only resists change; large enough additions eventually exhaust one reservoir and the pH starts moving freely.
  • Ignoring that only the ratio matters. Doubling both [salt][\text{salt}] and [acid][\text{acid}] at fixed ratio leaves the pH essentially unchanged, though buffer capacity rises — do not assume higher concentration alone changes the pH.
  • Applying Henderson–Hasselbalch to a strong-acid/strong-base mixture. The equation is derived specifically for a weak acid (or base) equilibrium alongside its conjugate salt; there is no such equilibrium to suppress in a strong/strong mixture.
  • Choosing a weak acid with pKa\text{p}K_a far from the target pH. Effective buffer design needs pKa\text{p}K_a close to the desired pH so that [salt]/[acid]≈1[\text{salt}]/[\text{acid}] \approx 1; a mismatched pKa\text{p}K_a gives a buffer easily overwhelmed by small additions.

Ask the tutor: Want to try designing a buffer for a specific target pH, or see how buffer chemistry connects to salt hydrolysis and solubility product?

Why can we use the prepared salt and acid concentrations directly in the Henderson-Hasselbalch equation instead of the true equilibrium concentrations

Because the common-ion effect suppresses both the weak acid's own ionisation and the salt's hydrolysis almost completely once they are mixed together. The huge excess of A−A^- from the salt drives the HA⇌H++A−HA \rightleftharpoons H^+ + A^- equilibrium so far to the left that the tiny amount of HAHA that does ionise, and the tiny amount of A−A^- that hydrolyses back to HAHA, are negligible compared with the amounts actually weighed out. So the prepared concentrations are, to a very good approximation, the equilibrium ones.

Does a buffer's pH depend on how dilute the solution is

Barely, and that is exactly the point. Diluting a buffer scales [salt][\text{salt}] and [acid][\text{acid}] by the same factor, so their ratio — the only thing that appears in pH=pKa+log⁡10([salt]/[acid])\text{pH} = \text{p}K_a + \log_{10}([\text{salt}]/[\text{acid}]) — is unchanged, and pH stays almost the same. What dilution does reduce is buffer capacity: a very dilute buffer still has the right pH, but it can absorb far less added acid or base before that pH starts to drift.

How would I design a buffer for a specific target pH, say pH 5

Pick a weak acid whose pKa\text{p}K_a is as close as possible to the target, here roughly 4.74.7 to 5.05.0 (acetic acid, pKa=4.74\text{p}K_a = 4.74, is a natural choice). Then use pH=pKa+log⁡10([salt]/[acid])\text{pH} = \text{p}K_a + \log_{10}([\text{salt}]/[\text{acid}]) to solve for the required [salt]/[acid][\text{salt}]/[\text{acid}] ratio: for pH 5 with acetic acid, log⁡10([salt]/[acid])=5−4.74=0.26\log_{10}([\text{salt}]/[\text{acid}]) = 5 - 4.74 = 0.26, so [salt]/[acid]=100.26≈1.82[\text{salt}]/[\text{acid}] = 10^{0.26} \approx 1.82. Mix acetic acid and sodium acetate in roughly that molar ratio.

Before this

Where this leads