8.8: Henderson-Hasselbalch Approximation
- Page ID
- 341930
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)
( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\id}{\mathrm{id}}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\kernel}{\mathrm{null}\,}\)
\( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\)
\( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\)
\( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)
\( \newcommand{\vectorA}[1]{\vec{#1}} % arrow\)
\( \newcommand{\vectorAt}[1]{\vec{\text{#1}}} % arrow\)
\( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vectorC}[1]{\textbf{#1}} \)
\( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)
\( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)
\( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)Learning Objectives
- Define the Henderson-Hasselbalch approximation.
- Calculate hydronium concentration using the Henderson-Hasselbalch approximation.
- Calculate pH using the Henderson-Hasselbalch approximation.
- Calculate pKa using the Henderson-Hasselbalch approximation.
The Henderson-Hasselbalch approximation allows us one method to approximate the pH of a buffer solution. The basic equation is as follows:
\[ pH \approx pK_a + \log_{10} \dfrac{[A^-]}{[HA]} \]
We have straightforward calculations for strong acids and bases, but the computations behind buffers are rather complex and time consuming. By using the fact that weak acids and bases barely ionize, allowing us to approximate the pH of buffer solutions using initial concentrations. Though the approximation has a few restrictions, it simplifies a lengthy calculation into a simple equation derived from \(K\).
Lawrence Joseph Henderson and Karl Albert Hasselbalch
Lawrence Joseph Henderson (1878-1942) was a talented biochemist, among many other titles, who spent most of his career at Harvard. He was responsible for developing the components of the equation after studying equilibrium reactions that took place within blood as a result of respiration (specializing in "fatigue"). His equation was incomplete without the solid calculations into it provided by Hasselbalch.
Karl Albert Hasselbalch (1874-1962) was a chemist who studied pH closely. He also studied blood and reactions that took place with oxygen, to put in the simplest of terms. He eventually modified Henderson's equation by putting mathematical logs into it creating a solid relationship.
Derivation for Buffers from Weak Acids
For a weak acid \( HA \) and its conjugate base \(A^-\):
\(HA + H_2O\leftrightharpoons H^+ + A^-\)
which has an acid ionization constant \(K_a\). The Henderson-Hasselbalch approximation is derived from this acid ionization constant.
\[ \begin{align} K_a &= \dfrac{[H^+][A^-]}{[HA]} \\[4pt] -\log_{10} K_a &= -\log_{10} \dfrac{[H^+][A^-]}{[HA]} \\[4pt] - \log_{10} K_a &= - \log_{10} [H^+] - \log_{10} \dfrac{[A^-]}{[HA]} \\[4pt] pK_a &= pH - \log_{10} \dfrac{[A^-]}{[HA]} \\[4pt] pH &= pK_a + \log_{10} \dfrac{[A^-]}{[HA]} \label{HH1} \end{align}\]
Equation \ref{HH1} is formulated in terms of equilibrium concentrations in solution. Since \( HA\) is a weak acid and weakly dissociates and we can introduce two approximations
\[ [HA]\approx[HA]_i\]
and
\[ [A^-]\approx[A^-]_i\]
Hence, we can use the initial concentrations rather than equilibrium concentrations because
\[pK_a + \log_{10} \dfrac{[A^-]_i}{[HA]_i} \approx pK_a + \log_{10} \dfrac{[A^-]}{[HA]} = pH\]
Example \(\PageIndex{1}\): Nitrous acid buffer
Find \([H^+]\) in a solution of 1.0 M \(HNO_2\) and 0.225 M \(NaNO_2\). The \(K_a\) for \(HNO_2\) is \(5.6 \times 10^{−4}\) (Table E1).
Solution
\[pK_a = -\log_{10} K_a = -\log_{10} (7.4 \times 10^{-4}) = 3.14 \nonumber \]
\[pH = pK_a + \log_{10} \left( \dfrac{[NO_2^-]}{[HNO_2]}\right)\nonumber \]
\[pH = 3.14 + \log_{10} \left( \dfrac{1}{0.225} \right)\nonumber \]
\[pH = 3.14 + 0.648 = 3.788\nonumber \]
\[[H^+] = 10^{-pH} = 10^{-3.788} = 1.6 \times 10^{-4} \nonumber \]
Example \(\PageIndex{2}\): Acetic Acid buffer
What ratio \( \frac{[A^-]}{[HA]} \) will create an acetic acid buffer of pH 5.0? (\(K_a\) acetic acid is \(1.75 \times 10^{−5}\) (Table E1).
Solution
\[pKa = -log Ka = -log(1.8 \times10^{-5}) = 4.74\nonumber \]
\[pH = pK_a + \log_{10} \left( \dfrac{[A^-]}{[HA]}\right) \nonumber \]
\[5.0 = 4.74 + \log_{10} \left( \dfrac{[A^-]}{[HA]}\right)\nonumber \]
\[0.26 = \log_{10} \left( \dfrac{[A^-]}{[HA]}\right)\nonumber \]
\[10^{0.26} = \dfrac{[A^-]}{[HA]}\nonumber \]
\[1.8 = \dfrac{[A^-]}{[HA]}\nonumber \]
Derivation for Buffers from Weak Bases
Similarly, for a weak base \( B\) and its conjugate acid \(HB^+\):
\[B + H_2O \leftrightharpoons OH^- + HB^+\]
which has an base ionization constant \(K_b\). The Henderson-Hasselbalch approximation for basic buffers is derived from this base ionization constant.
\[ \begin{align} K_b &= \dfrac{[OH^-][HB^+]}{[B]} \\[4pt] -\log_{10} K_b &= -\log_{10} \dfrac{[OH^-][HB^+]}{[B]} \\[4pt] -\log_{10} K_b &= - \log_{10} [OH^-] - \log_{10} \dfrac{[HB^+]}{[B]} \\[4pt] pK_b &= pOH - \log_{10} \dfrac{[HB^+]}{[B]} \\[4pt] pOH &= pK_b + \log_{10} \dfrac{[HB^+]}{[B]} \end{align} \]
Note that \( B\) is a weak base and does not dissociate completely and we can say \([B] \approx [B]_i\) and \( [HB^+] \approx [HB^+]_i\). Hence, we can use the initial concentrations because
\[pK_b + \log_{10} \dfrac{[HB^+]_i}{[B]_i} \approx pK_b + \log_{10} \dfrac{[HB^+]}{[B]} = pOH\]
Example \(\PageIndex{3}\): Ammonium Buffer
You prepare a buffer solution of 0.323 M \(NH_3\) and \((NH_4)_2SO_4\). What molarity of \((NH_4)_2SO_4\) is necessary to have a pH of 8.6? The \(pK_b\) for \(NH_3\) is 4.74 (Table E2).
Solution
\[pK_a+ pK_b = 14\nonumber \]
\[pK_a= 14 - 4.74 = 9.26\nonumber \]
\[pH = pK_a + \log_{10} \left( \frac{[A^-]}{[HA]}\right)\nonumber \]
\[8.6 = 9.26 + \log_{10} \left( \dfrac{0.323}{[NH_4^+]}\right)\nonumber \]
\[-0.66 = \log_{10} \left( \dfrac{0.323}{[NH_4^+]}\right)\nonumber \]
\[[NH_4^+] = 1.48 M\nonumber \]
Example \(\PageIndex{4}\): Buffering Capability
What is the pH of a buffer 0.500 moles acetic acid and 0.500 moles acetate ion and the total volume is 5 L when you add 0.350 moles HCl? The \(K_a\) for acetic acid is \(1.75 \times 10^{−5}\) (Table E1).
Solution
\[pK_a = -\log_{10} K_a = -\log_{10} (1.75 \times 10^{−5}) = 4.756\nonumber \]
\[pH = pK_a + \log_{10} \left( \dfrac{[acetate]}{[\text{acetic acid}] + [HCl]} \right)\nonumber \]
note that mole ratio also works in place of concentrations as both the acid and base are in the same solution
\[pH = 4.756 + \log_{10} (0.588)\nonumber \]
\[pH = 4.756 - 0.230 = 4.52\nonumber \]
Example \(\PageIndex{5}\): effective buffer range
What is the range of an acetic acid buffer described in problem \(\PageIndex{4}\) without the added \(\ce{HCl}\)?
Solution
The effective buffer range is of magnitude 2 pH units with the \(pK_a\) as the midpoint.
\[pK_a = -\log_{10} K_a = -\log_{10} (1.75 \times 10^{−5}) = 4.756\nonumber \]
Hence, the buffer range would be 3.75 to 5.75.
Assumptions in the Henderson-Hasselbach Approximation
- \[-1 < \log_{10} \dfrac{[A^-]}{[HA]} < 1\]
- The molarity of the buffer(s) should be 100x that of the acid ionization constant, or Ka.
- This equation will give poor or inaccurate results if there are strong acids or bases. pKa values between 5 and 9 will give good approximations, but when we are out of this range there is a strong chance that the pH value will be incorrect.J In other words near the end or the beginning of a titration where the "relative concentrations of the acid or base differ substantially[,]... approximate calculations break down."J
References
- "Henderson-Hasselbalch Equation: Its History and Limitations," Henry N. Po and N. M. Senozan, J. Chem. Educ., 2001, 78 (11), p 1499
- National Academy of Sciences (U.S.) Biographical memoirs. City of Washington, 1945. Vol. XXIII, 2d memoir.
- Petrucci, et al. General Chemistry: Principles & Modern Applications. 9th ed. Upper Saddle River, New Jersey 2007.
Contributors and Attributions
- Gurinder Khaira and Alexander Kot (UCD)