Guide — pond water
A koi that looked fine at dinner is on the bottom at sunrise. No ulcers, no flashing, no white spots, nothing you could have pointed at. Most of the time the answer is not something you could have seen on the fish. It is something that happened to the water between midnight and dawn.
Work in this order. The first two steps cost nothing and are almost never wrong.
The panic response often kills more fish than the original problem. A large change with untreated tap water adds chloramine to an already stressed pond. A cold hose dropping the pond 10 °F in an hour causes its own losses. Dumping pH-up powder into a crashed pond moves pH faster than the fish can adjust and converts harmless ammonium back into toxic free ammonia. Move deliberately, dechlorinate everything, match temperature.
| What you saw | Most likely cause | Test first |
|---|---|---|
| Dead at dawn, hot night, no marks on the fish | Overnight oxygen depletion | Dissolved oxygen, before 7 a.m. |
| Biggest koi died, smaller ones fine | Oxygen. Large fish have the highest demand per unit of gill | Dissolved oxygen |
| Several fish lost over one night, water smells sour | pH crash from exhausted KH | pH and KH together |
| Losses started 3 to 10 days after you cleaned the filter, added fish or medicated | Ammonia or nitrite spike | Ammonia, then nitrite |
| Fish gasping at the surface or crowding the waterfall | Oxygen, or gill damage from ammonia or nitrite | Dissolved oxygen, then ammonia |
| Overnight after a thunderstorm | pH, oxygen and stirred bottom debris together | pH, KH, dissolved oxygen |
| One fish only, others behaving normally | Often not water: injury, spawning exhaustion, individual disease | Water anyway, then a specialist |
This is the cause most keepers reach for last and should reach for first. Three things stack on a summer night: warm water physically holds less dissolved oxygen, plants and algae switch from producing oxygen to consuming it after dark while the biofilter never stops, and the fish themselves have a higher metabolic demand at 82 °F than at 62 °F.
The result is a curve that bottoms out just before sunrise. A pond reading a comfortable 8 mg/L at 6 p.m. can be at 3 mg/L at 5 a.m. and back to 8 mg/L by the time you test at nine. The event is over before you are awake.
| Dissolved oxygen | What it means for koi | When you see it |
|---|---|---|
| 8–10 mg/L | Comfortable. Normal for cool, well-aerated water | Spring and fall, or a well-aerated summer pond |
| 6–8 mg/L | Acceptable working range for a stocked summer pond | Typical summer daytime reading |
| 4–6 mg/L | Stress. Appetite falls, immune response weakens | Warm nights, heavy stocking |
| 2–4 mg/L | Serious. Gasping at the surface, largest fish first | Pre-dawn on the hottest nights |
| Below 2 mg/L | Deaths, and quickly | Pre-dawn, or after a pond turnover |
Risk rises sharply in the week after anything increases demand: new fish, a heavier feeding schedule as the water warms, or a blanketweed bloom that has quietly doubled the pond's night-time oxygen consumption.
KH, which most US keepers call total alkalinity, is the pond's buffer, and it is consumed continuously. Nitrification in the biofilter eats it, rain dilutes it, and a pond on a liner with no limestone in the system has nothing replacing it. As long as there is buffer left, pH holds steady and you see nothing unusual.
When the buffer runs out, pH does not drift down politely. It falls off a cliff, usually overnight, and a pond can go from 8.2 to below 6.0 in a matter of hours. This is the classic cause of finding several koi dead at once with no other explanation.
The practical point is that KH tells you the crash is coming days before pH does. A KH trending from 6 dKH toward 2 dKH is the warning. The pH reading is the event. Targets, testing and rebuilding the buffer are covered in the carbonate hardness guide.
Spikes rarely appear out of nowhere. They follow a short list of events, so walk back through the last ten days honestly:
Nitrite is the quieter of the two. It does not smell, it does not cloud the water, and it kills by taking the blood's ability to carry oxygen. Fish suffering nitrite poisoning behave exactly like fish in an oxygen crash, which is why you test both.
Koi tolerate a wide temperature range and tolerate change within it badly. A drop of more than about 8 °F in a few hours is enough to suppress immune function in an already stressed fish. Usual causes: a cold front, a shallow pond losing heat fast after dark, a long top-up from a cold hose.
A summer thunderstorm is the worst case because it does several things at once. Rain is naturally acidic, so a pond with thin KH loses buffer and pH together. The cold rain layer can turn the pond over, mixing oxygen-poor bottom water through the whole volume, and the stirred bottom releases an oxygen demand that was sitting inert in the muck. Runoff brings in whatever was on the lawn. Deaths after a storm are usually overnight, not during the storm itself.
This part matters, and most pages on this subject skip it. Sudden death in koi is not always a water event.
What H2Koi does, and what it does not. H2Koi is continuous early warning on the measurable water parameters — dissolved oxygen, temperature, pH, ammonia, nitrite and related values — with KH reported as a derived, computed value on a 0–20 dKH scale. It is not a titration, and it does not report GH. Readings come from industrial-grade sensors, continuously.
It does not detect disease, parasites, spawning stress, predators, injury or toxins, and it cannot prevent a fish from dying. What it does is tell you that oxygen fell to 2.8 mg/L at 4:40 a.m., or that KH has been sliding for six days, while there is still time to act.
Most keepers test well — weekly, sometimes twice a week, with a good liquid kit. The problem is not the accuracy of the test. It is the timing.
Every cause on this page moves on a schedule a spot test cannot see. Oxygen is at its lowest between 4 and 6 a.m. and back to normal by mid-morning. A pH crash happens overnight. A post-storm turnover happens at 11 p.m. Testing at 9 a.m. on a Saturday samples the calmest hour of the week, which is exactly why a keeper who has just lost three koi so often reports that the water tests perfect.
Continuous measurement is awake at the hours when the pond is not stable, and it puts a timestamp and a trend on what would otherwise stay a mystery. That is the entire case for it.
The same logic runs through our bespoke automated water changes. Where the fix is a partial change, having it happen in measured increments rather than as an emergency bucket brigade removes one more human-timing problem. We build these to order for individual ponds, and we have never found another system that does it.
Most often because the water changed after dark. Dissolved oxygen falls all night and bottoms out just before sunrise, and pH crashes overnight once KH is exhausted. Both are fully recovered by the time you test in the morning, which is why the water so often reads normal after a loss.
Possibly, indirectly. Rinsing biomedia in chlorinated tap water, or stripping too much of it at once, knocks back the nitrifying bacteria and produces an ammonia spike three to ten days later. Test ammonia and nitrite now. Going forward, rinse media in pond water and clean no more than half the biological stage at a time.
That pattern points strongly at oxygen. Large fish have a higher oxygen demand relative to their available gill surface, so in a depletion event they run out first. If your losses started with the show fish and left the small ones untouched, test dissolved oxygen before sunrise rather than at midday.
Indirectly, yes, and the deaths usually come the night after rather than during the storm. Acidic rain drops pH in a pond with low KH, the cold rain layer can turn the pond over and mix oxygen-poor bottom water through the whole volume, and runoff carries lawn chemicals in. Aerate heavily during and after any heavy rain, and check pH and KH the following morning.
Stress begins below roughly 5 to 6 mg/L, gasping and serious distress appear in the 2 to 4 mg/L band, and losses come quickly below 2 mg/L. Those are guides rather than hard lines. Warm water, high stocking and recent handling all move the threshold in the wrong direction.
Not blind, and not big. Aerate and stop feeding first, then test. If ammonia, nitrite or a pH crash is confirmed, change 20 to 30 percent with dechlorinated water at the same temperature. A large change with untreated tap water, or one that swings the temperature or pH sharply, can do more damage than the original problem.
Two possibilities. Either the water event has already passed — retest before sunrise for two or three mornings, particularly dissolved oxygen and pH — or it was never water. Disease, parasites, spawning exhaustion, predators and injury all cause sudden death and none of them show up in a water test. If a second fish goes down, take it to a fish vet or a koi health specialist for a scrape and a proper look rather than treating the pond speculatively.
H2Koi watches dissolved oxygen, temperature, pH, ammonia, nitrite and a derived KH continuously, so the pre-dawn hours are no longer a blind spot. Early warning you verify yourself, not a diagnosis.
See how H2Koi monitors