Titration Lab Simulator
A virtual titration: run titrant from a burette drop by drop, watch the indicator and the pH meter, then compare your endpoint with the equivalence point.
Simulator
- Your titration
- Equivalence
- Neutral, pH 7
- Burette reading Titrant run in from the burette so far. One drop is 0.05 mL.
- 0.00 mL
- pH meter The fully mixed flask, solved exactly from the charge balance at 25 °C.
- 2.88
- Flask colour Phenolphthalein is colourless below pH 8.3 and pink above pH 10.0.
- colourless
- Equivalence point Where the titrant matches what is in the flask mole for mole: 0.100 M × 25.0 mL / 0.100 M. The pH there is 8.73.
- 25.00 mL
- Colour changes Where the pH crosses the two ends of the indicator’s range. A sharp endpoint needs both inside a drop or two of equivalence.
- 24.99 to 25.05 mL
- Your endpoint Mark it at the drop where the colour changes and stays changed.
- not marked
- Titration error Your endpoint minus the equivalence point, once you have marked one.
- n/a
- Concentration found What your endpoint says is in the flask, once you have marked one.
- n/a
Citing this tool
Last updated . Add the date you accessed it as well, which a citation of a page that can change asks for. If a specific result matters, cite the permalink from the tool’s share row instead of this page: it reproduces the exact parameters.
The equation
Indicator equilibrium, after Henderson (1908) and Hasselbalch (1917)
A virtual titration, drop by drop
This titration simulator is a lab bench in the browser: titrant runs from a 50 mL burette into
the flask one drop at a time, the indicator colours the flask, a pH meter reads the exact
equilibrium pH after every drop, and the endpoint you mark is set against the equivalence
point, V_eq = c × V / c_t, the volume at which the titrant has exactly matched what
was in the flask. Here c and V are the flask’s concentration and volume and c_t is the
titrant’s concentration.
A titration finds the concentration of a solution by adding a second solution of known concentration until the reaction between them is just complete, which an indicator shows as a change of colour. The flask holds an acid or a base that gives up or takes one proton: a weak acid such as ethanoic acid, hydrochloric acid, a weak base such as ammonia, or sodium hydroxide. An acid is titrated with sodium hydroxide from the burette and a base with hydrochloric acid. There are 5 indicators to choose from, or none, when only the meter shows the change.
How to use the bench
- Set up the flask. Choose what is in it, its concentration and volume, the burette’s concentration and an indicator. The defaults are the flask the Titration Curve Calculator opens with: 25.0 mL of 0.100 M ethanoic acid against 0.100 M sodium hydroxide, here with phenolphthalein.
- Do a rough titration. Open the tap fully and watch the meter and the curve under the bench. Close it when the colour where each drop lands starts to linger.
- Finish drop by drop. Add single drops, 0.05 mL each, until the colour changes and stays. Mark the endpoint there.
- Read the result. The readouts give the titration error, your endpoint minus the equivalence point, and the concentration your endpoint implies. Change the indicator to see the same point in another colour, or start again and titrate with it.
Worked example: ethanoic acid with phenolphthalein
25.00 mL of 0.100 M ethanoic acid, pKa 4.76, is titrated with 0.100 M sodium hydroxide.
- Equivalence:
V_eq = 0.100 × 25.00 / 0.100 = 25.00 mL. - Before any base goes in, the meter reads pH 2.88. Half way, at 12.50 mL, it reads 4.76, the pKa, which is how a pKa is measured.
- At 24.95 mL, one drop short, the pH is 7.46 and phenolphthalein is still colourless.
- The next drop takes the reading to 25.00 mL and the pH to 8.73, and the flask turns faint pink and stays that way. That is the endpoint.
- One more drop, at 25.05 mL, gives pH 10.00 and a clear pink.
Marked at 25.00 mL, the endpoint gives c = 0.100 × 25.00 / 25.00 = 0.100 M, the
true value. Marked a drop late, at 25.05 mL, it gives 0.1002 M, 0.2 percent high, which is what
one drop is worth against a 25 mL titre.
Now repeat with methyl orange. Its change from red to yellow, pH 3.1 to 4.4, is spread between
0.33 and 7.58 mL, long before the jump, and it is half way to yellow at 2.18 mL. An
endpoint read there gives c = 0.100 × 2.18 / 25.00 = 0.00872 M, 91 percent low.
Endpoint and equivalence point
The equivalence point is a fact about the chemistry: the volume at which the titrant added has exactly matched what was in the flask, mole for mole. The endpoint is a decision: the volume at which you stop because the indicator has changed. The difference between them is the titration error, and choosing the indicator is how you keep it smaller than a drop.
An indicator is itself a weak acid whose two forms have different colours, so its colour
follows the pH through pH = pK_In + log₁₀([In⁻]/[HIn]), where pK_In is the
indicator’s own pKa. The eye sees the change over a range of about one and a half pH units, 8.3
to 10.0 for phenolphthalein and 3.1 to 4.4 for methyl orange, so an indicator gives a sharp
endpoint only where the flask’s pH crosses its whole range within a drop or two. That happens on
the steep jump around equivalence and nowhere else.
Choosing the indicator
- Weak acid with sodium hydroxide. Equivalence is alkaline, pH 8.73 in the default flask, and the jump runs from pH 7.16 at 24.90 mL to 10.30 at 25.10 mL. Phenolphthalein, 8.3 to 10.0, changes inside it.
- Weak base with hydrochloric acid. Equivalence is acidic, pH 5.27 for 0.100 M ammonia, and the jump runs down from pH 6.84 at 24.90 mL to 3.70 at 25.10 mL. Methyl orange changes between 25.02 and 25.40 mL, just after equivalence, while phenolphthalein has faded long before, between 3.67 and 22.42 mL. Methyl red, which changes from pH 4.2 to 6.3, straddles the equivalence pH and would be sharper still, but it is not on the bench, which keeps to the Titration Curve Calculator’s list. Ammonia’s pKb, 4.76, matches ethanoic acid’s pKa, so this curve is the default one turned upside down: at every volume its pH is 14 minus the other’s.
- Strong acid with strong base. The jump runs from pH 4.00 at 24.95 mL to 10.00 at 25.05 mL, so bromothymol blue is green at 25.00 mL itself, phenolphthalein turns pink with the first drop past it, and even methyl orange is half changed less than two drops early.
- Sodium hydroxide in the flask, hydrochloric acid in the burette. Phenolphthalein goes from pink to colourless in the drop that takes the reading from 24.95 to 25.00 mL.
The Titration Curve Calculator draws the whole curve for any pKa at once and names the indicator whose range contains the equivalence pH, and the Henderson-Hasselbalch Calculator works the flat buffer region either side of half equivalence.
Why the colour flashes before it stays
Each drop of sodium hydroxide is briefly in excess where it lands. Around it the solution is alkaline and phenolphthalein turns pink, until swirling spreads the drop into acid that neutralises it and the pink fades. Early in the titration that takes a fraction of a second. Close to the endpoint there is so little acid left that the pink from each drop spreads through most of the flask before it fades, and the next drop leaves the whole flask pink. A flash that lingers is the sign to close the tap and go on drop by drop.
The bench draws the flash from the same exact chemistry, solved for the drop and the share of the flask it has reached, but how fast a drop spreads is an assumed rate rather than a measurement. The meter and every readout use the fully mixed flask. A faint pink that fades slowly, long after the last drop, is a different effect, carbon dioxide from the air dissolving into the flask, and the bench leaves it out.
Reading the burette
A 50 mL burette is marked every 0.1 mL and read at the bottom of the meniscus, with your eye level with it; on all but the narrowest phones the magnified window beside the tube shows the scale there. A real titration records the reading before and after and subtracts, and this bench starts every run at 0.00 mL, so its reading is the titre. A drop is about 0.05 mL, so a titre can be no better than the drop you stopped on, and that is why a titre of about 25 mL is worth aiming for: one drop is then 0.2 percent of it. Turn the result into a concentration with the Titration Calculator, which also handles mole ratios other than one to one.
What this bench leaves out
- Only acids and bases that give up or take one proton. Carbonic acid and sodium carbonate, with two, show two equivalence points and need coupled equilibria, and sulfuric acid needs twice the sodium hydroxide, which the Titration Calculator’s mole ratio handles.
- The titrant is always a strong acid or base, so a weak acid against a weak base, whose curve has no sharp jump, is not offered.
- Concentrations stand in for activities, and everything is at 25 °C, where the ion product of water is 1.0 × 10⁻¹⁴.
- The indicator is taken to be too dilute to use up any titrant, and neither the sodium hydroxide nor the flask takes up carbon dioxide from the air, which in a real titration adds carbonate to the titrant and slowly fades a phenolphthalein endpoint.
- Every drop is exactly 0.05 mL and the burette and the meter are perfect, so the only error left is where you choose to stop, and a repeat gives the same titre where a real one would scatter. Phenolphthalein’s slow fading in strongly alkaline solution, above about pH 12, is not modelled either.
Common mistakes
- Leaving the tap wide open to the end. At a millilitre a second the jump from 24.90 to 25.10 mL passes in a fifth of a second, and the endpoint is gone before the colour can be judged.
- Taking the first flash as the endpoint. A colour that fades is a drop not yet mixed in. The endpoint is the first drop after which the colour stays.
- Choosing the indicator by habit. Methyl orange in the default ethanoic acid flask reads 91 percent low.
- Expecting equivalence at pH 7. It is 8.73 for the default ethanoic acid and 5.27 for ammonia; only a strong acid with a strong base is neutral there. The pH Calculator gives the pH of the flask before you start.
- Reading the top of the meniscus. Read the bottom of the curve, with your eye level with it.
- Forgetting the mole ratio. The concentration here assumes one to one. For sulfuric acid, which takes two hydroxides for each acid molecule, enter the ratio in the Titration Calculator, and practise the arithmetic with the Chemistry Practice Problems.
Model and assumptions
- Method
- Exact expression, no time stepping
- Repeatability
- Deterministic. The same link gives the same numbers on any machine.
What it assumes
- The pH is the exact root of the charge balance for the fully mixed flask, including water’s own ions, solved by the same routine as the Titration Curve Calculator.
- A base in the flask is solved as the mirror image of an acid, which gives the pOH, so the pH is 14 minus it; that is exact because the ion product of water is taken as 10⁻¹⁴ at 25 °C.
- Concentrations stand in for activities, the analyte gives up or takes one proton, and the titrant is a fully dissociated strong acid or base.
- Each indicator is drawn half changed at the middle of its listed pH range, so its colour starts to turn at the bottom of the range and has nearly finished at the top.
- A drop is 0.05 mL, the tap runs at 1 mL a second when fully open, and volumes are counted in whole hundredths of a millilitre so a reading never drifts.
- The flash where a drop lands follows an assumed mixing rate chosen by eye, and no reading, curve or error on the page depends on it.
Where it stops holding. Acids or bases that give up or take more than one proton, a weak acid titrated with a weak base, concentrated solutions where activities matter, and temperatures far from 25 °C.
Numerical accuracy
No time stepping, so nothing accumulates: the clock only paces the drops. The pH is not a formula but the root of the charge balance, found by repeatedly halving a bracket on pH until it is settled to the limit of double precision, far below the two decimals the meter shows, and the volumes at which the colour starts and finishes changing are found the same way on the volume. The burette reading is exact, counted in whole hundredths of a millilitre. The one thing drawn rather than solved is the flash where a drop lands, which follows an assumed mixing rate, and no number on the page is read from it.
Common questions
Why is my endpoint not exactly at the equivalence point?
Because an indicator changes colour over a range of pH rather than at the moment the moles match, so the endpoint, the volume at which you see the colour change, can fall before or after the equivalence point, the volume at which the titrant has exactly matched what is in the flask. With phenolphthalein in 25.00 mL of 0.100 M ethanoic acid against 0.100 M sodium hydroxide, the change from pH 8.3 to 10.0 falls between 24.99 and 25.05 mL, so a careful endpoint lands within a drop of equivalence at 25.00 mL. Methyl orange in the same flask changes between 0.33 and 7.58 mL, long before it.
How do I calculate the concentration from a titration?
Multiply the titrant’s concentration by the volume you added to reach the endpoint, then divide by the volume in the flask: for a one-to-one reaction, c = c_t × V_t / V. An endpoint of 25.05 mL of 0.100 M sodium hydroxide into 25.00 mL of acid gives 0.100 × 25.05 / 25.00 = 0.1002 M, 0.2 percent above the true 0.100 M because it is one drop past equivalence. Where the balanced equation is not one-to-one, as for sulfuric acid with sodium hydroxide, include the mole ratio, which the Titration Calculator does.
Why does the pink colour appear and then fade?
Because each drop of sodium hydroxide is briefly in excess where it lands, so the solution around it turns alkaline and the phenolphthalein there turns pink until swirling mixes the drop into acid that neutralises it. Near the endpoint there is so little acid left that the pink spreads further and takes longer to fade, which is the signal to slow to single drops, and the endpoint is the first drop after which the colour stays. A faint pink that fades slowly, long after the last drop, is a different effect: carbon dioxide from the air dissolving into the flask, which the bench leaves out. The bench draws the flash from the same chemistry with an assumed mixing rate, and its meter always reads the fully mixed flask.
Why use methyl orange for ammonia but phenolphthalein for ethanoic acid?
Because each indicator has to change on the steep part of its own titration curve, and the two curves are steep in different places. Ethanoic acid, 25.00 mL at 0.100 M, titrated with 0.100 M sodium hydroxide rises from pH 7.16 at 24.90 mL to 10.30 at 25.10 mL, which is where phenolphthalein changes. The same volume of 0.100 M ammonia titrated with 0.100 M hydrochloric acid falls from pH 6.84 to 3.70 over the same volumes, reaching 5.27 at equivalence, so phenolphthalein has already faded between 3.67 and 22.42 mL, while methyl orange changes between 25.02 and 25.40 mL, just after equivalence at 25.00 mL.
How does the bench work out the pH meter reading?
By solving the full charge balance for the flask after every drop, the same exact calculation the Titration Curve Calculator draws its curves with, including water’s own ions and taking concentrations as activities at 25 °C. For an acid in the flask the balance is [H⁺] + [Na⁺] = [A⁻] + [OH⁻]. A base in the flask gives a balance of exactly the same form with hydroxide in place of hydrogen ions, so the same solver returns the pOH and the pH is 14 minus it. The meter reads the flask as if it were fully mixed, to two decimal places.