Independent · not affiliated with NESO
fintansbonus.money
Grid performance
Historical data on what it costs to balance Britain's grid, how much wind was paid to stop, how often margins got tight, and how well demand was forecast. Every chart has a data table and a source link, and partial years are clearly marked.
System cost
NESO publishes two different totals. The audited accounts give one, and its Annual Balancing Cost Report gives an operational total built from cost categories. They differ every year, sometimes up and sometimes down, so we chart them separately and never splice them. The operational series is longer and already includes FY2025-26.
£ million
What the system operator spent keeping supply and demand matched and power flows within network limits, as stated in its audited accounts. Recovered from consumers through BSUoS charges.
| Period | Value | Type |
|---|---|---|
| FY2021-22 | £3,153m | Reported |
| FY2022-23 | £4,109m | Reported |
| FY2023-24 | £2,506m | Reported |
| FY2024-25 | £2,713m | Reported |
£ million
Sum of NESO's operational balancing cost categories (constraints, energy imbalance, minor components, reactive, reserve, response, restoration). A different definition from the statutory accounts figure.
| Period | Value | Type |
|---|---|---|
| FY2018-19 | £1,190m | Calculated |
| FY2019-20 | £1,325m | Calculated |
| FY2020-21 | £1,843m | Calculated |
| FY2021-22 | £3,137m | Calculated |
| FY2022-23 | £4,150m | Calculated |
| FY2023-24 | £2,455m | Calculated |
| FY2024-25 | £2,705m | Calculated |
| FY2025-26 | £3,126m | Calculated |
£ per MWh
Statutory balancing costs divided by national demand. This strips out changes in how much electricity was used.
| Period | Value | Type |
|---|---|---|
| FY2021-22 | £12.80/MWh | Calculated |
| FY2022-23 | £17.79/MWh | Calculated |
| FY2023-24 | £10.95/MWh | Calculated |
| FY2024-25 | £11.67/MWh | Calculated |
£ million
NESO's own estimate of quantified savings. Shown so the claim can be weighed, not because we have verified it.
| Period | Value | Type |
|---|---|---|
| FY2025-26 | £891m | Estimate |
Constraints
When the transmission network can’t carry power from where it’s generated to where it’s needed, NESO pays some generators to turn down and others to turn up. The first chart uses NESO’s report workbook. The second rebuilds the same costs from NESO’s daily data as a cross-check. The two agree within a fraction of a percent, and the coverage report lists the gaps.
£ million
Cost of paying generators to turn down (and others to turn up) because the transmission network cannot carry the power. From NESO's Annual Balancing Cost Report data workbook.
| Period | Value | Type |
|---|---|---|
| FY2018-19 | £446m | Reported |
| FY2019-20 | £419m | Reported |
| FY2020-21 | £546m | Reported |
| FY2021-22 | £1,133m | Reported |
| FY2022-23 | £1,501m | Reported |
| FY2023-24 | £1,039m | Reported |
| FY2024-25 | £1,708m | Reported |
| FY2025-26 | £1,958m | Reported |
£ million
Thermal vs voltage, inertia and largest-loss constraints, from NESO's daily Constraint Breakdown files. Complete years only.
Renewables
NESO’s own figures for how much wind it paid to switch off, and what share of potential wind output that was.
TWh
Wind output NESO paid to switch off, mostly because the network could not carry it. NESO's own published figure.
| Period | Value | Type |
|---|---|---|
| FY2018-19 | 2.28 TWh | Reported |
| FY2019-20 | 2.47 TWh | Reported |
| FY2020-21 | 3.21 TWh | Reported |
| FY2021-22 | 3.04 TWh | Reported |
| FY2022-23 | 3.18 TWh | Reported |
| FY2023-24 | 5.31 TWh | Reported |
| FY2024-25 | 9.37 TWh | Reported |
| FY2025-26 | 11.1 TWh | Reported |
%
Curtailed wind as a percentage of what wind farms could have generated without curtailment, per NESO's workbook.
| Period | Value | Type |
|---|---|---|
| FY2018-19 | 5.3% | Reported |
| FY2019-20 | 4.5% | Reported |
| FY2020-21 | 5.9% | Reported |
| FY2021-22 | 5.5% | Reported |
| FY2022-23 | 4.8% | Reported |
| FY2023-24 | 7.6% | Reported |
| FY2024-25 | 12.9% | Reported |
| FY2025-26 | 13.0% | Reported |
TWh
Absolute energy moved by balancing actions for thermal constraints: turn-down plus turn-up. From NESO's workbook.
| Period | Value | Type |
|---|---|---|
| FY2018-19 | 4.97 TWh | Reported |
| FY2019-20 | 4.95 TWh | Reported |
| FY2020-21 | 5.49 TWh | Reported |
| FY2021-22 | 4.12 TWh | Reported |
| FY2022-23 | 7.75 TWh | Reported |
| FY2023-24 | 7.48 TWh | Reported |
| FY2024-25 | 13.52 TWh | Reported |
| FY2025-26 | 15.39 TWh | Reported |
We also rebuild wind turn-down from NESO’s unit-by-unit Wind BOA Volumes data, to check the headline figure. That reconstruction is provisional until reviewed, so it isn’t charted here. It is listed in the evidence registry as awaiting review.
Reliability
An Electricity Margin Notice is NESO asking the market for more spare capacity because margins look thin. It is not a blackout. We count incidents, not messages: each incident has an initial notice, usually some updates, and a cancellation. Elexon’s API only goes back to May 2023, so we start the count there.
count
Distinct occasions when NESO formally warned the market that spare generation margin was too thin. Updates, re-issues and cancellations within an incident are not counted separately.
Hatched bars are partial periods.
| Period | Value | Type |
|---|---|---|
| FY2023-24 (2023-05-09 to 2024-03-31) | 0 | Calculated |
| FY2024-25 | 1 | Calculated |
| FY2025-26 | 0 | Calculated |
| FY2026-27 (2026-04-01 to 2026-11-13) | 7 | Calculated |
FY2026-27 (2026-04-01 to 2026-11-13): 7
Incidents first published: 2026-06-23, 2026-06-25, 2026-07-08, 2026-08-11, 2026-09-27, 2026-10-05, 2026-11-08.
FY2024-25: 1
Incidents first published: 2025-01-07.
count
Capacity Market Notices marked 'Currently Active' in Elexon's system warnings feed. Cancellations are not counted.
Hatched bars are partial periods.
| Period | Value | Type |
|---|---|---|
| FY2023-24 (2023-05-09 to 2024-03-31) | 0 | Calculated |
| FY2024-25 | 4 | Calculated |
| FY2025-26 | 0 | Calculated |
| FY2026-27 (2026-04-01 to 2026-11-13) | 0 | Calculated |
We have also counted hours when NESO’s own 4-hour-ahead forecast of de-rated margin fell below 1,000 MW, and the tightest margin it forecast each year. These are new reconstructions with thresholds we chose. They stay out of the charts until reviewed.
Forecasting
How close NESO’s day-ahead forecast of national demand came to what actually happened. Forecasts are typically published about a day before delivery, and each is matched to its own issue time. National demand excludes embedded solar and wind, which NESO can’t meter directly. Their growth makes the job harder, and so does the weather.
%
Average gap between NESO's day-ahead national demand forecast and outturn, as a percentage of outturn.
Hatched bars are partial periods.
| Period | Value | Type |
|---|---|---|
| FY2021-22 | 2.18% | Calculated |
| FY2022-23 | 2.35% | Calculated |
| FY2023-24 | 2.36% | Calculated |
| FY2024-25 | 2.48% | Calculated |
| FY2025-26 | 2.71% | Calculated |
| FY2026-27 to 2026-11-14 | 3.34% | Calculated |
%
Total absolute error divided by total outturn. Weights high-demand periods more than mean APE does.
Hatched bars are partial periods.
| Period | Value | Type |
|---|---|---|
| FY2021-22 | 2.18% | Calculated |
| FY2022-23 | 2.34% | Calculated |
| FY2023-24 | 2.31% | Calculated |
| FY2024-25 | 2.44% | Calculated |
| FY2025-26 | 2.62% | Calculated |
| FY2026-27 to 2026-11-14 | 3.2% | Calculated |
MW
The same error in megawatts.
Hatched bars are partial periods.
| Period | Value | Type |
|---|---|---|
| FY2021-22 | 612 MW | Calculated |
| FY2022-23 | 616 MW | Calculated |
| FY2023-24 | 602 MW | Calculated |
| FY2024-25 | 646 MW | Calculated |
| FY2025-26 | 684 MW | Calculated |
| FY2026-27 to 2026-11-14 | 754 MW | Calculated |
MW
Positive values mean demand was over-forecast on average; negative, under-forecast.
Hatched bars are partial periods.
| Period | Value | Type |
|---|---|---|
| FY2021-22 | 14 MW | Calculated |
| FY2022-23 | 24 MW | Calculated |
| FY2023-24 | 17 MW | Calculated |
| FY2024-25 | 18 MW | Calculated |
| FY2025-26 | 7 MW | Calculated |
| FY2026-27 to 2026-11-14 | -10 MW | Calculated |
Explorer
Different units can’t share an axis honestly, so both series are indexed to the same base year. Complete financial years only.
Both series = 100 in FY2018-19. Hover for the actual values. Moving together is not the same as one causing the other.
Data last checked 14 Nov 2026.