All guides

KH vs GH in an aquarium: what's the difference?

AquaLog guide · Published

In short: GH (general hardness) measures dissolved calcium and magnesium, the minerals fish, shrimp and snails use. KH (carbonate hardness) measures carbonate and bicarbonate, which buffer pH and stop it crashing. Both are given in degrees (dGH, dKH) or ppm, and one degree is about 17.8 ppm.

What is the difference between KH and GH?

GH (general hardness)KH (carbonate hardness)
What it measuresCalcium and magnesiumCarbonate and bicarbonate (alkalinity)
What it doesSupplies minerals for bones, scales, shrimp moults and snail shellsBuffers pH, so acid doesn't send it crashing
Effect on pHNot directlyHigher KH holds pH higher and steadier
Raised byCrushed coral, limestone, mineral saltsBaking soda, crushed coral, limestone
Lowered byMixing in RO waterMixing in RO water

The two get confused because both are reported the same way, as mg/L of calcium carbonate. Often they rise together: water that has run through limestone picks up calcium and carbonate at the same time. But they can split. Water whose alkalinity comes from sodium bicarbonate can have high KH and low GH, and some acidic well water has hardness but almost no KH. Test both.

What units are GH and KH measured in?

Aquarium kits use German degrees (dGH for general hardness, dKH for carbonate hardness) or ppm. One German degree is 10 mg/L of calcium oxide, which equals 17.848 ppm as calcium carbonate, so 1 dGH is about 17.8 ppm. The same factor works for KH (1 dKH is also 17.848 ppm), and ppm and mg/L are the same thing.

To convert, degrees × 17.848 = ppm and ppm ÷ 17.848 = degrees (17.8 is close enough for everyday use). The table uses the exact factor. Check which unit your kit uses before comparing its numbers with a care guide.

Degrees (dGH or dKH)ppm as calcium carbonateUSGS hardness class (for GH)
236Soft
471Moderately hard
6107Moderately hard
8143Hard
10178Hard
12214Very hard
18321Very hard

Every species page in our care guide gives its hardness range in dGH.

Why does KH keep pH stable?

Carbonate and bicarbonate soak up acid before it can lower the pH. An aquarium makes acid all the time: fish breathe out carbon dioxide, and filter bacteria release acid as they turn ammonia into nitrate, using up carbonate as they go. With enough KH the pH barely moves. With too little it can drop suddenly, which keepers call old tank syndrome, and below about 20 mg/L (roughly 1 dKH) the filter bacteria stop working effectively.

Our water parameters guide gives 3–8 dKH as a common target. Very high KH has the opposite problem: pH is hard to lower, and ammonia is more toxic at high pH. See how to lower pH in an aquarium.

Why does GH matter?

Calcium and magnesium go into bones and scales, and calcium in the water helps fish hold on to the salts in their blood. Fish kept in water with almost no minerals, such as distilled water, can die suddenly. Invertebrates need minerals too. Cherry shrimp need 6–20 dGH, and our care guide lists failed moults in soft water among their problems. Nerite snails, also 6–20 dGH, suffer shell erosion in soft water.

How do you raise or lower GH and KH?

  • Raise KH only: baking soda (sodium bicarbonate) adds carbonate without calcium or magnesium. Dissolve a small, measured amount in tank water, add it, and re-test before adding more.
  • Raise both: crushed coral, aragonite or limestone in the filter or substrate. They are mostly calcium carbonate and dissolve slowly, adding calcium and carbonate. Limestone stops dissolving at around pH 8.3, so the effect levels off.
  • Raise mainly GH: mineral salts sold for remineralising RO water or for shrimp tanks. Some also add KH, so check what the label says it contains, and follow its directions.
  • Lower both: mix reverse-osmosis (RO) water with your tap water. A 50:50 mix roughly halves both GH and KH. Prepare it ahead and use the same mix at every water change.
  • Change slowly: shift hardness a little at each water change, not all at once, and test before and after.

RO water on its own has almost no minerals, so never fill a tank with it alone. Blend it with tap water or add minerals back.

Which fish want hard water and which want soft?

Pick fish that suit your tap water and you won't need to change GH or KH at all. These ranges come from our care guide:

FishpHHardness (dGH)Water
Molly7.5–8.512–30Hard
Guppy7–8.58–25Hard
Peacock cichlid7.6–8.610–25Hard
Zebra danio6–85–19Wide range
Neon tetra5.5–7.51–12Wide range
Cardinal tetra4.5–71–8Soft
Discus5.5–71–8Soft
German blue ram5.5–71–10Soft

Browse the full lists of fish for hard, alkaline water and fish for soft, acidic water. The care guide gives hardness as GH and has no separate KH figure. Hard-water fish suit the higher KH that usually comes with hard tap water. Soft-water fish come from water with little KH, so their tanks have less buffer and need steady water changes to stop pH dropping.

How often should you test GH and KH?

  • Test your tap water once so you know where you start, and again if your supply changes.
  • Test the tank about once a month, and whenever pH starts to drift.
  • Test after adding rock, coral, wood or leaves, which can shift both.

AquaLog logs GH and KH alongside pH, so you can see whether a falling pH follows a falling KH. Start logging your water.

Sources

Keep your tank's history in one place

Log water changes and tests, track every fish, and get reminders when jobs are due.

Start your AquaLog