Significant figures (sig figs, s.f.) are the digits in a number that carry real information about its size. If you measure a rod as 2.35 m with a tape measure, you know it to about the nearest centimetre. Writing 2.350000 m would claim you'd measured it to a micrometre, which you didn't.
Counting significant figures
- Non-zero digits always count. 247 has 3.
- Zeros between non-zero digits count. 105 has 3; 2.007 has 4.
- Leading zeros never count. They only show where the decimal point is. 0.00450 has 3 (the 4, the 5 and the final 0).
- Trailing zeros after a decimal point count. 3.0 has 2; 4.500 has 4. Someone wrote them deliberately.
- Trailing zeros in a whole number are ambiguous. Is 1200 known to 2, 3 or 4 s.f.? You can't tell. Write it in scientific notation to be clear: 1.2 × 10³ (2 s.f.) or 1.200 × 10³ (4 s.f.).
| Number | Sig figs |
|---|---|
| 0.0072 | 2 |
| 40.05 | 4 |
| 6.020 × 10²³ | 4 |
| 500 | 1, 2 or 3 (ambiguous) |
| 500. | 3 (the trailing point says so) |
Exact numbers, such as counted items (12 bolts) or defined conversions (1 inch = 2.54 cm exactly), have unlimited significant figures and never limit your answer.
Multiplying and dividing: keep the fewest significant figures
The answer can't be more precise, in relative terms, than the least precise input.
A plate measures 12.5 cm (3 s.f.) by 4.2 cm (2 s.f.).
Area = 12.5 × 4.2 = 52.5 cm² → report 53 cm² (2 s.f.)
Also true of powers and roots: √(2.0) = 1.4, not 1.41421356.
Adding and subtracting: keep the fewest decimal places
Here it's the absolute precision that matters, so you line up the decimal points instead of counting digits.
12.52 m + 1.4 m = 13.92 m → report 13.9 m
The 1.4 is only known to the nearest 0.1 m, so the total can't be known any better than that.
Subtraction can destroy significant figures
Two measurements each with 4 significant figures can produce a difference with only one:
15.37 g − 15.32 g = 0.05 g (1 s.f.)
If each mass is uncertain by ±0.01 g, the difference is 0.05 ± 0.02 g, a 40% uncertainty. Nothing went wrong with the arithmetic; the information simply wasn't there. In experiments, this is a reason to design measurements so you're not taking the small difference of two large readings. The same effect inside a computer is called catastrophic cancellation, covered in the precision guide.
Only round at the end
This is the single most important habit. Rounding at each step introduces a small error every time, and they add up.
A circular floor of radius 2.35 m is to be coated at £12.45 per m².
Area = π × 2.35² = 17.3494… m²
Cost = 17.3494… × 12.45 = £216.00 ✓ rounded once, at the end
Round the area to 2 s.f. first: 17 × 12.45 = £211.65 ✗
Round the area to 1 d.p. first: 17.3 × 12.45 = £215.39 ✗
Three slightly different answers from the same inputs. Keep the full value in the calculator (use the History panel or the memory keys) and round only the final answer.
A good rule is to carry at least two more significant figures than you plan to report through every intermediate step, or simply keep everything in the calculator.
How many figures should you report?
- Match your least precise measurement. Three-figure inputs give a three-figure answer, roughly.
- In engineering, match the tolerance. If a part can be made to ±0.1 mm, a dimension of 47.3 mm is meaningful and 47.3182 mm isn't.
- If you state an uncertainty, round the value to the same decimal place. 9.81 ± 0.03 m/s², not 9.8127 ± 0.03.
- In exams, follow the instruction in the question. If there isn't one, 3 s.f. is the usual expectation in UK GCSE and A-level maths and physics.
A block has mass 25.3 g and measures 2.11 cm × 3.05 cm × 1.52 cm. Its density is
V = 2.11 × 3.05 × 1.52 = 9.78196 cm³ (keep it all)
ρ = 25.3 / 9.78196 = 2.58639… g/cm³
→ 2.59 g/cm³ (3 s.f.)
All four inputs have 3 s.f., so the answer gets 3. That density is close to aluminium (2.70 g/cm³) but not equal, which is useful information you'd lose by quoting "about 3".
Rounding a 5: up, or to even?
The rule most people learn is "5 rounds up": 2.45 → 2.5. Over many values, always rounding 5s up nudges totals slightly upwards. Some fields use round half to even (also called banker's rounding) instead: 2.45 → 2.4, 2.55 → 2.6, so the errors cancel on average.
Software doesn't agree. Excel's ROUND rounds halves away from zero; Python's round() rounds half to even, so round(2.5) is 2. Also, many decimals that look like exact halves aren't stored exactly in binary, so round(2.675, 2) gives 2.67: the stored value is really 2.67499999… For reports, either rule is fine; just be consistent.