What has changed

A figure quoted from this tool can move for three unrelated reasons, and on the page they look identical — the number simply differs from the one you wrote down. The grid may have changed. The window the average covers may have grown. Or a data release may have been swapped underneath it. This page separates them, because only the first is about electricity.

Every figure is recorded daily with the window it covers and the release it was built from, so a movement can be attributed rather than re-derived by hand after someone notices it.

Loading…

The three panels below follow this region. The quarterly bubbles at the foot of the page cover every region and do not.

CISO — three views of the selected region

The same hours, measured over different windows

One series, three windows. The trailing lines hold their length constant, so only their contents move — they are comparable with themselves a month later. The cumulative line was not: it grew a little every day and slid even when the grid had not moved. It is now bounded too — the underlying hours are held to a fixed 400-day window — so the older part of that line still carries the growing-window artefact and the recent part does not. Where the trailing lines swing and the cumulative one glides, the swing is the season and the glide is the arithmetic.

Not enough recorded history yet to plot.

Whether the boundaries move together

Every hourly boundary on a trailing 30-day window, with the selected one drawn forward. Lines that rise and fall together are the grid moving underneath all of them. Lines that converge or separate mean the choice of boundary is mattering more, or less, than it did — which is the part a citation fixes in place and then stops tracking.

Not enough recorded history yet to plot.

What the grid was made of

Generation by fuel, one point per week, each a trailing 30-day average. Share shows what the mix is made of and sums to the whole, so it says nothing about how much was generated. Energy shows how much there was, and makes a small fuel hard to read beside a large one. Both are the same stored numbers.

Not enough recorded weeks to plot.

Price against carbon, quarter by quarter

The cost page plots these two quantities against each other for one moment. Here the same plot is repeated for each quarter on shared scales, so a region that moved can be seen to have moved. Only the horizontal axis carries change: the rate is an annual figure that holds until a new file is published, while carbon intensity is rebuilt from the hourly record and moves with the seasons.

These panels cover every region, not the one selected above.

No quarterly snapshots recorded yet.

What is recorded, and since when

The hourly boundaries above were reconstructed from the stored archive, so their history runs back about a year. The price and residual figures could not be reconstructed: they depend on which annual release was loaded at the time, and only the current one is held. Those series begin the day recording started and fill in from there.

MetricsWindowDaysRegionsFrom
demandcumulative111522025-07-28
demandtrailing_30d108522025-08-18
demandtrailing_365d69502026-05-18
laddercumulative108592025-08-18
laddertrailing_30d105562025-09-08
laddertrailing_365d66532026-06-08
mixtrailing_30d52592025-09-08
ratesvintage4222026-08-28
residualvintage4592026-08-28

The price and residual series are expected to sit still. Both read annual published values, so a flat line there is the intended result — evidence the comparison is stable — and a step, when one comes, will sit beside the release that caused it rather than being mistaken for the grid moving.

Disclaimer

This project is developed purely out of academic intrigue. It is not a commercial product, a compliance tool, or professional advice of any kind.

It is built on United States Government data - EIA-930, the EPA/NETL US Electricity Baseline (eLCI), and EPA eGRID - which is used responsibly and cited throughout. Any error in the processing, interpretation or presentation of that data is mine and not the publishing agencies'. Nothing here is endorsed by, affiliated with, or approved by any government agency.

The outputs of this page should be used at the user's own risk. I make no warranty that any figure is accurate, complete, or fit for any particular purpose, and I bear no responsibility or liability for any decision taken on the basis of them. The limitations I have found are documented openly on the About page and in the discrepancy register - that register is a record of what I have found, not an assurance of what remains.

This work presents only my own opinions, if any. It reflects no position or opinion of my employer.