Titration Curve Simulator

Plot the pH curve of an acid–base titration. Every point is the exact charge balance solved for [H⁺], with the equivalence points, half-equivalence, buffer region, first-derivative curve and indicator ranges marked, and a mode that works out a concentration from your endpoint volume.

Simulator Science & Engineering Updated Oct 4, 2026
How to Use
  1. Pick the titration: strong acid with strong base, weak acid with strong base, weak base with strong acid, strong base with strong acid, or a polyprotic acid or base such as carbonic acid or sodium carbonate.
  2. Enter the volume and concentration of the solution in the flask and the concentration of the titrant in the burette. For a weak acid or base give its pKa (for a base, the pKa of its conjugate acid, 9.25 for ammonia).
  3. Choose an indicator to shade its colour-change range on the curve and see whether it suits this titration. Tick the derivative box to plot ΔpH/ΔV, whose peak marks the endpoint.
  4. Enter a titrant volume as the chosen point. Show Work gives the moles, the species present, the charge balance and the solved [H⁺] at that volume.
  5. For a lab result, choose Find concentration: enter the endpoint volume you measured and the calculator works back to the analyte concentration, and to g/L and % w/v if you give the molar mass.
Input
g/mol, for g/L and %
typical ranges
plot ΔpH/ΔV to find the endpoint
Presets
Titration Curve
At the chosen volume
—
Equivalence volume
—
Equivalence point
—
Starting point
—

Worked Example

Acetic acid half-way to equivalence. 25.0 mL of 0.100 M acetic acid (pKa 4.76) holds 2.500 mmol, so 0.100 M NaOH reaches equivalence at 2.500 ÷ 0.100 = 25.00 mL. After 12.50 mL, 1.250 mmol has become acetate and 1.250 mmol is still acetic acid, in 37.50 mL. The charge balance [H⁺] + [Na⁺] = [OH⁻] + [A⁻], with [Na⁺] = 0.03333 M and [A⁻] = 0.06667 × Ka ÷ ([H⁺] + Ka), solves to [H⁺] = 1.736 × 10⁻⁵ M, so pH 4.76, the pKa, as Henderson–Hasselbalch predicts.

Vinegar from an endpoint. 5.00 mL of vinegar needs 8.40 mL of 0.500 M NaOH to turn phenolphthalein pink. That is 0.500 × 8.40 = 4.20 mmol of NaOH, so 4.20 mmol of acetic acid, and 4.20 ÷ 5.00 = 0.840 M. Times 60.052 g/mol gives 50.44 g/L, or 5.04% w/v.

The common mistake: assuming every equivalence point is at pH 7. Choosing bromothymol blue (6.0–7.6, centred near 7) for acetic acid against NaOH, its colour changes at 24.77 mL, 0.9% short, and methyl orange would change at only 2.18 mL. The true equivalence pH is 8.73, because the acetate formed is a weak base, so phenolphthalein (8.2–10.0) is the right choice: it changes at 25.01 mL against a true 25.00 mL.

Show Work

Enter the volumes and concentrations to see the working at the chosen point.

Formulas

Equivalence volume
Veq = k × CaVa ÷ Ct
k = 1, 2, 3 for the first, second and third protons
Charge balance
[H⁺] + [Na⁺] = [OH⁻] + [A⁻] + 2[A²⁻] …
Solved for [H⁺] at every volume; Na⁺ and Cl⁻ are diluted by Va ÷ (Va + V)
Weak acid fraction
[A⁻] = C × Ka ÷ ([H⁺] + Ka)
Polyprotic: αⱼ ∝ [H⁺]n−j K₁…Kⱼ for each form
Water
[OH⁻] = Kw ÷ [H⁺], Kw = 1.0 × 10⁻¹⁴
At 25 °C
Half-equivalence
pH = pKa + log₁₀([A⁻] ÷ [HA]) = pKa
Henderson–Hasselbalch with equal amounts; buffer region pKa ± 1
Concentration from an endpoint
Ca = Ct × Vep ÷ (k × Va)
Then g/L = Ca × molar mass, and % w/v = g/L ÷ 10

From the Burette to the pH Curve

Measuring a chemical by the volume of a solution that reacts with it began in industry. François-Antoine-Henri Descroizilles built an early burette around 1791 to test bleaching liquors, and Joseph Louis Gay-Lussac refined the method in the 1820s and gave us the words burette and pipette. Karl Friedrich Mohr’s 1855 textbook on titration methods, and his burette with a pinch clamp at the bottom, made volumetric analysis a routine laboratory technique.

Indicators came from the dye chemistry of the same century: phenolphthalein was first made by Adolf von Baeyer in 1871. Once Søren Sørensen defined pH in 1909, the shape of a titration curve could be plotted and explained, and choosing an indicator became a question of matching its colour-change range to the steep part of the curve. The pKa values in the presets (acetic acid 4.76, ammonium 9.25, carbonic acid 6.35 and 10.33) are standard 25 °C values from data tables such as the CRC Handbook; the indicator ranges are the typical textbook ones and vary slightly between sources.

About This Tool

This simulator draws the pH curve of an acid–base titration by solving the full charge balance for [H⁺] at every volume, by bisection on log₁₀[H⁺]. It never switches between approximate formulas for the start, the buffer region, the equivalence point and the excess, so the curve is continuous and correct even for dilute solutions, weak acids close to the edge of titratability and polyprotic acids whose steps overlap. It marks each equivalence point, the half-equivalence points where pH ≈ pKa, the buffer regions and the colour-change range of the indicator you pick, and says whether that indicator suits the titration.

It assumes 25 °C, ideal solutions and a closed flask; real carbonate titrations lose some CO₂, and above about 0.1 M activity effects shift measured pH slightly. Everything runs in your browser; nothing is sent anywhere.

Related tools: pH Calculator, Chemical Equilibrium (ICE Table) Calculator, and Molarity Calculator.

Frequently Asked Questions

How do you calculate the pH during a titration?

Work out the moles of everything, then solve the charge balance for [H⁺]. 25.0 mL of 0.100 M HCl with 12.50 mL of 0.100 M NaOH leaves 1.250 mmol of acid in 37.50 mL, so [H⁺] = 0.03333 M and pH = 1.48. This calculator solves the full charge balance at every point, so it needs no separate formula for each region.

Why is the equivalence point of a weak acid titration above pH 7?

At equivalence the flask holds the conjugate base, which is itself weakly basic. Titrating 25.0 mL of 0.100 M acetic acid with 0.100 M NaOH gives 0.0500 M sodium acetate at 25.00 mL, and its reaction with water makes the pH 8.73. For ammonia titrated with HCl the ammonium ion makes the equivalence point acidic, pH 5.28.

How do I choose an indicator for a titration?

Pick one whose colour change falls on the steep part of the curve, ideally around the equivalence pH. For acetic acid (equivalence pH 8.73) phenolphthalein, 8.2–10.0, changes at 25.01 mL against a true 25.00 mL; methyl orange, 3.1–4.4, would change at 2.18 mL. For ammonia with HCl, methyl red changes at 25.00 mL, but phenolphthalein at 14.63 mL.

Why does pH equal pKa at the half-equivalence point?

Half of the weak acid has been turned into its conjugate base, so [A⁻] = [HA] and the log term in pH = pKa + log₁₀([A⁻] ÷ [HA]) is zero. For 0.100 M acetic acid at 12.50 mL of NaOH the exact pH is 4.76, the pKa. Reading pH at half-equivalence is how pKa values are measured.

How do I find the concentration of an acid from a titration?

Moles of titrant = concentration × endpoint volume, then use the mole ratio. 5.00 mL of vinegar needing 8.40 mL of 0.500 M NaOH contains 4.20 mmol of acetic acid, so its concentration is 4.20 ÷ 5.00 = 0.840 M. With the molar mass 60.052 g/mol that is 50.44 g/L, or 5.04% w/v.

How do I use the Titration Curve Simulator?

Simply type your numbers and read the result, which refreshes the instant you change something. There is nothing to submit and nothing to wait for.

Is it free? Does it work without internet?

Yes to both. It is free with no sign-up, and once the page has loaded it keeps working even with no internet.

Where does my data go?

Nowhere — every calculation runs on your own device. Nothing you enter is uploaded, logged, or stored.

Common Use Cases

Vinegar analysis

5.00 mL of vinegar needing 8.40 mL of 0.500 M NaOH is 0.840 M acetic acid, 50.44 g/L or 5.04% w/v.

Washing soda (sodium carbonate)

25.0 mL of 0.100 M Na₂CO₃ with 0.100 M HCl has two endpoints: 25.00 mL at pH 8.34 and 50.00 mL at pH 3.91.

Household ammonia

0.100 M ammonia starts at pH 11.12 and reaches equivalence at pH 5.28, so methyl red suits it and phenolphthalein does not.

Teaching the steep jump

For 0.100 M HCl and NaOH the pH goes from 3.70 at 24.90 mL to 10.30 at 25.10 mL: 0.20 mL, about four drops, moves it 6.6 units.

Measuring a pKa

The pH at half-equivalence is the pKa: 4.76 for acetic acid at 12.50 mL of 0.100 M NaOH.

Very dilute samples

1.0 × 10⁻⁵ M HCl titrated with 1.0 × 10⁻⁵ M NaOH only climbs from pH 5.00 to 7.00 at equivalence, too gentle for any colour indicator; use a pH meter.

Last updated: