# Understanding the increase in pH of a buffer solution upon incremental additions of NaOH analytically

So let's say we have $200$ mL of $1$M $CH_3COOH$ solution. In this solution we have the equilibrium $CH_3COOH \rightleftharpoons CH_3COO^- + H^+$. To that we add $100$mL of $1$M $NaOH$ solution.Then after reacting we get a buffer solution where $[CH_3COOH] = [CH_3COO^-] = \frac{1}{3} moldm^{-3}$. In moles, we have $0.1$ moles of both $CH_3COOH$ and $CH_3COO^-$.

Then suppose we add $x$ mL of $0.1$M NaOH. This is, in effect, reacting $0.1$ moles of $CH_3COOH$ with $0.0001x$ moles of $NaOH$, the result of which is that now $n(CH_3COOH) = 0.1 - 0.0001x$ and $n(CH_3COO^-) = 0.1 + 0.0001x$.

Could we not then model, by the Henderson-Hasselbach equation, $pH = pKa + log(\frac{0.1 +0.0001x}{0.1 - 0.0001x}) = 4.76 +log(\frac{0.1 +0.0001x}{0.1 - 0.0001x})$?

But this would mean that for the pH of the buffer solution to rise by $1$, we would need $818.82 cm^3$ of $0.1$M NaOH solution, which sounds absurd. Moreover, for different acids, like propanoic acid and butanoic acid, the same line of logic could be used to deduce that the volume required to increase the pH by 1 would be the same for all, but they have different buffering capacities. So what's wrong with the logic?

I just answered what I thought was this question but realized that it was essentially the same question asked 5 years ago. So here's that answer modified for the slight difference in the way it is asked here:

We need to know the the pH of the buffer i.e. what does it measure before any NaOH is added. Later we will assume that it is 4.76, the pK of acetic acid. $[\ce{HAc}] = [\ce{Ac^-}]$ ([·] symbolizes the molar concentration of ·). In order to solve the general problem we need to be able to calculate the fraction of the total Ac that is dissociated and the fraction that isn't.

The fraction that is dissociated comes right out of the Henderson - Hasselbalch equation and is $$f_1 = 1/(1 + r_1)$$ where $$r_1 = 10^{(pH - pK_1)}= [\ce{Ac^-}]/[\ce{HAc}]$$ as is clear from inspection of the Henderson - Hasselbalch equation. The subscript 1 indicates that $r_1$ is the ratio of the number of acid ions that have lost 1 proton to the number that have lost $1 - 1 = 0$. In $f_1$ the subscript is indicative that $f_1$ is the fraction of the total Ac molecules that has become singly charged by loss of a single proton. When dealing with monoprotic acetic acid the subscripts aren't that important as there is only one proton to loose. But if the acid is polyprotic we have unionized, once ionized, twice ionized etc. ions to consider. The fractions of those ions are $f_0$, $f_1$, $f_2$... and we have other ratios as well

$$r_j = 10^{(pH - pK_j)} = [H_{n-j-1}Ac^{−j}]/[H_{n-j}Ac^{-(j-1}]$$ Here "Ac" stands for the acid anion and n is the number of protons it can yield when fully dissociated. For acetic acid. $\ce{CH_3COOH}$, and Ac is $\ce{CH_3COO}$, n = 1 and j only has values of 0 or 1. With phosphoric acid, $\ce{H_3(PO_4)}$, Ac is $\ce{(PO_4)}$, n = 3 and j = 0,1,2 or 3.

So suppose now we have a polyprotic acid with values for $r_1$, $r_2$, $r_3$... and that there are x moles of the acid in a solution. Then there would be $xr_1$ moles of the singly deprotonated species, $xr_1r_2$ moles of the doubly deprotonated, $xr_1r_2r_3$ moles of the triply deprotonated and so on.Then the total number of moles of Ac would be the sum of the number of moles of each$$C_{Ac} = x + xr_1 +xr_1r_2 +xr_1r_2r_3...$$ The fraction of the total that is undissociated is $$f_0 = x/(x + xr_1 +xr_1r_2 +xr_1r_2r_3...) = 1/(1 + r_1 +r_1r_2 + r_1r_2r_3...)$$ The fraction that is singly dissociated is $r_1$ times this $$f_1 = r_1f_0$$ and the fraction that is doubly dissociated is $r_2$ times that $$f_2 = r_2f_1$$ and, in general $$f_j = r_jf_{(j-1)}$$

At this point let's remember that $f_j$ is a function of the solution pH and all the pK's of the acid in question and that it is the fraction of the anions of that acid that carry charge -j. Thus we can write an expression for the total charge on all species of Ac at a given pH. This is $$Q_{Ac} = -C_{Ac}(0f_0 + 1f_1 + 2f_2 + ...)$$

Before going on to show you how Q solves buffering problems let me stop to suggest that the simplest way to work with it is to make an Excel (or other) spread sheet. Designate a column for pKs and a cell into which the pH goes. For example, put pH into cell A1 and start the pKs list in A2, Then in B2 put =10^($A$1 - A2). Using $A$1 lets you copy and paste B2 into as many cells as you have pKs. The B column now contains the r corresponding to the pK in the cell to the left of it. Now enter the formula for $f_0$ in a cell and make another column with the $f_j = r_jf_{(j-1)}$ formula in it. So how many pK's. I say make the spread sheet for 5 or 6. Why? Well lets go back to $\ce{CH_3COOH}$ for a minute. It doesn't have 1 proton to give, as we have been assuming. It actually has 4. Are the other three ever coming off? Not with any base in my lab but we can model those other protons simply by assigning pKs that are so high (say 50) that the f values for anything other than $f_0$ or $f_1$ are 0. The point being that if you are going to go to the trouble to make the spreadsheet you might as well make it big enough to handle any acid you may ever encounter as it easily handles anything up to its maximum size using this trick.

Now how to use $Q(pH)$. If there are a total of $C_{Ac}$ moles of Ac in a solution the negative charge on them at $pH_0$ is $C_{Ac}Q(pH_0)$. At $pH_1$ it is $C_{Ac}Q(pH_1)$. Thus to move the solution from $pH_0$ to $pH_1$ you must supply or remove charge of $$\Delta Q_{Ac}(pH_0\ce{->}pH_1) = C_{Ac}Q(pH_1) - C_{Ac}Q(pH_0)$$ by adding or absorbing protons. If $pH_0 > pH_1$ then $Q(pH_1) > Q(pH_0)$ (less negative) and so the difference will be positive indicating that protons (acid) will need to be added to effect this pH shift.

The acid species in the solution are not the only thing that emits or absorbs protons when pH changes. The solvent does too.

$$\Delta Q_{W}(pH_0\ce{->}pH_1) = 10^{-pH_1} - 10^{-pH_0} + (10^{(pH_0 - pK_w)} - 10^{(pH_1 - pK_w)})$$ represents the number of protons that must be supplied (or absorbed) to change the pH of water from $pH_0$ to $pH_1$.

Now let's use this to solve the original question. We have 300 mL of 4.76 buffer with $C_{Ac}$ = 0.2 mol ( 0.1 mol of Ac and 0.1 mol of $Ac^{-1}$. This implies that $f_0 = f_1 = 0.5$ Also $$\Delta Q_{Ac}(pH_0\ce{->}pH_1) = 0.02(Q(pH_1) - Q(4.76))$$ $$\Delta Q_{W}(pH_0\ce{->}pH_1) = 10^{-pH_1} - 10^{-4.76} + (10^{(4.76 - pK_w)} - 10^{(pH_1 - pK_w)})$$

Aparently we want to know how much NaOH we would need to raise the pH to 5.76. With our formulas in a simple Excel spread sheet and using 5.76 for $pH_1$ we quickly find that $\Delta Q_{Ac}(4.76\ce{->}5.76) = -0.0818 mole. IOW protons must be absorbed. At the same time we find$\Delta Q_{W}(4.76\ce{->}5.76) = -1.56E-5 mole per liter. We only have 0.3 L so the protons to be removed to adjust the water are insignificant. We apparently need 81.8 mL of 1 M NaOH. Note that your digits are pretty similar so one of us is off by a power of 10. As 0.8 mol OH- to shift an 0.2 mol buffer is a lot, I think it's you. As we both used Henderson Hasselbalch, we had better get the same answer.

So why would you do what I'm suggesting instead of what you are doing (assuming you find the factor of 10). If you do a lot of problems like this it makes cranking them out a snap.

Now this post has gone on long enough so I won't have space to tell you about extension of this technique to much more complicated systems. You can use it to find the pH of complicated mixes of weak and strong acids and bases or any materials which have buffering capacity. I ginned it up (this is just using the 'proton condition' to solve a complex system - I didn't invent it) to predict the pH of brewer's mash which is a mixture of weak acid (bicarbonate) and several malts (each of which has its own buffering properties).