NEM Flex Telemetry

OpenNEM for the demand side. Community-built open data on household demand flexibility in the National Electricity Market.

Households
--
Intervals reported
--
Counterfactual savings
$--
Last updated
--

Cohort flex stack

Total upward and downward flexibility available across the cohort, with the price signal overlay. The gap between flex_up (teal) and flex_down (rust) shows the aggregate demand-shift envelope.

Price-response curves

Two distinct elasticities. Import: grid import (kW) versus buy price ($/kWh) for net-importing intervals (expected slope: negative). Export: grid export (kW, positive magnitude) versus sell price ($/kWh) for net-exporting intervals (expected slope: positive). The vertical gap between the two curves at any price level is the live buy/sell spread the optimiser is working with.

Export curtailment vs static cap

What is the static export envelope (typically 5 kW) costing the cohort? For each interval, we compute net solar above the cap and value it at the prevailing sell price ($/kWh). Heatmap toggles between AUD lost, kWh curtailed, and the share of intervals where actual export was sitting at the cap. This is the live dollar case for replacing the static cap with a CSIP-AUS dynamic envelope.

Total energy curtailed
-- kWh
Total value lost
$--

Counterfactual ledger

Cumulative demand flexibility savings in AUD from battery and EV dispatch shaping vs. the same household running with setpoint at zero. The formula is asymmetric: net-importing intervals use the buy price ($/kWh), net-exporting use the export price, so negative feed-in periods are accounted for correctly. Caveat: the baseline currently uses realised total_load_kw, so optimiser-driven load shifting (hot water, EV start time, etc.) shows as zero saving. The number reported here is therefore a lower bound.

Total counterfactual savings
$--
Across cohort, since data collection began

Buy/sell spread

Hourly mean buy price (teal) and sell/export price (gold) by NEM region, in $/kWh. Intervals where the export price went negative (negative feed-in tariff) are highlighted in red. As middle-of-day FiT collapses, this spread quantifies the asymmetry that demand flexibility programmes must account for.

Assets and V2G

Asset mix across the cohort, EV plug duty cycle by connection state, and total setpoint decomposed by asset kind. V2G discharge events appear as negative kW in the dispatch share.

Asset mix: stored kWh by kind

V2G plug duty cycle: EV connection states

V2G dispatch share: setpoint by asset kind (kW)

Shadow prices

The headline shadow energy price is the LP dual on the switchboard power-balance constraint: the marginal cost of one extra kWh of net energy at the meter for the current dispatch interval. The envelope heatmaps below populate from HAEO's load and solar forecast-limit shadows, which bind almost continuously and reveal where the forecast envelope is shaping dispatch. HAEO publishes shadows in $/kW per 1-minute interval; the dashboard scales by 60 to display $/kWh.

Switchboard shadow energy price by hour of day ($/kWh)

Load forecast envelope shadow by postcode prefix and hour ($/kWh)

LP dual on HAEO's load forecast limit. Positive = extra kWh of load increases system cost; negative = relaxing the cap would save money.

Solar forecast envelope shadow by postcode prefix and hour ($/kWh)

LP dual on HAEO's solar forecast limit. Positive = extra solar would earn revenue; negative = export envelope is biting and curtailing dispatch.