
An error code isn't your hot tub breaking. It's your hot tub telling you what it already figured out — a sensor decided a condition wasn't safe and shut the heater down to protect itself. The trick is knowing what it's pointing at.
As always: shut the breaker off before you open any panel.
Flow codes are the most common by far
You'll see these as FL, FLO, FLC, or FL1 and FL2 depending on who made your control pack. They all point at the same thing: the system can't confirm water is moving through the heater, so it refuses to fire it. The display usually alternates between the code and the water temperature.
Homeowners call us saying the same thing every time: "My pump works. I can see the water moving. Both speeds work. But it won't heat."
That's expected, and it's why flow codes get misdiagnosed. Your jets may run off one pump while the heater depends on a separate circulation pump — and on a switch that has to physically close before the heater gets permission to run. Water moving in the tub tells you nothing about whether water is moving past that switch.
Start with the filter. It's free.
Before anything else, pull the filter out and run the tub. If it starts heating, your filter was the problem — it needs cleaning or replacing. A clogged cartridge restricts flow enough to trip a flow code, and this costs you nothing to test.
Rinse filters weekly, deep-clean them every three months, and replace them every six months to a year.
If it isn't the filter
Loose connections at the flow switch. We've pulled up to tubs showing a flow code where the spade connectors had simply backed off — they slid out the moment they were touched. Nothing was broken. Cheapest possible outcome, so look here next.
A failed flow switch. Inside is a small paddle. Water pushes it, it makes contact, the heater gets permission. When it fails, that permission never comes.
A dying circulation pump. You can often hear this one — a distinct knocking or chattering, like mice under the tub. If the pump is getting proper voltage and still won't run, it needs replacing. If it isn't getting voltage, the fuses come next, and after that the circuit board.
A restriction anywhere in the suction or discharge lines will do it too, as will a failing temperature sensor.
The other codes worth knowing
Overheat codes — shown as OH, OHH, HH, or HL — mean a sensor detected water above roughly 110°F, or that the heater's high-limit tripped. Treat these seriously and stop using the tub until it's sorted.
dr or drY means inadequate water in the heater. ICE or IC means the system detected a potential freeze condition. And on Cal Spas, SF points to the safety suction switch — the giveaway there is that the tub goes completely unresponsive, with no buttons, light, or jets working at all.
Codes aren't universal
There is no industry-wide standard. The code comes from your control pack — most commonly Balboa, Gecko, Waterway, or Applied Computer Controls — not from the tub itself, and the same underlying fault displays differently on each. A code that means a flow problem on one pack can mean something entirely different on another. Always check yours against the manual for your specific pack rather than a generic list online.
Where DIY stops
Pulling a filter and listening to your circ pump are reasonable homeowner tasks. Replacing a flow switch runs about 10 to 15 minutes once the panel is off — but only if you're comfortable draining the tub and getting the new switch oriented correctly, since these are directional and installing one backwards puts you right back where you started.
If the code returns after a repair, if you're seeing an overheat code, if the tub is fully unresponsive, or if you're looking at a circulation pump or board replacement, that's the point to call us.
