Practice buffer chemistry problems using the Henderson–Hasselbalch equation: pH = pKa + log₁₀([A⁻]/[HA]). Create multiple scenarios, choose what to solve for, and optionally check your own answers.
Build one or more buffer scenarios by specifying pKa, pH, ratios, or concentrations. Choose what you want to solve for and optionally enter your own answer to check it.
We'll apply the Henderson–Hasselbalch equation for each scenario.
For learning and homework practice only; not for clinical, pharmaceutical, or industrial use.
Textbook Henderson-Hasselbalch problems give you pKa and the conjugate-base ratio, then ask for pH. Real exams flip that and ask you to back-solve for pKa from a measured pH and a known ratio. Same equation, but the algebra runs in the other direction and the answer's sensitivity to small errors changes. A 0.1-unit error in pH translates to roughly 25% error in the ratio when solving forward, but a 0.1-unit error in pKa when solving backward. This page generates both flavors and checks your work. The derivation and worked acetate recipe live on the Buffer Maker page.
The variants matter. Real exams don't always hand you a clean ratio and ask for pH. They give you grams of weak acid and grams of conjugate-base salt, or moles after a strong-acid spike, or pH and pKa and want a ratio. Each phrasing tests the same equation but breaks students at a different step. The point of this generator is to expose you to all of them, not to re-teach HH from scratch.
A few habits will save you marks on every HH problem. Write the equation down first, before plugging numbers in: pH = pKa + log([A⁻]/[HA]). Always that direction. Conjugate base over weak acid. Flip the ratio and you'll be wrong by 2 × log(ratio), which on a pKa of 4.76 with a 3:1 mix is almost a full pH unit.
Sign of the log term is the next checkpoint. pH greater than pKa means more A⁻ than HA. pH lower than pKa means more HA than A⁻. If your computed ratio contradicts that intuition, you have a sign error.
Last habit: moles and concentrations are interchangeable inside the log. Since [A⁻]/[HA] = n(A⁻)/n(HA) when both species share the same solution volume, you don't have to convert to molarity. That saves a step and an error opportunity.
The generator rotates through four standard problem shapes. The basic one gives you both concentrations plus pKa and asks for pH. A close variant gives you pH and pKa and wants the ratio (or one concentration if the other is known). Then there's the harder version where you start with moles, a strong-acid or strong-base spike gets added, and you have to recompute the new pH after the stoichiometric shift converts some HA to A⁻ (or vice versa).
That last one catches most students. Strong acid converts A⁻ to HA mole for mole. Strong base does the opposite. You can't just plug fresh numbers into HH after an addition; you have to update the moles first, then apply the equation. If your work disagrees with the answer-check by more than 0.02 pH, look at the strong-acid/base bookkeeping before you blame the calculator.
This page does practice. It doesn't re-derive Henderson-Hasselbalch from first principles. The Buffer Maker page does that with worked acetate examples and an explanation of why the ratio cancels volume. If you're rusty on the derivation, read that first and come back.
For operational buffer questions (what's the new pH after I add a specific number of moles of HCl, what's β at this composition), the Buffer Capacity & pH Drift Estimator is the right tool. It's the difference between practicing the equation on synthetic numbers and actually computing a real buffer's response to a perturbation. Both are useful. They're separate pages because they answer separate questions.
After practicing, build an actual buffer recipe with the same HH equation but solving for grams of conjugate base.
HH is a special case of the underlying acid-base equilibrium. The pH calculator handles weak-acid cases HH can't.
Visualize how pH responds to the [A-]/[HA] ratio across the buffer range. Practice problems make more sense after seeing the curve.