Water Hardness Calculations — Expressing Everything as CaCO₃
Hard water is water that carries dissolved calcium and magnesium salts. The chemistry is simple, but the calculation confuses students for one reason: hardness is never reported as the salt actually present. It is always converted into the mass of calcium carbonate that would cause the same hardness, and quoted in parts per million (ppm). This page shows why that conversion exists, the single formula it needs, and four fully computed examples including a laboratory EDTA titration.
Why report hardness "as CaCO₃"?
A real water sample can contain Ca(HCO₃)₂, Mg(HCO₃)₂, CaSO₄ and MgCl₂ all at once. Adding their masses together would be meaningless, because equal masses of different salts do not cause equal hardness — they have different molar masses, so they supply different numbers of ions. Every hardness-causing substance is therefore converted into an equivalent amount of CaCO₃ first, and only then are the numbers added.
CaCO₃ was chosen for two practical reasons. Its molar mass is almost exactly 100 g/mol (40.078 + 12.011 + 3 × 15.999 = 100.086 g/mol), which keeps the arithmetic easy, and it is the solid that actually deposits as scale inside kettles, geysers and boilers.
The formula
Hardness in ppm = milligrams of CaCO₃ equivalent per litre of water
The second line works because one litre of a dilute aqueous solution has a mass very close to 1 kg = 10⁶ mg. So 1 mg of solute in 1 L of water is one part in a million. The identity 1 ppm = 1 mg/L holds only for dilute water samples, where the density is effectively 1.00 g/mL. For brine, or for any non-aqueous solvent, that shortcut fails and you must go back to the definition of ppm as a mass ratio.
Two routes that must agree
Textbooks present the conversion in two ways. Both are correct, provided you do not mix them:
- Molar-mass route: multiply the mass by 100 ÷ (molar mass of the substance). This is the route used throughout this article.
- Equivalent route: multiply the mass by 50 ÷ (equivalent mass of the substance), where 50 g/eq is the equivalent mass of CaCO₃ — that is 100.086 ÷ 2, because Ca²⁺ carries two units of charge.
Divide by a molar mass but multiply by 50, or divide by an equivalent mass but multiply by 100, and your answer is out by a factor of two. That single slip accounts for a large share of the lost marks in this topic.
Worked example 1 — from dissolved salts
A water sample contains 16.2 mg/L of Ca(HCO₃)₂ and 7.3 mg/L of Mg(HCO₃)₂. Find the total hardness in ppm as CaCO₃.
Step 1 — molar masses.
One HCO₃ group: 1.008 + 12.011 + (3 × 15.999) = 1.008 + 12.011 + 47.997 = 61.016
M[Ca(HCO₃)₂] = 40.078 + (2 × 61.016) = 40.078 + 122.032 = 162.11 g/mol
M[Mg(HCO₃)₂] = 24.305 + (2 × 61.016) = 24.305 + 122.032 = 146.34 g/mol
Step 2 — convert each to its CaCO₃ equivalent.
Ca(HCO₃)₂: 16.2 × (100 ÷ 162.11) = 16.2 × 0.61687 = 9.99 mg/L
Mg(HCO₃)₂: 7.3 × (100 ÷ 146.34) = 7.3 × 0.68334 = 4.99 mg/L
Step 3 — add them.
Total hardness = 9.99 + 4.99 = 14.98 ≈ 15.0 ppm as CaCO₃
Both salts here are bicarbonates, so all 15 ppm is temporary hardness and would be removed by boiling the water.
Worked example 2 — from ion concentrations
An analysis reports Ca²⁺ = 48 mg/L and Mg²⁺ = 12 mg/L. Find the total hardness.
The hardness-causing substance is now the bare ion, so the atomic mass goes in the
denominator:
Ca²⁺: 48 × (100.09 ÷ 40.078) = 48 × 2.4974 = 119.87 mg/L as CaCO₃
Mg²⁺: 12 × (100.09 ÷ 24.305) = 12 × 4.1181 = 49.42 mg/L as CaCO₃
Total = 119.87 + 49.42 = 169.3 ≈ 169 ppm as CaCO₃
Notice how much larger the magnesium conversion factor is. Milligram for milligram, Mg²⁺ causes about 1.65 times as much hardness as Ca²⁺ — not because it is chemically more aggressive, but simply because it is the lighter atom, so the same mass contains more ions.
Worked example 3 — from an EDTA titration
In the laboratory, hardness is measured by titrating the water against a standard EDTA solution using Eriochrome Black T indicator, with the sample buffered to about pH 10. EDTA is a hexadentate ligand: one EDTA molecule wraps around one metal ion, so it forms a 1 : 1 complex with Ca²⁺ and with Mg²⁺ alike. That is what keeps this calculation short.
100 mL of a water sample needs 12.5 mL of 0.010 M EDTA to reach the end point. Find the total hardness in ppm as CaCO₃.
Step 1 — moles of EDTA used.
n = M × V = 0.010 mol/L × 0.0125 L = 1.25 × 10⁻⁴ mol
Step 2 — moles of hardness ions. The complex is 1 : 1, so n(Ca²⁺ + Mg²⁺) = 1.25 × 10⁻⁴ mol.
Step 3 — express that as CaCO₃.
mass = 1.25 × 10⁻⁴ mol × 100.09 g/mol = 1.2511 × 10⁻² g = 12.51 mg
Step 4 — scale to one litre. Those 12.51 mg came from 100 mL = 0.100 L,
so
hardness = 12.51 ÷ 0.100 = 125.1 ≈ 125 ppm as CaCO₃
The titration cannot tell you how much of this is calcium and how much is magnesium. To separate them, a second sample is titrated at about pH 12, where Mg(OH)₂ precipitates and only the calcium is measured; magnesium hardness is then the difference.
Worked example 4 — splitting temporary and permanent hardness
A sample has a total hardness of 250 ppm. After boiling and filtering off the precipitate, the filtrate has a hardness of 90 ppm. Find each type.
Boiling decomposes only the bicarbonates:
Ca(HCO₃)₂ → CaCO₃↓ + H₂O + CO₂↑
Whatever survives boiling must be sulphate or chloride, i.e. permanent hardness.
Permanent hardness = 90 ppm
Temporary hardness = 250 − 90 = 160 ppm
Reading the number
Different agencies publish different hardness bands, and they do not all draw the lines in the same place — always use the scale your syllabus or question supplies. A commonly used set of descriptions is below; treat it as a guide, not a legal limit.
| Hardness (ppm as CaCO₃) | Common description | Practical effect |
|---|---|---|
| Below about 60 | Soft | Soap lathers easily, very little scale |
| About 60–120 | Moderately hard | Slight scale in kettles and pipes |
| About 120–180 | Hard | Noticeable scale, more soap needed |
| Above about 180 | Very hard | Heavy boiler scale, softening usually needed |
Common mistakes that cost marks
- Reporting the salt mass as the hardness. 16.2 mg/L of Ca(HCO₃)₂ is not 16.2 ppm of hardness — it is 9.99 ppm as CaCO₃. The conversion is the question.
- Mixing the two routes. Use 100 with a molar mass, or 50 with an equivalent mass. Any other pairing changes the answer by a factor of two.
- Forgetting to scale a titration to one litre. In example 3 the 12.51 mg came from 100 mL; dividing by 0.100 L is a compulsory step, not a refinement.
- Assuming EDTA reacts 1 : 2 with Ca²⁺. It is hexadentate and binds a single metal ion, so the ratio is 1 : 1 whatever the charge on the ion.
- Using 1 ppm = 1 mg/L for a concentrated solution. That identity comes from the density of water being 1.00 g/mL and is a dilute-solution approximation.
- Confusing "as CaCO₃" with "as Ca". Some data sheets report calcium hardness "as Ca", which differs by the factor 100.09 ÷ 40.078 = 2.497. Always read the units line before you use a number.
Where this appears in exams
| Level | Typical question |
|---|---|
| School water and environmental chemistry | Temporary vs permanent hardness, why boiling works, softening methods |
| Practical and project work | EDTA titration of a tap-water sample and the ppm calculation from it |
| First-year engineering chemistry | Full CaCO₃-equivalent tables, lime–soda and zeolite softening loads |
| Competitive environmental-chemistry sections | Converting water-quality data between mg/L, ppm and mol/L |
The slow part of every hardness sum is the molar mass. Ca(HCO₃)₂, Mg(HCO₃)₂, CaSO₄, MgCl₂ — type the formula and the Molar Mass & Composition calculator returns the value with an element-wise breakdown, leaving only the factor 100 ÷ M to apply.
Open the Molar Mass Calculator →Working through the solutions and concentration chapters? ABC Chemistry teaches Class 11–12 chemistry at its Gurugram centre and in online batches across India, with home tuition available in Delhi-NCR — details at abcchemistry.in.