Automating Your HVAC for Time-of-Use Savings
Heating and cooling account for roughly half of household electricity use in most US homes. That means the single largest lever on your electric bill is when and how your HVAC system runs — especially on a time-of-use (TOU) rate where the same kilowatt-hour can cost three times as much at 6 PM as it does at 2 AM.
This post covers how HVAC optimization actually works on a TOU plan, what pre-conditioning means, and why a software-driven approach beats manual scheduling.
The Core Idea: Your House Is a Thermal Battery
Every home stores heat. Drywall, furniture, floors, and the air itself hold thermal energy, and that energy decays slowly. When you run the AC hard at 3 PM to cool the house to 70°F and then let the system coast until 9 PM, the indoor temperature will drift upward — but slowly. In a reasonably insulated home, the drift over several hours is often only 2–4°F.
That slow drift is the opportunity. If you can pre-cool the house during cheap off-peak hours and coast through expensive on-peak hours, you shift the energy use away from peak pricing without sacrificing comfort — as long as the pre-cooling and the acceptable drift are sized correctly.
Heating works the same way in reverse. Pre-heat during off-peak overnight hours, coast through the morning on-peak window, and hit the comfort target again by the time people are active.
What a Naive Schedule Looks Like
Most thermostats support a simple weekly schedule: “cool to 72°F from 6 AM to 10 PM.” This completely ignores electricity price. On a TOU rate, the thermostat runs the compressor hardest right when electricity is most expensive, because that’s when outdoor temperatures are also highest.
A better rule would be: “pre-cool to 68°F from 2 PM to 4 PM, then allow drift as high as 75°F during on-peak hours.” That simple shift can cut HVAC energy cost by 15–30% on a typical TOU plan.
The problem is that the right pre-cool target and the right drift ceiling change every day. They depend on:
- Outside temperature and solar gain (tomorrow’s weather).
- How fast your specific house loses or gains heat (thermal mass and insulation).
- How aggressive your utility’s on-peak pricing is.
- How tight your comfort tolerance is.
Controlling this manually every day is not practical for most people. Our online game lets you try it: schedule an HVAC system by hand against a real TOU rate curve and compare your result to the optimizer.
What Software Can Do
A home energy management system automates the daily scheduling. It:
- Pulls tomorrow’s weather forecast (hourly temperature, solar levels).
- Pulls your utility’s rate schedule for the day.
- Uses a thermal model of your house — learned from your own sensor readings — to predict how indoor temperature will respond to outdoor conditions and HVAC operation.
- Runs an optimization that finds the lowest-cost schedule that keeps indoor temperature inside your comfort band.
- Hands the schedule to your smart thermostat or HVAC controller to execute.
Each night, the process repeats with fresh forecasts and refreshed model data. Over time, the thermal model improves and the schedules get more accurate.
Why Per-House Thermal Models Matter
Every home is different. A 1950s brick ranch with single-pane windows behaves nothing like a 2020 net-zero townhouse. A 5-ton heat pump cools differently than a 3-ton system. Pooled thermal models — the kind many utility apps use, where they estimate your house from a generic average — routinely under- or over-predict indoor temperature by several degrees.
A system that builds a thermal model from your specific home’s sensor readings is dramatically more accurate. In our own analysis, per-home thermal models were up to 80% more accurate than pooled models at predicting indoor temperature response, depending on the home. That accuracy directly translates to better schedules: fewer comfort misses and more captured savings.
Practical Setup
To run an optimized HVAC schedule you need:
- A thermostat or HVAC controller that accepts programmatic setpoint changes (most modern ones do). For ease, check to make sure it can connect to Home Assistant.
- An indoor temperature sensor (already built into the thermostat).
- Your utility’s time-of-use rate schedule loaded into the optimizer.
- Home Assistant (or a similar hub) to coordinate the devices.
Once those are in place, the optimizer needs one or two weeks of sensor data to build a reliable thermal model. After that, it can generate daily schedules that shift HVAC load to off-peak hours while staying within your comfort preferences.
What Hungry Machines Does
Hungry Machines is a home energy management platform built on Home Assistant. It generates daily HVAC optimization schedules using:
- Your utility’s time-of-use rate schedule.
- Tomorrow’s weather forecast for your ZIP code or from Home Assistant.
- A per-user thermal model that learns your home’s specific heat transfer, solar gain, and HVAC response from your own sensor readings.
- Your comfort preferences that you input.
The output is a 24-hour schedule that your Home Assistant automation applies to your thermostat. You can override any slot, and the system learns from the overrides over time.
Frequently Asked Questions
How much can I save by automating my HVAC on a time-of-use rate?
Typical savings for automated HVAC scheduling on a TOU rate are 15–30% of HVAC energy cost, which translates to 8–15% of total electric bill for most households. Savings depend on the utility’s price spread, home thermal mass, and comfort tolerance.
What is HVAC pre-cooling?
Pre-cooling is running the air conditioner harder during off-peak electricity hours so the house is cooler than the median setpoint before on-peak hours begin. Once on-peak pricing starts, the AC can coast (or run lightly) because the house has “thermal momentum.” It can take hours to warm back up to the comfort ceiling.
Won’t pre-cooling make my house uncomfortable?
Not if configured correctly. Pre-cooling targets are usually 2–4°F below the normal setpoint — cool, but not cold — and only run for 1–2 hours before on-peak begins. Well-tuned systems keep indoor temperature within the comfort band you define. If it’s too cool, just change the band and you’ll still save.
Can I do this with any smart thermostat?
Most modern smart thermostats accept setpoint changes from Home Assistant or similar platforms. Ecobee, Honeywell, Nest (with some limitations), and any Z-Wave, Zigbee, or Wi-Fi thermostats are typically compatible. Hungry Machines currently works with any thermostat Home Assistant supports.
What if the weather forecast is wrong?
The optimizer uses a probabilistic approach, which means small forecast errors produce small schedule errors. Larger errors (a surprise heat wave not in the forecast, for example) could cause some comfort miss, but the schedule re-runs nightly with fresh forecasts, so the system self-corrects quickly.
How does a per-user thermal model get built?
The system collects indoor temperature, outdoor temperature, HVAC state, and target temperature every few minutes. After a week or two of data, it fits a machine learning physics model that captures how your house responds to outdoor temperature, solar gain, and HVAC operation. The model is refit weekly so it stays accurate as seasons change.
Does this work for heat pumps?
Yes — in fact, heat pumps benefit more than conventional systems because their efficiency varies with outdoor temperature. Running a heat pump during warmer off-peak hours (when its coefficient of performance is higher) saves more energy than running it during cold on-peak hours.
Getting Started
If you want to automate HVAC scheduling on a TOU rate without manually adjusting your thermostat every day, get started with Hungry Machines, or contact us with questions.