GH and KH explained
GH (general hardness) measures dissolved calcium and magnesium. It affects fish that are adapted to soft or hard water, egg development and shrimp moulting.
KH (carbonate hardness) measures carbonate and bicarbonate, the water’s buffer against pH swings. Low KH lets pH drop suddenly; high KH holds pH up.
Both are usually reported as the equivalent amount of calcium carbonate, so the same conversion factors apply to each.
Hardness unit conversions
| °dGH / °dKH | ppm CaCO₃ | meq/L | gpg | USGS class |
|---|---|---|---|---|
| 1 | 17.8 | 0.36 | 1.0 | Soft |
| 3 | 53.5 | 1.07 | 3.1 | Soft |
| 4 | 71.4 | 1.43 | 4.2 | Moderately hard |
| 6 | 107.1 | 2.14 | 6.3 | Moderately hard |
| 8 | 142.8 | 2.85 | 8.3 | Hard |
| 10 | 178.5 | 3.57 | 10.4 | Hard |
| 12 | 214.2 | 4.28 | 12.5 | Very hard |
| 15 | 267.7 | 5.35 | 15.6 | Very hard |
| 20 | 357.0 | 7.13 | 20.9 | Very hard |
Mixing tap and RO water
Reverse osmosis (RO) water has almost no hardness. Mixed with tap water, the hardness of the blend is simply the volume-weighted average, so you can solve for the ratio.
Worked example: tap water tests 14 °dGH and you want 6 °dGH for soft-water fish. With RO at 0, the fraction of tap = 6 ÷ 14 = 0.43. For a 50 L water change, mix 21.4 L of tap with 28.6 L of RO.
GH and KH do not always sit in the same ratio in tap water, so check both. If one ends up too low, a remineraliser or buffer raises it without changing the other much.
Change hardness gradually
- Match new water to the tank. Big jumps in GH, KH or pH during water changes stress fish.
- Keep some KH. Very low KH lets pH crash, especially in heavily stocked tanks.
- Stable beats perfect. Many captive-bred fish adapt to a wide range; steady conditions matter more than hitting a textbook number.