Heater Runs But Pool Isn't Getting Warmer
Weaker heat output than expected while the heater seems to run normally points to a different set of causes than an outright ignition or flow failure.
What's usually going on
This complaint splits into two very different categories. In the first, nothing is actually malfunctioning: the heater is undersized for the pool's volume, it's fighting heavy heat loss from wind or cool nights with no cover in use, or the timer simply isn't running long enough for the temperature rise you're expecting. None of that shows up as a code, because there's nothing for the equipment to fault on. The second category is a real equipment fault, and it's the one documented here: water isn't moving through the heat exchanger efficiently enough, so a localized hot spot inside it trips a high-limit safety switch, the burner shuts off, the heater restarts a little later, and the pool never gets a sustained heating cycle — it just short-cycles between "on" and "tripped" while barely gaining ground. That short-cycling is usually driven by restricted flow or by scale buildup narrowing the heat exchanger's internal passages, and it's worth ruling in or out before assuming your heater is simply too small for the job.
Codes that show this symptom
- Pentair ERR HLS — High-limit switch open
- Pentair ERR AGS — Automatic Gas Shutoff, hard lockout after repeated overheat
- Raypak HL1 — High limit 1 tripped
- Raypak HL2 — High limit 2 tripped
- Hayward HS — Water Temperature Sensing Error, often tied to the same poor-circulation root cause
Full code lists: Hayward, Pentair, Raypak.
Checks that apply regardless of brand
- Verify and restore normal flow first: clean the filter, open every valve fully, and confirm the pump is running at an adequate speed for the heater — restricted flow is the single most common reason a heat exchanger runs locally hot while the pool itself stays cool.
- Compare the actual water temperature reading at the equipment pad to how the pool feels; a pad reading that's noticeably hotter than the pool points at the same flow problem showing up as a sensing mismatch.
- Let the heater cool fully, then clear whichever high-limit code was showing and let it retry once flow is confirmed good.
- Separately, sanity-check the non-fault possibilities: does the heater's BTU rating fit the pool's volume, is a cover being used, and is the run time long enough for the rise you want.
If flow at the pad is clearly adequate and a high-limit code keeps tripping anyway, that points to scale buildup narrowing the heat exchanger's internal passages, or a failed or miscalibrated limit switch — both need a technician's inspection. These are genuine overheat safety devices, so don't keep resetting a heater that's running hot internally just because the pool itself still feels lukewarm.