Freshwater Aquariums

Understanding Water Chemistry: pH, GH, and KH Explained for Beginners

A plain-language explainer of pH, general hardness, and carbonate hardness so you can match fish to your tap water with confidence.

Test tubes checking aquarium water parameters
Photograph via Unsplash

Water chemistry is the part of fishkeeping that scares off more beginners than anything else, and I understand why. The acronyms pile up fast, every forum post seems to contradict the last, and the bottles at the shop promise to fix problems you didn't know you had. The good news is that you only need to understand three numbers to keep the vast majority of freshwater fish happy, and once they click, the rest of the hobby gets a lot calmer.

Why water chemistry matters more than you think#

When people ask me why their fish keep dying despite a clean tank and regular feeding, the answer is often hiding in the water itself. Fish don't just swim in water the way we sit in air. Their gills are in constant, intimate contact with whatever is dissolved around them, so the chemistry of that water is effectively their internal environment too.

The three parameters we care about most are pH (how acidic or basic the water is), GH (general hardness, or how much calcium and magnesium is dissolved in it), and KH (carbonate hardness, which controls how stable your pH stays). They are related but distinct, and the most common beginner mistake I see is treating them as one thing. Someone reads that their fish wants "soft, acidic water," dumps in a pH-lowering chemical, and crashes the whole tank overnight because they never touched the parameter that was actually holding everything steady.

Let me walk through each one the way I wish someone had explained it to me.

pH: the number everyone obsesses over#

pH measures how acidic or alkaline your water is on a scale from 0 to 14, where 7 is neutral. Below 7 is acidic, above 7 is basic (or alkaline). Most freshwater community fish live comfortably somewhere between 6.5 and 7.8.

Here's the thing that took me years to fully internalize: stability matters more than hitting a magic number. A tank sitting rock-steady at pH 7.6 will keep fish healthier than one that bounces between 6.8 and 7.4 every few days, even though those lower numbers might look closer to "ideal" on paper. Fish adapt remarkably well to a pH that stays put. They struggle badly when it moves under them.

The scale is also logarithmic, which trips people up. A drop from pH 7 to pH 6 isn't a small step down, it's a tenfold increase in acidity. That's exactly why splashing pH-down products into a tank is so risky for beginners. A capful can move things far more dramatically than you expect.

What actually changes your pH#

  • Carbon dioxide from fish respiration and, in planted tanks, from CO2 injection, pushes pH down.
  • Driftwood and botanicals like Indian almond leaves release tannins and mild acids that gently lower it.
  • Crushed coral, aragonite, or limestone rock dissolve slowly and raise it.
  • Your tap water's starting chemistry, which is set by your local geology and water utility, is the biggest factor of all.

GH: general hardness, or how "mineral-rich" your water is#

GH tells you how much dissolved calcium and magnesium your water contains. Water high in these minerals is called hard; water with very little is soft. This is the parameter that most directly determines which fish will genuinely thrive versus merely survive in your tank.

Some quick orientation on where fish sit:

  1. Soft-water fish (low GH): most tetras, discus, many wild-caught species, chili rasboras, and dwarf cichlids like apistogramma.
  2. Hard-water fish (high GH): livebearers such as guppies, mollies, platies and swordtails, plus African rift lake cichlids and many snails.
  3. Adaptable middle-ground fish (moderate GH): most commercially bred community staples, including corydoras, danios, and platies bred for years in average tap water.

GH also matters enormously for shrimp and snails, which need calcium to build and maintain their shells and exoskeletons. I've watched brand-new fishkeepers battle mysterious snail shell erosion for weeks before realizing their soft water simply didn't have the minerals to support a shelled animal.

Measured in either degrees (dGH) or parts per million, GH is one of the more forgiving parameters to test because it changes slowly and predictably.

KH: the quiet parameter that protects you#

If pH is the number everyone watches, KH is the one that actually keeps you out of trouble, and it's the one beginners understand least. KH, or carbonate hardness, is your water's buffering capacity. It measures the carbonates and bicarbonates dissolved in your water, and those act like a chemical shock absorber for pH.

Here's the mental model I use with new hobbyists: think of KH as a bank account that your pH draws from whenever something tries to acidify the tank. Fish waste, decaying food, and driftwood all constantly produce mild acids. As long as you have KH in the account, those acids get neutralized and your pH holds steady. When the KH runs dry, there's nothing left to absorb them, and your pH can crash suddenly and dangerously. That crash, often called a "pH crash" or "old tank syndrome," is one of the fastest ways to lose an entire tank overnight.

Why low KH is a hidden risk#

Soft, low-KH water isn't bad, plenty of beautiful blackwater setups run on it, but it demands respect and attention:

  • It swings easily. Small changes in CO2, a big feeding, or a missed water change can move the pH a lot.
  • It punishes neglect. Skip water changes for a month with low KH and you're courting a crash.
  • It benefits from a buffer. A small amount of crushed coral in the filter can add just enough KH to stabilize things without turning your water into liquid rock.

If your KH is moderate to high, congratulations, your tank is inherently more stable and beginner-friendly. You'll find your pH stubbornly refuses to move, and that stubbornness is a feature, not a bug.

How they work together in a real tank#

These three parameters are a system, not a checklist. GH and KH often rise and fall together because the same hard tap water tends to be rich in both minerals and carbonates, but not always. You can absolutely have water with high GH and low KH, or the reverse, and testing both is the only way to know.

The practical relationship that matters most: KH stabilizes pH. High KH means a stable, usually higher pH. Low KH means an unstable pH that's easier to lower but also far easier to crash. This is why I beg beginners not to chase a target pH by dumping in acid. If you lower pH without addressing KH, you're fighting your buffer directly, and the buffer will either win (wasting your money) or lose all at once (crashing your tank). Neither is what you want.

Testing without driving yourself crazy#

You don't need a laboratory. You need a decent liquid test kit, because the paper strips, while convenient, are notoriously inconsistent and tend to fade or read inaccurately once the bottle's been open a while. Liquid drop tests take a few extra minutes but give you numbers you can actually trust.

My honest routine, refined over many tanks:

  • Test your tap water first, before anything else. This tells you your starting point and instantly reveals which fish are natural matches for your home.
  • Test a new tank weekly during its first couple of months while everything establishes.
  • Test an established, stable tank monthly, or whenever something looks off.
  • Always test at the same time of day if you're tracking pH, since CO2 fluctuates between day and night in planted tanks and can shift your reading by several tenths.

One reading is a snapshot, not a diagnosis. If a number surprises you, retest before you act on it. I've seen more tanks harmed by a panicked reaction to a single odd result than by the result itself.

The advice that will save you the most heartache#

After years of answering the same questions, my single most useful piece of guidance is this: choose fish that match your water, rather than forcing your water to match the fish. Find out what comes out of your tap, then stock accordingly. If you have hard, alkaline water, build a stunning tank of guppies, mollies, and African cichlids. If you have soft, acidic water, lean into tetras, rasboras, and a moody blackwater aquascape.

Constantly manipulating water chemistry with additives is a treadmill. It's expensive, it introduces instability every time you get the dose slightly wrong, and it demands vigilance that most of us can't sustain for the life of a tank. Working with your tap water instead of against it is the difference between a hobby that relaxes you and one that stresses you out.

Bringing it all together#

You don't need to become a chemist to keep fish well. You need to know three numbers, understand that pH stability beats pH perfection, respect KH as the buffer that protects you, and let GH guide your stocking choices. Test your tap water this week, write the numbers down, and pick fish that already want to live in it. Do that, and you'll have sidestepped the single biggest source of frustration in the entire hobby, all before you've bought a single bottle of "conditioner" you probably didn't need.

Hannah Brooks
Written by
Hannah Brooks

Hannah has kept freshwater aquariums for over fifteen years, from a first betta bowl she now regrets to a peaceful planted community tank. She writes for beginners the way she wishes someone had written for her: patiently, and without the gatekeeping.

More from Hannah