SPP Demand Forecast Accuracy: Error, Bias and Worst Miss, 29 September to 28 October 2026
The day-ahead demand forecast for SPP was off by 4.9% on average (mean absolute percentage error) over 703 hours from 29 September to 28 October 2026, and 62% of hours landed within 5% of the reading. Its bias was +4.1%: it ran high on average, an over forecast. The largest miss was 5,019 MW (17.4%) too high at 16 Oct 2026, 23:00 CDT (UTC-05:00). Dates and times are local (America/Chicago).
Key Facts
- The day-ahead demand forecast for SPP was off by 4.9% on average (mean absolute percentage error) over 703 hours from 29 September to 28 October 2026, and 62% of hours landed within 5% of the reading. Its bias was +4.1%: it ran high on average, an over forecast. The largest miss was 5,019 MW (17.4%) too high at 16 Oct 2026, 23:00 CDT (UTC-05:00).
- Across 53 US grids ranked by average error over their own latest 30 day windows, SPP came 32 (1 is the smallest error).
- On average the forecast differed from reported demand by 1,560 MW, against average demand of 32,442 MW.
- The forecast was above reported demand in 76% of compared hours.
Forecast Error at a Glance
703 hours from 29 September to 28 October 2026Average error is the mean absolute percentage gap between the forecast and reported demand. Bias is the signed mean (+1,277 MW per hour on average): the forecast ran high on average, an over forecast. The worst miss was 5,019 MW (17.4%) too high at 16 Oct 2026, 23:00 CDT (UTC-05:00): forecast 33,836 MW, reported 28,817 MW.
Source: U.S. Energy Information Administration (EIA). (US Government work, public domain) Data as of 2026-10-28. Accuracy is computed by World Power Monitor from the operator's hourly forecast and reported demand.
Forecast and Reported Demand, Last 7 Days
Local time, to 28 Oct 2026, 06:00 CDT (UTC-05:00)Show the data table (168 rows)
| Local hour | Reported demand | Day-ahead forecast |
|---|---|---|
| 21 Oct, 07:00 | 31,371 MW | 34,690 MW |
| 21 Oct, 08:00 | 31,395 MW | 34,878 MW |
| 21 Oct, 09:00 | 31,377 MW | 34,619 MW |
| 21 Oct, 10:00 | 31,611 MW | 35,034 MW |
| 21 Oct, 11:00 | 32,060 MW | 35,511 MW |
| 21 Oct, 12:00 | 32,564 MW | 36,140 MW |
| 21 Oct, 13:00 | 33,144 MW | 36,945 MW |
| 21 Oct, 14:00 | 33,719 MW | 37,716 MW |
| 21 Oct, 15:00 | 34,294 MW | 38,259 MW |
| 21 Oct, 16:00 | 34,906 MW | 38,572 MW |
| 21 Oct, 17:00 | 34,994 MW | 38,655 MW |
| 21 Oct, 18:00 | 34,680 MW | 38,164 MW |
| 21 Oct, 19:00 | 34,438 MW | 37,497 MW |
| 21 Oct, 20:00 | 33,600 MW | 36,918 MW |
| 21 Oct, 21:00 | 32,526 MW | 35,932 MW |
| 21 Oct, 22:00 | 31,015 MW | 34,599 MW |
| 21 Oct, 23:00 | 29,490 MW | 33,225 MW |
| 22 Oct, 00:00 | 28,403 MW | 28,369 MW |
| 22 Oct, 01:00 | 27,716 MW | 27,705 MW |
| 22 Oct, 02:00 | 27,239 MW | 27,303 MW |
| 22 Oct, 03:00 | 27,081 MW | 27,128 MW |
| 22 Oct, 04:00 | 27,318 MW | 27,364 MW |
| 22 Oct, 05:00 | 28,229 MW | 28,253 MW |
| 22 Oct, 06:00 | 30,075 MW | 29,915 MW |
| 22 Oct, 07:00 | 31,349 MW | 30,915 MW |
| 22 Oct, 08:00 | 31,508 MW | 31,251 MW |
| 22 Oct, 09:00 | 31,681 MW | 31,571 MW |
| 22 Oct, 10:00 | 32,133 MW | 32,183 MW |
| 22 Oct, 11:00 | 32,672 MW | 32,775 MW |
| 22 Oct, 12:00 | 33,393 MW | 33,587 MW |
| 22 Oct, 13:00 | 34,363 MW | 34,525 MW |
| 22 Oct, 14:00 | 35,104 MW | 35,264 MW |
| 22 Oct, 15:00 | 35,718 MW | 35,812 MW |
| 22 Oct, 16:00 | 36,062 MW | 36,218 MW |
| 22 Oct, 17:00 | 35,847 MW | 36,175 MW |
| 22 Oct, 18:00 | 35,237 MW | 35,639 MW |
| 22 Oct, 19:00 | 34,800 MW | 35,058 MW |
| 22 Oct, 20:00 | 34,025 MW | 34,317 MW |
| 22 Oct, 21:00 | 32,926 MW | 33,142 MW |
| 22 Oct, 22:00 | 31,487 MW | 31,630 MW |
| 22 Oct, 23:00 | 29,945 MW | 30,074 MW |
| 23 Oct, 00:00 | 28,779 MW | 28,575 MW |
| 23 Oct, 01:00 | 28,033 MW | 27,849 MW |
| 23 Oct, 02:00 | 27,614 MW | 27,393 MW |
| 23 Oct, 03:00 | 27,384 MW | 27,157 MW |
| 23 Oct, 04:00 | 27,547 MW | 27,324 MW |
| 23 Oct, 05:00 | 28,364 MW | 28,143 MW |
| 23 Oct, 06:00 | 30,060 MW | 29,655 MW |
| 23 Oct, 07:00 | 31,259 MW | 30,717 MW |
| 23 Oct, 08:00 | 31,474 MW | 31,122 MW |
| 23 Oct, 09:00 | 31,619 MW | 31,502 MW |
| 23 Oct, 10:00 | 32,091 MW | 32,221 MW |
| 23 Oct, 11:00 | 32,733 MW | 32,896 MW |
| 23 Oct, 12:00 | 33,377 MW | 33,703 MW |
| 23 Oct, 13:00 | 34,123 MW | 34,528 MW |
| 23 Oct, 14:00 | 34,747 MW | 35,154 MW |
| 23 Oct, 15:00 | 35,234 MW | 35,665 MW |
| 23 Oct, 16:00 | 35,441 MW | 36,054 MW |
| 23 Oct, 17:00 | 35,204 MW | 35,936 MW |
| 23 Oct, 18:00 | 34,353 MW | 35,198 MW |
| 23 Oct, 19:00 | 33,822 MW | 34,549 MW |
| 23 Oct, 20:00 | 32,934 MW | 33,565 MW |
| 23 Oct, 21:00 | 32,011 MW | 32,523 MW |
| 23 Oct, 22:00 | 30,934 MW | 31,224 MW |
| 23 Oct, 23:00 | 29,645 MW | 29,839 MW |
| 24 Oct, 00:00 | 28,616 MW | 31,415 MW |
| 24 Oct, 01:00 | 27,803 MW | 30,796 MW |
| 24 Oct, 02:00 | 27,287 MW | 30,376 MW |
| 24 Oct, 03:00 | 26,996 MW | 30,150 MW |
| 24 Oct, 04:00 | 26,903 MW | 30,206 MW |
| 24 Oct, 05:00 | 27,238 MW | 30,522 MW |
| 24 Oct, 06:00 | 27,834 MW | 31,059 MW |
| 24 Oct, 07:00 | 28,532 MW | 31,742 MW |
| 24 Oct, 08:00 | 29,117 MW | 32,190 MW |
| 24 Oct, 09:00 | 29,759 MW | 32,761 MW |
| 24 Oct, 10:00 | 30,278 MW | 33,856 MW |
| 24 Oct, 11:00 | 30,972 MW | 34,664 MW |
| 24 Oct, 12:00 | 31,587 MW | 35,622 MW |
| 24 Oct, 13:00 | 32,312 MW | 36,604 MW |
| 24 Oct, 14:00 | 33,007 MW | 37,472 MW |
| 24 Oct, 15:00 | 33,574 MW | 38,074 MW |
| 24 Oct, 16:00 | 33,838 MW | 38,424 MW |
| 24 Oct, 17:00 | 33,654 MW | 38,251 MW |
| 24 Oct, 18:00 | 33,051 MW | 37,594 MW |
| 24 Oct, 19:00 | 32,684 MW | 36,796 MW |
| 24 Oct, 20:00 | 31,903 MW | 35,961 MW |
| 24 Oct, 21:00 | 31,007 MW | 35,045 MW |
| 24 Oct, 22:00 | 30,012 MW | 34,040 MW |
| 24 Oct, 23:00 | 28,929 MW | 32,840 MW |
| 25 Oct, 00:00 | 28,027 MW | 27,988 MW |
| 25 Oct, 01:00 | 27,254 MW | 27,261 MW |
| 25 Oct, 02:00 | 26,708 MW | 26,808 MW |
| 25 Oct, 03:00 | 26,406 MW | 26,521 MW |
| 25 Oct, 04:00 | 26,342 MW | 26,447 MW |
| 25 Oct, 05:00 | 26,473 MW | 26,631 MW |
| 25 Oct, 06:00 | 26,903 MW | 27,083 MW |
| 25 Oct, 07:00 | 27,611 MW | 27,667 MW |
| 25 Oct, 08:00 | 28,282 MW | 28,360 MW |
| 25 Oct, 09:00 | 28,945 MW | 29,012 MW |
| 25 Oct, 10:00 | 29,547 MW | 29,657 MW |
| 25 Oct, 11:00 | 30,314 MW | 30,394 MW |
| 25 Oct, 12:00 | 31,144 MW | 31,172 MW |
| 25 Oct, 13:00 | 31,984 MW | 31,891 MW |
| 25 Oct, 14:00 | 32,599 MW | 32,539 MW |
| 25 Oct, 15:00 | 33,166 MW | 33,151 MW |
| 25 Oct, 16:00 | 33,540 MW | 33,747 MW |
| 25 Oct, 17:00 | 33,595 MW | 34,072 MW |
| 25 Oct, 18:00 | 33,351 MW | 33,678 MW |
| 25 Oct, 19:00 | 33,228 MW | 33,371 MW |
| 25 Oct, 20:00 | 32,409 MW | 32,703 MW |
| 25 Oct, 21:00 | 31,427 MW | 31,740 MW |
| 25 Oct, 22:00 | 30,148 MW | 30,386 MW |
| 25 Oct, 23:00 | 28,814 MW | 28,951 MW |
| 26 Oct, 00:00 | 27,888 MW | 28,047 MW |
| 26 Oct, 01:00 | 27,150 MW | 27,396 MW |
| 26 Oct, 02:00 | 26,819 MW | 27,062 MW |
| 26 Oct, 03:00 | 26,724 MW | 26,945 MW |
| 26 Oct, 04:00 | 26,837 MW | 27,178 MW |
| 26 Oct, 05:00 | 27,786 MW | 28,153 MW |
| 26 Oct, 06:00 | 29,640 MW | 29,849 MW |
| 26 Oct, 07:00 | 31,073 MW | 31,063 MW |
| 26 Oct, 08:00 | 31,428 MW | 31,411 MW |
| 26 Oct, 09:00 | 31,634 MW | 31,805 MW |
| 26 Oct, 10:00 | 32,094 MW | 32,300 MW |
| 26 Oct, 11:00 | 32,698 MW | 32,763 MW |
| 26 Oct, 12:00 | 33,263 MW | 33,290 MW |
| 26 Oct, 13:00 | 33,774 MW | 34,019 MW |
| 26 Oct, 14:00 | 34,073 MW | 34,426 MW |
| 26 Oct, 15:00 | 34,346 MW | 34,795 MW |
| 26 Oct, 16:00 | 34,493 MW | 35,085 MW |
| 26 Oct, 17:00 | 34,280 MW | 35,110 MW |
| 26 Oct, 18:00 | 34,003 MW | 34,719 MW |
| 26 Oct, 19:00 | 33,819 MW | 34,419 MW |
| 26 Oct, 20:00 | 33,034 MW | 33,692 MW |
| 26 Oct, 21:00 | 31,932 MW | 32,707 MW |
| 26 Oct, 22:00 | 30,564 MW | 31,267 MW |
| 26 Oct, 23:00 | 29,201 MW | 29,705 MW |
| 27 Oct, 00:00 | 28,192 MW | 28,476 MW |
| 27 Oct, 01:00 | 27,531 MW | 27,773 MW |
| 27 Oct, 02:00 | 27,165 MW | 27,361 MW |
| 27 Oct, 03:00 | 27,042 MW | 27,199 MW |
| 27 Oct, 04:00 | 27,236 MW | 27,435 MW |
| 27 Oct, 05:00 | 28,132 MW | 28,343 MW |
| 27 Oct, 06:00 | 29,941 MW | 30,015 MW |
| 27 Oct, 07:00 | 31,292 MW | 31,187 MW |
| 27 Oct, 08:00 | 31,484 MW | 31,470 MW |
| 27 Oct, 09:00 | 31,783 MW | 31,675 MW |
| 27 Oct, 10:00 | 32,184 MW | 32,072 MW |
| 27 Oct, 11:00 | 32,587 MW | 32,445 MW |
| 27 Oct, 12:00 | 32,919 MW | 32,791 MW |
| 27 Oct, 13:00 | 33,421 MW | 33,217 MW |
| 27 Oct, 14:00 | 33,785 MW | 33,520 MW |
| 27 Oct, 15:00 | 34,161 MW | 33,766 MW |
| 27 Oct, 16:00 | 34,458 MW | 34,002 MW |
| 27 Oct, 17:00 | 34,454 MW | 34,032 MW |
| 27 Oct, 18:00 | 34,323 MW | 33,771 MW |
| 27 Oct, 19:00 | 34,322 MW | 33,591 MW |
| 27 Oct, 20:00 | 33,577 MW | 33,088 MW |
| 27 Oct, 21:00 | 32,466 MW | 32,147 MW |
| 27 Oct, 22:00 | 31,024 MW | 30,805 MW |
| 27 Oct, 23:00 | 29,598 MW | 29,388 MW |
| 28 Oct, 00:00 | 28,601 MW | 28,455 MW |
| 28 Oct, 01:00 | 28,028 MW | 27,765 MW |
| 28 Oct, 02:00 | 27,588 MW | 27,359 MW |
| 28 Oct, 03:00 | 27,450 MW | 27,205 MW |
| 28 Oct, 04:00 | 27,730 MW | 27,358 MW |
| 28 Oct, 05:00 | 28,681 MW | 28,190 MW |
| 28 Oct, 06:00 | 30,447 MW | 29,850 MW |
Assumptions
- Only hours with both a forecast and a positive demand reading count (703 of 720 hours in the window). Missing and zero values, and readings under 30% or over 3 times the grid's own median for the window, are treated as reporting faults and left out.
- Error is (forecast minus reported demand) divided by reported demand; average error uses absolute values so high and low misses do not cancel. Bias keeps the sign and does cancel.
- Reported demand is preliminary and may be revised. A 30 day window is a short sample and one heat wave or holiday can move these figures.
- US figures are for the EIA balancing authority or region named on this page. US and European grids are ranked separately.
Related
Cite this page
World Power Monitor. (2026). SPP Demand Forecast Accuracy: Error, Bias and Worst Miss. https://worldpowermonitor.com/forecast-accuracy/spp/
World Power Monitor. SPP Demand Forecast Accuracy: Error, Bias and Worst Miss. Data as of 2026-10-28. Data from U.S. Energy Information Administration. https://worldpowermonitor.com/forecast-accuracy/spp/
@misc{wpm_forecast_accuracy_spp_2026,
title = {{SPP Demand Forecast Accuracy: Error, Bias and Worst Miss}},
author = {{World Power Monitor}},
year = {2026},
note = {Data as of 2026-10-28. Data from U.S. Energy Information Administration.},
url = {https://worldpowermonitor.com/forecast-accuracy/spp/}
} Permalink: https://worldpowermonitor.com/forecast-accuracy/spp/
The Copy buttons add today's date as the access date.