Water hardness is the part of fishkeeping that sends more beginners into a spin than anything else, and most of the panic comes from muddling two numbers that are not the same thing. GH and KH sit on every test strip, get written into every care sheet, and yet almost nobody explains what they actually measure or which one your fish care about. So here it is, without the fog. GH is the mineral content your fish feel through their bodies. KH is the buffer that keeps your pH steady. They move independently, they do different jobs, and once you can read both, water chemistry stops being a mystery and becomes one of the most useful tools you own.

The short answer

GH, general hardness, measures dissolved calcium and magnesium. This is the number your fish physically respond to, because those minerals shape how a fish manages the flow of water and salts across its gills and skin.

KH, carbonate hardness, measures carbonates and bicarbonates. Its job is to act as a shock absorber for pH. High KH means a stable pH that resists crashing. Low KH means a pH that can swing or fall suddenly.

Neither one is pH. pH tells you how acidic or alkaline the water is right now. KH tells you how hard it is to change that number. You can have a high pH with almost no KH holding it up, which is a fragile situation, or a rock-solid pH propped up by plenty of KH, which is one of the most forgiving starting points in the hobby. Keep those three ideas separate and most of the confusion falls away.

What GH really does for your fish

Fish live inside a constant balancing act called osmoregulation. Freshwater is more dilute than the fish’s own body, so water is forever trying to seep in and salts are forever trying to leak out. The fish spends energy pushing back against this every second of its life, and the mineral content of the water it evolved in decides how its body expects to do the job.

A fish from hard, mineral-rich water, a molly from a Central American limestone spring or a Rift Lake cichlid, is built for water full of calcium and magnesium. Drop it into soft, mineral-starved water and its osmoregulation is fighting uphill, which shows up as poor colour, weak breeding and a shorter life. A fish from soft blackwater, a cardinal tetra or a wild betta, is built for the opposite and struggles in liquid limestone.

This is why matching fish to your GH matters far more than hitting a pH number off a chart. GH is the water quality a fish can actually feel. For a full look at which species suit hard, high-GH water, I have written a dedicated stocking guide on keeping fish in hard water, and a more personal account of the fish that thrive in hard water.

What KH really does for your tank

Every aquarium slowly produces acid. Fish waste, the nitrogen cycle, decaying plants and leftover food all push in the acidic direction over time. KH is what stands in the way.

In water with plenty of KH, that acid is soaked up and the pH barely moves from one month to the next. In water with little or no KH, the same acid drags the pH steadily down, and in the worst case it triggers a sudden crash, where the pH falls off a cliff overnight and takes the fish with it. Old-tank syndrome, where a long-neglected tank suddenly loses its whole stock, is very often a KH story: the buffer ran out, and the next dose of acid had nothing to fight.

Here is the reframing that helps most people. A high, stable KH is not a fault to be fixed. It is a safety net. My own tanks sit at almost exactly the same pH month after month, through heavy feeding, a missed water change or a summer heatwave, because the KH holds the line. Fish are far more stressed by a swinging pH than by a stable one that reads a little higher than a care sheet would like.

The units, and how to read a test kit

Water hardness gets reported in two units and the mismatch trips people up constantly.

The first is degrees of German hardness, written dGH for general hardness and dKH for carbonate hardness. This is what most hobby liquid test kits and European reports use.

The second is parts per million, ppm, sometimes labelled mg/L. American products and municipal water reports tend to use it. The conversion is straightforward: one degree of hardness equals roughly 17.9 ppm. So water at 10 dGH is about 179 ppm, and my tap at around 22 dGH is close to 390 ppm. If a care sheet quotes ppm and your kit reads degrees, divide the ppm figure by about 18 to compare like with like.

A rough scale for GH: below 4 dGH is soft, 4 to 8 dGH is moderately soft, 8 to 12 dGH is moderately hard, and above 12 dGH is hard. Anything past 18 dGH, where mine sits, is very hard.

For KH, most community fish are happy anywhere from about 3 to 15 dKH. The number to worry about is a low one. A KH below 3 dKH is where pH stability gets fragile and you need to keep an eye on things.

A liquid drop test is far more reliable than paper strips for hardness, which fade and mislead. You add drops until the sample changes colour, and each drop counts as one degree, so the test doubles as a lesson in what the numbers mean. Test your tap water first, then your tank, because the two are often different once fish, plants and buffering rock have had their say. The wider set of numbers worth tracking sits in aquarium water parameters.

Finding out what you have before you change anything

Before you touch a single additive, learn your tap water. Your water company publishes a hardness figure in its annual report, usually as a range, and it is a good starting point, though it can vary by season and by area. Confirm it with your own test, because the number that matters is the one coming out of your tap today.

Then test the tank. Substrate, rocks, shells and even the type of gravel change the water sitting in the tank. Crushed coral, aragonite sand, limestone rock and a pile of snail shells all leach calcium and raise GH and KH over time. Bogwood and peat pull the other way. Knowing the gap between your tap and your tank tells you what your setup is actually doing to the water.

Raising hardness, when you genuinely need to

If your water is soft and you want to keep hard-water fish, or you keep shrimp or snails that need calcium for their shells, you raise GH and KH deliberately.

For a broad lift of both numbers, calcareous media works slowly and safely. A bag of crushed coral or aragonite in the filter, or a limestone or seiryu rockscape, dissolves gently as the water turns acidic and holds hardness up without any dosing on your part. This is the low-effort route and my preferred one where it fits the tank.

For precise control, a remineralising salt mix designed for aquariums raises GH and KH to a target you set, which matters most when you start with reverse osmosis water and build it back up from nothing. If you go that way, mix to a known figure every water change rather than eyeballing it, because consistency is the whole point. Our remineralise calculator does the arithmetic for a target GH and volume.

A word of warning: baking soda raises KH only, not GH, and dosing it without understanding that leaves you with well-buffered water that still lacks the calcium and magnesium your fish need. Raise GH and KH together unless you have a specific reason not to.

Lowering hardness, and why to think twice first

Softening hard water is harder work than most beginners expect, and it never stops. Chemical softening pillows and pH-down bottles fight your KH, which is exactly the buffer keeping your pH stable, so they tend to cause the crashes they were meant to prevent. I would not use them.

The only reliable way to soften water is to start from soft water. A reverse osmosis unit strips the tap water back to nearly nothing, and you either use it straight for blackwater species or remineralise it to a chosen GH and KH. It is effective and it is a commitment: every water change forever means making and mixing RO water instead of turning on a tap. Our RO mix calculator helps blend RO and tap to a target.

Before going down that road, ask the honest question: do you need soft water, or have you fallen for a fish that does not suit your tap? Nine times out of ten the easier answer is to keep species that thrive in the water you already have. Fighting your tap is a lifelong chore; stocking to match it is a one-off decision.

The one habit that keeps hardness stable

Whatever your numbers, the single best thing you can do is regular partial water changes with water of consistent hardness. That is what stops GH and KH drifting, tops the buffer back up before it runs low, and keeps the tank sitting where you set it. Sudden large changes in hardness stress fish as much as sudden pH swings, so match the temperature and roughly the hardness of the new water to the old, and change little and often rather than rarely and drastically. The routine is covered in aquarium water changes.

Get GH and KH straight in your head and a whole category of fishkeeping worry disappears. GH tells you which fish belong in your tank. KH tells you how safe your pH is. Test both, stock to your GH, respect your KH, and you can leave the pH-down bottles on the shop shelf where they belong.