The Template integration in Home Assistant is getting a new platform: water_heater. The change was merged on 22 October 2026, and its documentation went into the next branch two days later, which puts it on track for Home Assistant 2026.11. It fills a gap that hot water owners know well. A boiler driven by a relay, an ESPHome board or a heat pump integration that exposes loose sensors and switches could not be shown as a proper water heater entity unless an integration created one.
How it works
The platform is modelled on the existing template climate platform. You describe the device's state with templates and say which actions to run when someone changes a setting:
operation_listis a template that returns the list of operation modes, such aseco,electricorheat_pump, and is required,operation_modereads the current mode, andset_operation_modeis the required action that receives the chosen mode in theoperation_modevariable,current_temperatureandtarget_temperatureread the temperatures, andset_temperaturereceives the requestedtemperature,away_modewithturn_away_mode_onandturn_away_mode_offhandles away mode,turn_onandturn_offcover switching the heater on and off,min_temperature,max_temperature,target_temperature_stepandtemperature_unitset the limits, step and unit.
If you skip operation_mode, the entity works optimistically and simply assumes the last mode you picked. The optimistic option controls this explicitly.
In the UI or in YAML
Like the other template entities, the water heater can be created in YAML or as a helper in the UI, under Settings > Devices & services > Helpers. In the UI the away mode actions, availability and temperature limits sit under Additional options. The new helper can also be attached to an existing device, so the water heater entity can sit on the same device as the ESPHome relay that switches the boiler.
The documentation's YAML example is short: a boiler with eco and electric modes, where the mode is stored in an input_select and the temperature comes from an existing sensor. In a real setup set_operation_mode would instead switch a relay or call a heat pump action.
What it changes in practice
The water heater entity comes with a standard card and standard actions. Until now, building one on top of your own hardware meant writing a custom integration. From 2026.11 a few lines of templates should be enough. That helps anyone who heats water with a relay-switched immersion heater and wants to drive it from tariffs or solar surplus.