Calculator of Alexandria

Buffer pH calculator (Henderson–Hasselbalch)

Find the pH of a buffer from its pKa and the ratio of conjugate base to weak acid, or the ratio you need to hit a target pH.

Solve for

At 25 °C: acetate 4.76, MES 6.15, phosphate 7.20 (second pKa), HEPES 7.48, Tris 8.07.

Formula

pH=pKa+log⁡10[A−][HA]\text{pH} = \text{p}K_a + \log_{10}\frac{[\text{A}^-]}{[\text{HA}]}
How it's derived

The formula

pH=pKa+log⁡10[A−][HA]\text{pH} = \text{p}K_a + \log_{10}\frac{[\text{A}^-]}{[\text{HA}]}

[HA][\text{HA}] is the concentration of the weak acid, [A−][\text{A}^-] the concentration of its conjugate base, and pKa\text{p}K_a measures how strong the acid is.

Where it comes from

A weak acid only partly gives up its proton in water:

HA⇌H++A−\text{HA} \rightleftharpoons \text{H}^+ + \text{A}^-

At equilibrium the acid dissociation constant ties the three concentrations together:

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

Solve for the hydrogen ion concentration, the quantity pH is built on:

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

Now take −log⁡10-\log_{10} of both sides. The log of a product is a sum of logs, so the right side splits in two:

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

By definition pH=−log⁡10[H+]\text{pH} = -\log_{10}[\text{H}^+] and pKa=−log⁡10Ka\text{p}K_a = -\log_{10}K_a. Flipping the fraction inside the last log changes its sign, which gives the Henderson–Hasselbalch equation:

pH=pKa+log⁡10[A−][HA]\text{pH} = \text{p}K_a + \log_{10}\frac{[\text{A}^-]}{[\text{HA}]}

One consequence is worth remembering: when acid and base are equal, the ratio is 1, log⁡101=0\log_{10} 1 = 0, and the pH equals the pKa. That is where a buffer resists pH change best, which is why buffers are chosen with a pKa within about one unit of the pH you want.

Worked example

A phosphate buffer (pKa=7.20\text{p}K_a = 7.20) with 60 mM HPO42−\text{HPO}_4^{2-} and 40 mM H2PO4−\text{H}_2\text{PO}_4^-:

pH=7.20+log⁡106040=7.20+0.176=7.38\text{pH} = 7.20 + \log_{10}\frac{60}{40} = 7.20 + 0.176 = 7.38

Watch out for

  • It’s an approximation. It assumes the concentrations you mixed are the equilibrium concentrations. That holds well for buffers between about 1 mM and 1 M in the range pKa ± 1, and breaks down for very dilute buffers or extreme ratios.
  • pKa depends on temperature and ionic strength. Tris is the classic trap: its pKa drops by about 0.03 per °C, so a Tris buffer set to pH 8.0 at room temperature is closer to 8.6 on ice. Adjust pH at the temperature you’ll use it.
  • Concentrations here are a ratio, so only their relative size matters. The calculator converts both to the same unit for you.

Sources

Last checked