Rinnai tankless water heaters display numeric error codes on the controller and in the ControlR app. Every code points to a specific failure mode with a defined diagnostic sequence. The codes below cover Sensei, Sensei RX, RL, V, RUC, and RSC series — legacy R-series uses a similar but not identical numbering scheme.
The five codes you'll actually see
| Code | Meaning | Most common cause |
|---|---|---|
| Code 11 | No ignition | Gas supply / igniter / flame rod |
| Code 12 | Flame failure during operation | Dirty flame rod / condensate |
| Code 14 | Thermal fuse / overheat | Scaled heat exchanger |
| Code 25 | Condensate drain blocked | Drain line / trap |
| Code 79 | Combustion fan fault | Fan motor / wiring |
Full numeric reference
| Code | Description |
|---|---|
| 02 | Restricted exhaust / vent |
| 03 | Power loss during operation |
| 05 | Bypass servo error |
| 10 | Combustion air / exhaust restriction |
| 11 | No ignition |
| 12 | Flame failure mid-operation |
| 13 | Combustion abnormality |
| 14 | Thermal fuse trip / overheat |
| 15 | Boiling-water sensor fault |
| 16 | Outlet thermistor fault |
| 19 | Electrical grounding fault |
| 20 | Tank/inlet thermistor |
| 21 | Inlet thermistor fault |
| 22 | Hot-water outlet thermistor |
| 25 | Condensate drain blocked |
| 31 | Burner sensor |
| 32 | Outlet thermistor |
| 33 | Heat exchanger thermistor |
| 34 | Combustion air sensor |
| 35 | Heat exchanger sensor |
| 52 | Modulating solenoid valve |
| 61 | Combustion fan |
| 65 | Water flow control valve |
| 70 | Control board (PCB) |
| 71 | Solenoid valve circuit |
| 72 | Flame sensing |
| 76 | Communications |
| 79 | Combustion fan fault |
| 80 | Internal communication |
| 90 | Combustion abnormality |
| 92, 93 | Commercial recirculation neutralizer |
| 99 | Exhaust blockage / power-vent |
| 101 | Exhaust temperature |
| 111 | Drain valve / installer alert |
| 121 | Air-conditioning supply abnormality |
How to reset
Most Rinnai error codes can be reset by power-cycling the unit (turn off at the controller, wait 30 seconds, turn back on) OR pressing the reset button on the controller. A reset that holds = transient fault. A reset that immediately re-throws = persistent fault, needs the diagnostic walkthrough on the specific code page above.
Bottom line
Don't replace parts based on the code alone. The code points to a system; the diagnostic walkthrough on each code page narrows to a specific part. See our general troubleshooting page for cases without a displayed code.