A method, system or computer usable program product for managing a water heater utilized for heating stored hot water including utilizing an expected user schedule to determine an expected user load for storage in memory, utilizing ambient temperature data to determine a water heating load for storage in memory, utilizing a processor to analyze the expected user load and the water heating load stored in memory to determine a desired temperature for the stored hot water according to a predetermined policy, and utilizing the processor to instruct the water heater to heat the stored hot water to the desired temperature.