Fish kills happen at five in the morning, and the evidence is gone before breakfast.
Here is something most lake residents never learn: the oxygen in your lake swings dramatically over every 24 hours, and the low point comes just before sunrise. If your lake is going to kill fish, that is when it does it.
By the time anyone is awake and on the water, photosynthesis has restarted and oxygen has recovered. The lake looks fine. It was not fine four hours ago.
How a lake breathes
Algae and aquatic plants produce oxygen during the day through photosynthesis. That part is well known. What gets forgotten is that they consume oxygen continuously — day and night — through respiration, along with every bacterium, invertebrate, and fish in the system.
So through daylight, production exceeds consumption and oxygen climbs. Peak is late afternoon. Then the sun goes down, production stops, consumption does not, and oxygen falls for the next twelve hours. Minimum arrives right around dawn.
In a lake with modest biology, this swing is small. In a productive lake — one running high on nutrients, with a heavy algal population — it can be enormous. And here is the trap: the more algae a lake has, the higher its afternoon oxygen and the lower its pre-dawn oxygen. Abundant plant life makes the daytime reading look excellent while making the night genuinely dangerous.
The number that matters
Most warm-water fish begin experiencing stress below about 5 milligrams per litre. Below 2, sustained, and you start losing them. Cold-water species like trout need considerably more.
A midday reading of 9 mg/L means very little on its own. The same lake might be at 3 mg/L at 5 a.m. Someone taking a spot measurement during a site visit — reasonably, at a reasonable hour — records the daily maximum and calls it the lake's oxygen level.
The other oxygen problem
The daily cycle is the fast version. There is a slower one running all summer.
When a lake stratifies in early summer, the warm surface layer and the cold bottom layer stop exchanging. The bottom layer gets no oxygen from the atmosphere and no photosynthesis, because light does not reach it. But decomposition continues down there all season, consuming what oxygen remains.
By August, the bottom of many lakes is anoxic — effectively zero oxygen. Fish habitat disappears. And when sediment goes anoxic it starts releasing phosphorus that had been chemically locked up, feeding the algae above and worsening next year's blooms. This is internal loading, and it is why lakes sometimes fail to improve even after the watershed is cleaned up.
Why this is hard to catch
Every part of this happens on a schedule that is inconvenient to observe. The daily minimum is at dawn. The seasonal depletion is at depth. Both require measuring when and where nobody is.
That is the case for continuous logging. A sensor recording every fifteen minutes captures the pre-dawn minimum whether or not anyone is awake, and a sensor at depth documents the bottom layer going anoxic as it happens rather than letting you infer it afterward.
What to watch for
Fish gulping at the surface at dawn is the classic late warning — that is the last available layer of oxygenated water. A large algal bloom that suddenly collapses is dangerous, because decomposition consumes oxygen rapidly at exactly the moment production stops. Several consecutive hot, still, overcast days is the worst combination: warm water holds less oxygen, no wind means no mixing, and cloud cover suppresses photosynthesis while respiration carries on.
If you have had an unexplained fish kill, oxygen is the first suspect and the hardest to prove after the fact. It is also the one that gives you warning, if anything is watching at the hour it happens.

