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.
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.
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. All shadow prices are published natively in $/kWh; no unit conversion is applied at the dashboard.
Switchboard shadow energy price by hour of day ($/kWh)
Load forecast envelope shadow by NEM region and hour ($/kWh)
LP dual on HAEO's load forecast limit, sourced from shadow_load_forecast_price. Positive: extra kWh of load increases system cost. Negative: relaxing the cap would save money.
Solar forecast envelope shadow by NEM region and hour ($/kWh)
LP dual on HAEO's solar forecast limit, sourced from shadow_solar_forecast_price. Positive: extra solar would earn revenue. Negative: export envelope is biting and curtailing dispatch.
VSR conformance coverage
AEMO Voluntarily Scheduled Resource (VSR) data points mapped against what the publisher emits today. LIVE: streaming now via the schema v2.0 publisher. EXTENDABLE: schema or config addition, not modelling work. WIP: in progress against the IPRR Stage 1 (mid-2027) milestone. GAP: aggregator-side or AEMO-side work, outside the household scope. Mapped against the AEMO VSR Guidelines (Nov 2025), SCADA Lite Connection Guide (May 2025), and the 15 May 2026 IPRR stakeholder pack.
| AEMO data point | What it is | Source field / sensor | Status |
|---|
Source pack: AEMO VSR Guidelines (Final, Nov 2025), SCADA Lite Connection Guide (May 2025), IPRR Implementation Stakeholder Pack (15 May 2026). Status assessed against the current publisher (schema v2.0) emitting from one household; aggregator roll-up to DUID is out of scope for this dashboard.