Skip to main content

Henderson-Hasselbalch Calculator

Ready to calculate
pH = pKa + log [A⁻]/[HA].
Ka or pKa Entry.
16 Reference Buffers.
100% Free.
No Data Stored.

How it Works

01Enter [A⁻]

Concentration of the conjugate base (the deprotonated form) — supports M, mM, μM, nM

02Enter [HA]

Concentration of the weak acid (the protonated form) — same family of unit options

03Enter Ka or pKa

Acid dissociation constant (Ka, scientific notation) or pKa = −log Ka — toggle to switch

04pH = pKa + log

Get pH plus buffer quality classification (5-band) and the closest of 16 reference buffers

What is a Henderson-Hasselbalch Calculator?

The Henderson-Hasselbalch equation pH = pKa + log10([A⁻]/) is the most-quoted formula in buffer chemistry — the bridge between thermodynamics (the equilibrium constant Ka) and the practical pH you measure with an electrode. It was derived in two stages: Lawrence J. Henderson published the underlying mass-action expression in 1908 (Am. J. Physiol. 21, 173), and Karl Albert Hasselbalch put it in modern logarithmic form in 1916 while studying the bicarbonate-CO₂ buffer system in human blood. Our Henderson-Hasselbalch Calculator implements the equation with full unit flexibility — four concentration units for both [A⁻] and (M, mM, μM, nM), and dual entry for the acid dissociation constant (Ka in scientific notation, or pKa as a positive number) with one-click toggle. Output includes pH, the [A⁻]/ ratio, the distance |pH − pKa| (the master quality metric), a 5-band buffer-effectiveness classification, and the closest match against 16 standard reference buffers covering the entire pH range from glycine (pKa 2.34) through phosphate (pKa3 12.38).

Just enter the conjugate-base concentration [A⁻] (the deprotonated form, e.g., acetate ion CH₃COO⁻), the acid concentration (the protonated form, e.g., acetic acid CH₃COOH), and the acid's Ka (e.g., 1.8×10⁻⁵ for acetic acid) or pKa (4.76 for acetic acid). The calculator normalizes everything to SI molarity, computes the ratio, takes its log, adds to pKa, and reports the resulting pH. The buffer-quality bands tell you instantly whether your buffer composition is well-suited: balanced (pH ≈ pKa, ratio ≈ 1, optimal); well-buffered (within ±1 pH unit of pKa, ratio between 0.1 and 10); weakly buffered (asymmetric — works against acid OR base but not both); or out-of-range (pH too far from pKa, buffer essentially exhausted on one side).

Designed for general chemistry students learning acid-base equilibria, biochemistry students preparing buffers for enzyme assays, molecular biologists making running buffers for gel electrophoresis, pharmaceutical scientists formulating injectable drugs, clinical chemists studying the bicarbonate blood-buffer system, and biomedical engineers designing physiological pH sensors, the tool runs entirely in your browser — no data is stored or transmitted.

Pro Tip: Pair this with our Buffer Capacity Calculator to quantify how much acid or base your buffer can absorb before the pH shifts, or our Equilibrium Constant Calculator if you need to convert ΔG° to Ka via ΔG° = −RT·ln(Ka).

How to Use the Henderson-Hasselbalch Calculator?

Enter [A⁻] (conjugate base): The molar concentration of the deprotonated form of your weak acid. Examples: acetate ion (CH₃COO⁻) for acetic-acid buffers; ammonium ion (NH₄⁺) is the conjugate ACID of ammonia, so for an ammonia buffer the conjugate base is NH₃ itself; phosphate dianion (HPO₄²⁻) is the conjugate base of dihydrogen phosphate (H₂PO₄⁻).
Enter (acid): The molar concentration of the protonated weak-acid form. For an acetate buffer this is acetic acid (CH₃COOH); for HEPES it's the protonated zwitterion form. Use any of M, mM, μM, nM units.
Enter Ka (or toggle to pKa): The acid dissociation constant. Choose the entry mode with the small Ka/pKa toggle: enter Ka in scientific notation (e.g., 1.8e-5 for acetic acid) OR enter pKa directly (e.g., 4.76). The calculator converts internally — pKa = −log₁₀(Ka).
Press Calculate: The calculator forms [A⁻]/, takes log₁₀, adds to pKa, and returns pH. Buffer quality is classified by the [A⁻]/ ratio (balanced when ≈ 1; well-buffered when 0.1-10; out-of-range when < 0.01 or > 100).
Read the Results: pH headline + buffer-quality classification; the [A⁻]/ ratio and its log; the distance |pH − pKa|; closest match in a 16-buffer reference table; full step-by-step calculation breakdown.

How is Henderson-Hasselbalch derived?

The Henderson-Hasselbalch equation falls out of the equilibrium expression for any weak acid in two short algebra steps. Once you've seen the derivation it's permanently intuitive — you can rebuild it from scratch any time you forget the formula. Here's the complete derivation:

Lawrence Henderson published the underlying mass-action expression in 1908 while modeling carbonic-acid equilibria in blood. Karl Albert Hasselbalch added the logarithmic transformation in 1916, putting the equation in the form every chemistry student now learns.

Step 1 — Acid Dissociation Equilibrium

For a weak acid HA dissociating in water:

HA ⇌ H⁺ + A⁻    with equilibrium constant    Ka = [H⁺][A⁻] /

Step 2 — Solve for [H⁺]

Rearrange Ka to isolate [H⁺]:

[H⁺] = Ka × ( / [A⁻])

Step 3 — Take Negative Logarithm

Apply −log₁₀ to both sides. Since pH = −log[H⁺] and pKa = −log Ka:

−log[H⁺] = −log Ka − log(/[A⁻])

Use the identity −log(x/y) = log(y/x):

pH = pKa + log10([A⁻] / )

Three Special Cases to Memorize

  • [A⁻] = : ratio = 1, log(1) = 0, so pH = pKa. Equimolar buffer = equilibrium with the pKa. Maximum buffering capacity.
  • [A⁻] = 10·: log(10) = 1, so pH = pKa + 1. Upper end of useful buffer range.
  • [A⁻] = 0.1·: log(0.1) = −1, so pH = pKa − 1. Lower end of useful buffer range.

The "Useful Range" Rule

A buffer is considered effective when pH is within ±1 unit of pKa, equivalently when 0.1 ≤ [A⁻]/ ≤ 10. Within this range, buffer capacity stays at ≥40% of its maximum value. Outside this range, capacity drops sharply: at ±2 units, only 4% remains; at ±3 units, essentially zero.

Approximations and When They Break Down

Henderson-Hasselbalch makes three implicit assumptions:

  1. Concentrations ≈ activities. Strictly, the equation should use chemical activities, not concentrations. Activity = γ × concentration, where γ is the activity coefficient (Debye-Hückel). For dilute buffers (< 0.1 M ionic strength), γ ≈ 1 and the approximation is good. For high-salt buffers, γ can be 0.7-0.8, shifting apparent pKa by 0.1-0.3 units.
  2. The acid contributes negligibly to its own [A⁻]. The "stoichiometric" [A⁻] (what you added as a salt, e.g., sodium acetate) should equal the equilibrium [A⁻]. For very dilute buffers (< 1 mM) where the autoionization of water competes, this fails — solve the full quadratic instead.
  3. The buffer doesn't change pKa with temperature. Real pKa shifts 0.01-0.03 per °C — significant for biochemistry buffers used at 4 °C vs 37 °C. Always use the pKa at your working temperature.

Why It's Called Both "Henderson" and "Hasselbalch"

Lawrence J. Henderson (1908, Harvard physiology) developed the underlying mass-action expression while studying acid-base balance in blood, deriving the equation that bears his name in the form [H⁺] = Ka·/[A⁻]. Karl Albert Hasselbalch (1916, Copenhagen) applied logarithms to put it in the modern pH-based form during his work on the bicarbonate buffer in arterial blood. Both worked on essentially the same problem (how blood pH stays so stable at 7.40 ± 0.05) — the joint name credits both.

Real-World Example

Henderson-Hasselbalch Calculator – Worked Examples

Example 1 — Standard Acetate Buffer. 0.1 M sodium acetate + 0.1 M acetic acid. Ka(acetic acid) = 1.8 × 10⁻⁵ → pKa = 4.74.
  • [A⁻] = = 0.1 M → ratio = 1.
  • log(1) = 0, so pH = pKa + 0 = 4.74.
  • Buffer quality: Balanced. Maximum buffering — acetate buffer at its sweet spot. Resists both added acid AND added base equally well.

Example 2 — Phosphate Buffered Saline (PBS). 0.085 M Na₂HPO₄ + 0.015 M NaH₂PO₄. The relevant equilibrium: H₂PO₄⁻ ⇌ HPO₄²⁻ + H⁺, pKa2 = 7.20 (Ka2 = 6.3×10⁻⁸).

  • [A⁻] = [HPO₄²⁻] = 0.085 M (the conjugate base); = [H₂PO₄⁻] = 0.015 M (the acid form).
  • Ratio = 0.085 / 0.015 = 5.67. log(5.67) = 0.753.
  • pH = 7.20 + 0.753 = 7.95. Hmm — typical PBS is pH 7.4. Let me check: real PBS uses 0.038 M Na₂HPO₄ + 0.097 M NaH₂PO₄, ratio 0.39, log(0.39) = −0.40, pH = 7.20 − 0.40 = 6.80. Or for 7.4 PBS: ratio = 1.6, log = 0.20, pH = 7.40. ✓
  • Buffer quality: Well-buffered (within ±1 of pKa). Standard cell-biology buffer.

Example 3 — HEPES at Physiological pH. 25 mM HEPES (acid form) + 25 mM HEPES⁻ (deprotonated). Ka(HEPES) = 2.8 × 10⁻⁸ → pKa = 7.55.

  • [A⁻] = = 25 mM → ratio = 1, log = 0.
  • pH = 7.55 + 0 = 7.55.
  • For target pH 7.4 (physiological): need ratio = 10^(7.40 − 7.55) = 10^(−0.15) = 0.71. So / [HEPES⁻] = 1/0.71 = 1.41 — make 1.41× more acid form than base form. For 50 mM total: 29 mM HA + 21 mM A⁻.

Example 4 — Tris Buffer at Cold-Room Temperature. 0.1 M Tris (deprotonated free base) + 0.1 M Tris-HCl (protonated, the "salt"). Ka(Tris) at 25 °C = 8.5 × 10⁻⁹ → pKa = 8.07.

  • [A⁻] = = 0.1 M → pH = 8.07 at 25 °C.
  • At 4 °C (cold-room work): pKa shifts by ΔpKa ≈ −0.03 × ΔT = −0.03 × (−21) = +0.63 → pKa(4 °C) ≈ 8.70. So pH(4 °C) ≈ 8.70. Tris is notorious for this — a buffer prepared at room temp drifts ~0.6 units when moved to a 4 °C cold room. Always check pH at the actual working temperature.

Example 5 — Out-of-Range (Bad Buffer Choice). Try to use a 0.1 M acetate buffer at pH 8 (well above acetate's pKa of 4.76). What ratio do you need?

  • Required: 8 = 4.76 + log(ratio) → log(ratio) = 3.24 → ratio = 1738.
  • You'd need [A⁻] = 1738 × — essentially all acetate, virtually no acetic acid. The "buffer" would have no resistance to added acid (no HA to protonate); it's exhausted on one side. Pick a different buffer with pKa near 8 (Tris pKa 8.07 is ideal).

Who Should Use the Henderson-Hasselbalch Calculator?

1
General Chemistry Students: Solve textbook buffer problems and predict pH for any acid/conjugate-base mixture; verify lab buffer preps before measuring with a pH meter.
2
Biochemistry Labs: Prepare working buffers (Tris, PBS, HEPES, MOPS, citrate) for enzyme assays, protein purification, electrophoresis — get the right composition the first time.
3
Molecular Biology: Compute pH for Tris-HCl in PCR mixes, gel-running buffers (TBE, TAE), restriction-digest buffers — always verify pH targets at working temperature.
4
Pharmaceutical Scientists: Formulate injectable drugs at physiological pH using citrate, phosphate, or histidine buffers; ensure stable pH during compounding and shelf life.
5
Clinical Chemistry: Understand the bicarbonate-CO₂ blood-buffer system; predict pH shifts in metabolic and respiratory acidosis/alkalosis.
6
Food / Beverage Industry: Calculate pH of acetate, citrate, lactate, and other organic-acid buffers used in food preservation, fermentation, and dairy products.

Technical Reference

Original Sources. Lawrence J. Henderson, "Concerning the relationship between the strength of acids and their capacity to preserve neutrality," Am. J. Physiol. 21, 173-179 (1908) — derived the mass-action form. Karl Albert Hasselbalch, "Die Berechnung der Wasserstoffzahl des Blutes," Biochem. Z. 78, 112-144 (1916) — applied logarithms while studying blood pH. Both were working on the same physiological puzzle: why arterial blood pH stays so tightly regulated at 7.40 ± 0.05 despite continuous metabolic acid production.

Common Buffer pKa Values (25 °C, dilute aqueous):

  • Acidic range (pKa < 5): Glycine pKa1 = 2.34; Citric acid pKa1 = 3.13; Formic acid = 3.75; Acetic acid = 4.76
  • Mid range (pKa 5-7): MES = 6.10; Citric pKa3 = 6.40; Carbonic acid pKa1 = 6.35
  • Physiological range (pKa 7-8): MOPS = 7.20; Phosphate pKa2 = 7.20; HEPES = 7.55; Tris = 8.07
  • Alkaline range (pKa > 8): Boric acid pKa1 = 9.24; Ammonia/Ammonium = 9.25; Glycine pKa2 = 9.60; Carbonate pKa2 = 10.33; Phosphate pKa3 = 12.38

Temperature Sensitivity of pKa (per °C, in pH units):

  • Tris: ΔpKa ≈ −0.028 per °C — very temperature sensitive (drift 0.5+ units between room temp and 4 °C cold room)
  • HEPES: ΔpKa ≈ −0.014 per °C — moderate
  • Phosphate: ΔpKa ≈ −0.0028 per °C — minimal (one of the best for variable-T work)
  • Acetate: ΔpKa ≈ +0.0001 per °C — essentially T-independent

Always set buffer pH at the working temperature, not at convenient bench temperature.

Activity vs Concentration. Strictly, Henderson-Hasselbalch should use chemical activities, not concentrations. Activity = γ × concentration, where γ is the activity coefficient. For dilute buffers (ionic strength I < 0.01 M), γ ≈ 1 and the approximation is excellent. For higher ionic strength (e.g., 0.1 M phosphate buffer with 0.15 M NaCl = PBS), γ for monovalent ions is ~0.78 and for divalent ions is ~0.36 — apparent pKa shifts by 0.1-0.3 units. Use the Davies equation or specific ion-interaction theory (SIT) for high-precision work.

Polyprotic Acids — Multiple pKa Values. Citric acid has pKa1 = 3.13, pKa2 = 4.76, pKa3 = 6.40 — so it acts as a buffer in three different pH ranges. Each Ka equilibrium is independent. Phosphoric acid: pKa1 = 2.15, pKa2 = 7.20, pKa3 = 12.38 — three useful buffer ranges. The relevant pKa for each region is the one whose value sits closest to the working pH. Use the Henderson-Hasselbalch equation separately for each ionization step.

The Bicarbonate Blood Buffer (Hasselbalch's Original System). Blood is buffered primarily by HCO₃⁻ ⇌ H⁺ + CO₃²⁻ (pKa = 6.35) plus the open-system coupling to atmospheric CO₂. The Henderson-Hasselbalch form for blood: pH = 6.10 + log([HCO₃⁻] / (0.03 × pCO₂)), where 0.03 is Henry's-law solubility for CO₂ in plasma at 37 °C. Normal arterial values: [HCO₃⁻] = 24 mM, pCO₂ = 40 mmHg → pH = 6.10 + log(24/(0.03 × 40)) = 6.10 + log(20) = 6.10 + 1.30 = 7.40. ✓

When Henderson-Hasselbalch Fails. (1) Very dilute buffers (< 10⁻⁴ M): water's autoionization (Kw = 10⁻¹⁴) competes with the buffer equilibrium; solve the full proton-balance quadratic. (2) Strong acid or strong base added in excess shifts the buffer outside its useful range; the simple equation gives pH but fails to capture buffer exhaustion. (3) Activity coefficients far from 1 at high ionic strength — apparent pKa shifts by 0.2-0.5 units. (4) Specific ion effects (e.g., divalent metals binding to phosphate) — use full speciation calculations.

Key Takeaways

Henderson-Hasselbalch pH = pKa + log10([A⁻]/) is the universal buffer equation: it lets you predict pH from the acid/conjugate-base ratio and the acid's pKa. Three landmarks to memorize: when [A⁻] = , pH = pKa exactly (optimal buffering); when ratio = 10, pH = pKa + 1 (upper useful end); when ratio = 0.1, pH = pKa − 1 (lower useful end). The useful buffer range is ±1 pH unit of pKa — outside that, capacity falls dramatically. Use the ToolsACE Henderson-Hasselbalch Calculator with four concentration units, dual Ka/pKa entry, 5-band buffer-quality classification, and a 16-buffer reference comparison. Bookmark it for chemistry coursework, biochemistry buffer preparation, pharmaceutical formulation, clinical acid-base analysis, and any time you need pH from an acid/base ratio.

Frequently Asked Questions

What is the Henderson-Hasselbalch Calculator?
It computes the pH of a buffer solution using the universal acid-base equation pH = pKa + log10([A⁻]/). Inputs: conjugate-base concentration [A⁻] in M/mM/μM/nM; weak-acid concentration in same units; acid dissociation constant Ka (scientific notation) or pKa (toggle). Output: pH and pOH; the [A⁻]/ ratio and its log; the distance |pH − pKa|; 5-band buffer-quality classification (balanced / well-buffered / weak on either side / out-of-range); the closest match against 16 standard reference buffers; full step-by-step calculation breakdown.

Designed for general chemistry students, biochemistry labs preparing buffers (Tris, PBS, HEPES, MOPS, citrate, acetate), molecular biologists, pharmaceutical scientists, and clinical chemists studying blood acid-base balance. Runs entirely in your browser — no data stored.

Pro Tip: Use our Buffer Capacity Calculator to quantify how much added acid/base your buffer can absorb.

What's the Henderson-Hasselbalch equation?
pH = pKa + log10([A⁻] / ), where pH is the buffer pH, pKa = −log10(Ka) is the negative log of the acid dissociation constant, [A⁻] is the conjugate-base concentration, and is the weak-acid concentration. Three special cases: (1) when [A⁻] = , pH = pKa; (2) when [A⁻] = 10·, pH = pKa + 1; (3) when [A⁻] = 0.1·, pH = pKa − 1.
Where does the equation come from?
Direct derivation from the acid dissociation equilibrium: HA ⇌ H⁺ + A⁻, Ka = [H⁺][A⁻]/. Solve for [H⁺] = Ka·/[A⁻], take −log of both sides: pH = pKa − log(/[A⁻]) = pKa + log([A⁻]/). The whole derivation takes three lines of algebra and is worth memorizing — you can rebuild the formula any time you forget it.
Why is the buffer best when pH = pKa?
Because that's where the system can absorb both added acid AND added base most effectively. With [A⁻] = , the buffer has equal stockpiles of "acid neutralizer" (A⁻ accepts H⁺) and "base neutralizer" (HA donates H⁺). Move pH away from pKa and the smaller stockpile gets depleted faster. Mathematically, buffer capacity β = ln(10)·C·α(1−α), where α = [A⁻]/[HA+A⁻]; α(1−α) is maximized at α = 0.5, exactly at pH = pKa.
What's the "useful range" of a buffer?
±1 pH unit of pKa, or equivalently 0.1 ≤ [A⁻]/ ≤ 10. Within this range, buffer capacity stays at ≥40% of its maximum value. Outside: at ±2 pH units capacity is only ~4% of max; at ±3 units essentially zero. Always pick a buffer with pKa within 1 unit of your target pH. For pH 7.4 (physiological): HEPES (pKa 7.55), MOPS (7.20), Tris (8.07), or phosphate (pKa2 7.20) are all good choices. Acetate (pKa 4.76) at pH 7.4 would be useless — way outside its range.
How do I prepare a buffer at a specific target pH?
Solve Henderson-Hasselbalch for the [A⁻]/ ratio: ratio = 10^(pH − pKa). Then pick total buffer concentration (typically 50-200 mM) and split into the two species. Example: target pH 7.4 with HEPES (pKa 7.55), 50 mM total. Ratio = 10^(7.40 − 7.55) = 10^(−0.15) = 0.708. So [HEPES⁻]/ = 0.708, and [HEPES⁻] + = 50 mM → [HEPES⁻] = 21 mM, = 29 mM. Verify with a pH meter — small adjustments with NaOH or HCl bring you to exactly 7.40.
Why must I use the pKa at my working temperature?
Because pKa is temperature-dependent — typically shifts 0.01-0.03 per °C. Tris is notorious: ΔpKa ≈ −0.028/°C, so a Tris-HCl buffer prepared at 25 °C drifts ~0.6 pH units higher when moved to a 4 °C cold room. HEPES: −0.014/°C (moderate). Phosphate: −0.003/°C (very stable). Acetate: ~0/°C (T-independent). For temperature-sensitive applications (cold-room enzymology, 37 °C cell culture), prepare and titrate buffers at the actual working temperature, not at the bench.
Can I use H-H for polyprotic acids like phosphoric acid?
Yes — apply Henderson-Hasselbalch separately for each ionization step. Phosphoric acid has three pKas: pKa1 = 2.15 (for H₃PO₄ ⇌ H₂PO₄⁻), pKa2 = 7.20 (H₂PO₄⁻ ⇌ HPO₄²⁻), pKa3 = 12.38 (HPO₄²⁻ ⇌ PO₄³⁻). For a buffer at pH 7.4, use the pKa nearest your target — pKa2 = 7.20 — with [HPO₄²⁻] as the conjugate base and [H₂PO₄⁻] as the acid. The other equilibria are negligible at that pH. Citric acid similarly has three pKas (3.13, 4.76, 6.40); each gives a useful buffer range.
Why is my computed pH different from my measured pH?
Common reasons: (1) Activity coefficients — at high ionic strength (PBS with 0.15 M NaCl), activity coefficients differ from 1 by 0.2-0.4 units, shifting apparent pKa. (2) Wrong pKa value — your reference may quote pKa at 25 °C; you may be at 37 °C or 4 °C. (3) Stoichiometric vs equilibrium concentrations — you may have added some HA that immediately dissociates, so the actual is less than what you weighed in. (4) Carbonation — atmospheric CO₂ dissolves in alkaline buffers and lowers pH over time; degas with N₂ if precision matters. (5) Calibration drift — your pH meter electrode may need recalibration with fresh standards.
How do I use this for the bicarbonate blood buffer?
Hasselbalch's original 1916 application! For blood: pH = 6.10 + log([HCO₃⁻] / (0.03 × pCO₂)). The 0.03 factor is the Henry's-law solubility of CO₂ in plasma at 37 °C (mmol/L per mmHg). pKa1 of carbonic acid = 6.10 (apparent value in blood, accounting for hydration H₂CO₃ ⇌ CO₂ + H₂O). Normal arterial values: [HCO₃⁻] = 24 mM, pCO₂ = 40 mmHg → pH = 6.10 + log(24/1.2) = 6.10 + log(20) = 7.40. ✓ Metabolic acidosis: [HCO₃⁻] drops; pH falls. Respiratory acidosis: pCO₂ rises; pH falls. Compensation: the kidneys adjust [HCO₃⁻] to restore the 20:1 ratio.
What if my pH input is 0 or negative?
Both are physically possible! pH 0 corresponds to [H⁺] = 1 M (concentrated strong acid like 1 M HCl). pH can be slightly negative for highly concentrated strong acids (e.g., 12 M HCl has pH ~ −1.1). Henderson-Hasselbalch still applies in principle, but at very low pH the assumption that >> [H⁺] fails — you need to account for [H⁺] coming from the strong acid itself, not just the weak acid dissociation. The calculator allows pH from −2 to 16; values outside that range trigger an error to flag input mistakes.

Author Spotlight

The ToolsACE Team - ToolsACE.io Team

The ToolsACE Team

Our chemistry tools team implements the Henderson-Hasselbalch equation — the textbook formula derived independently by Lawrence Henderson (1908) and Karl Albert Hasselbalch (1916, in his work on blood acid-base chemistry) — that lets any chemist or biologist compute buffer pH from acid/base concentrations and the acid's pKa. The calculator handles four concentration units (M, mM, μM, nM) for both the conjugate base [A⁻] and the weak acid [HA], plus dual entry for the dissociation constant (Ka in scientific notation, or its negative log pKa) with toggle. Output includes pH and pOH, the [A⁻]/[HA] ratio, the distance from pKa (smaller = better buffering), a 5-band buffer-quality classification (balanced / well-buffered / weak on either side / out-of-range), and the closest match against a 16-buffer reference table covering the full chemistry/biology pH range from glycine (pKa 2.34) through phosphate (pKa3 12.38) — including HEPES, MOPS, Tris, PBS, acetate, citrate, MES, ammonia, and the bicarbonate blood buffer.

Acid-Base EquilibriaBuffer ChemistrySoftware Engineering Team

Disclaimer

Henderson-Hasselbalch is exact for ideal solutions but real buffers deviate by 0.1-0.5 pH units due to ionic strength effects (Debye-Hückel activity coefficients). Most accurate when 0.1 ≤ [A⁻]/ ≤ 10 (working pH within ±1 unit of pKa). For dilute buffers (< 1 mM), water autoionization competes with the buffer equilibrium — solve the full quadratic instead. pKa values shift 0.01-0.03 per °C; always use the pKa at your working temperature. Atmospheric CO₂ gradually acidifies alkaline buffers — degas with N₂ for precision.