best

Home Assistant energy dashboard deep dive

Set up and get real value from the Home Assistant energy dashboard in a local-first smart home, with accurate hardware and integration advice.

On this page
  1. How the energy dashboard actually works
  2. 1. Pick hardware that reports real kWh — locally
  3. 2. Get the data into Home Assistant
  4. 3. Turn the data into decisions
  5. A note on “local” vs cloud
  6. Quick verdict

The Home Assistant energy dashboard turns raw meter and plug data into something useful: where your power goes, when it costs the most, and what’s quietly eating kilowatt-hours. The dashboard itself is built in; the work is feeding it accurate data from the right hardware and wiring up the cost numbers. This guide keeps the hardware and integration facts straight so your dashboard reflects reality.

How the energy dashboard actually works

The energy dashboard consumes long-term statistics from sensors that report cumulative energy in kWh (with the right device_class and state_class). You configure it under Settings → Dashboards → Energy, where you tell it which sensors represent grid consumption, solar production, battery, individual devices, and (optionally) gas and water. If you’re starting with nothing wired up yet, our energy dashboard from scratch walkthrough builds the whole thing step by step.

A key point that trips people up: the energy dashboard is powered by long-term statistics, which are stored compactly and are not deleted by your recorder’s purge_keep_days. So you get months of energy trends even if you keep only a week or two of detailed history (and if that detailed history is ballooning the database, our recorder tuning guide covers trimming it safely). You do not need a separate “long-term storage” hack for the energy dashboard, though InfluxDB + Grafana is a fine option if you want custom long-range charts.

1. Pick hardware that reports real kWh — locally

Accurate data beats fancy dashboards. For a local-first setup, the best sources are whole-home meters and per-device plugs that report to Home Assistant over your LAN — no cloud round-trip.

Whole-home (the highest-value option). If you’re in a region with a P1 smart-meter port (much of Europe), the HomeWizard P1 Meter reads your utility meter directly and exposes import/export and power over a local HTTP REST API (enable “Local API” in the HomeWizard app). Home Assistant has an official HomeWizard integration that polls it locally — note it’s HTTP/REST, not MQTT. For per-outlet monitoring from the same ecosystem, the HomeWizard Energy Socket works the same way over local HTTP.

Per-device smart plugs. For tracking individual appliances:

  • The Sonoff S31 is a 2.4 GHz Wi-Fi plug with energy monitoring (it is not Zigbee). Out of the box it’s cloud-tied, but it’s a community favorite precisely because you can reflash it with ESPHome or Tasmota for fully local power/current/voltage reporting straight into Home Assistant. The Sonoff S40 is also Wi-Fi with energy monitoring, but don’t assume it flashes the same way: the S40 series uses a Bouffalo Lab BL602 chip rather than an ESP, so ESPHome and Tasmota don’t run on it (its local path is the eWeLink LAN integration instead).
  • For a Zigbee-native option, plenty of plugs (various frient, Aqara, Third Reality, and other Zigbee outlets) report power and energy through ZHA or Zigbee2MQTT. A Zigbee plug needs a Zigbee coordinator on your Home Assistant host — for example a Connect ZBT-2 stick or a ConBee III (which is a Zigbee coordinator, with optional Thread firmware — not Z-Wave).

Whatever you choose, prioritize a device that reports a real cumulative energy (kWh) value, not just instantaneous watts — the energy dashboard needs the cumulative figure.

2. Get the data into Home Assistant

The integration path depends on the device:

  • Local HTTP/REST — HomeWizard P1 Meter and Energy Socket (official HomeWizard integration).
  • Zigbee — power-monitoring Zigbee plugs via ZHA or Zigbee2MQTT (the latter uses a local Mosquitto MQTT broker).
  • Wi-Fi + ESPHome/Tasmota — flashed Sonoff S31 and similar ESP-based gear, reporting locally over your network (ESPHome talks natively to Home Assistant; Tasmota typically via MQTT).

After the sensor exists, open the Energy settings and assign each kWh sensor to the right slot (grid consumption, production, individual device, etc.). If a sensor doesn’t show up as selectable, it’s almost always because it lacks device_class: energy and state_class: total_increasing — fix that and it’ll appear.

3. Turn the data into decisions

Once data is flowing:

  • Find your baseline and spikes. Look at the daily curve — evening cooking and heating/cooling are usually the big movers. The “individual devices” section shows which plugs account for what.
  • Add tariffs. Enter your rate (and export rate, if you have solar) so the dashboard shows cost, not just kWh. On a time-of-use plan, this is where you see when running the dishwasher or charging an EV is cheapest.
  • Automate around it. Build automations that defer high-draw loads to off-peak hours, or alert you when a circuit’s draw is abnormally high (a sign something’s been left on). For per-appliance control, a monitored smart plug doubles as the switch.

A note on “local” vs cloud

The energy dashboard runs entirely on your Home Assistant instance — there’s no cloud requirement. The only “cloud” question is whether a given device phones home; that’s why reflashing Wi-Fi plugs with ESPHome/Tasmota, or using local-API devices like HomeWizard and Zigbee plugs, fits a local-first build best.

Worth correcting some common myths: smart speakers like Apple HomePod or Amazon Echo do not run Home Assistant and are not energy monitors. And there’s no “HomeKit energy bridge” — if you want HomeKit-exposed plugs in your dashboard, you read them into Home Assistant via their native integration (Wi-Fi/Zigbee/Matter), then surface the kWh sensor.

Quick verdict

Start with one accurate whole-home or whole-circuit source if you can (HomeWizard P1 where available), then add monitored plugs for the appliances you actually care about. Keep it local — local-API meters, Zigbee plugs, or ESPHome-flashed Wi-Fi plugs. Assign the kWh sensors in the Energy settings, enter your tariff, and let long-term statistics build the trends. From there it’s about acting on what you see, not collecting ever more sensors.

Next steps

Compare this category side by side

If you want fewer opinions and more matrix-style tradeoffs, the comparison pages are the next stop.

See comparisons →

Inspect all products

The full product database keeps the caveats, setup notes, and compatibility details attached to each device.

Browse products →

Back up and read the explainers

If a buying guide feels too specific too fast, the guides section covers the broader local-first logic behind it.

Read guides →

Related articles

Best local-first smart home hubs

The best smart home hubs and controllers for people who care about local control, Home Assistant compatibility, and fewer long-term regrets.

Read article →

Best smart plugs with local control and energy monitoring

The best local smart plugs with energy monitoring for Home Assistant: real local control over Zigbee, Z-Wave, or Wi-Fi plus accurate power data, no cloud.

Read article →

Best local security cameras for Home Assistant

The best Home Assistant-friendly local camera options for buyers who care about RTSP, ONVIF, NVR compatibility, and lower cloud dependence.

Read article →
New guides and product notes, no inbox required. Follow via RSS →