BPA Demand Forecast Accuracy: Error, Bias and Worst Miss, 13 October to 12 November 2026
The day-ahead demand forecast for BPA was off by 1.7% on average (mean absolute percentage error) over 719 hours from 13 October to 12 November 2026, and 98% of hours landed within 5% of the reading. Its bias was +0.0%: it ran close to balanced on average. The largest miss was 1,210 MW (16.1%) too low at 12 Nov 2026, 04:00 PST (UTC-08:00). Dates and times are local (America/Los_Angeles).
Key Facts
- The day-ahead demand forecast for BPA was off by 1.7% on average (mean absolute percentage error) over 719 hours from 13 October to 12 November 2026, and 98% of hours landed within 5% of the reading. Its bias was +0.0%: it ran close to balanced on average. The largest miss was 1,210 MW (16.1%) too low at 12 Nov 2026, 04:00 PST (UTC-08:00).
- Across 53 US grids ranked by average error over their own latest 30 day windows, BPA came 3 (1 is the smallest error).
- On average the forecast differed from reported demand by 118 MW, against average demand of 7,057 MW.
- The forecast was above reported demand in 49% of compared hours.
Forecast Error at a Glance
719 hours from 13 October to 12 November 2026Average error is the mean absolute percentage gap between the forecast and reported demand. Bias is the signed mean (+2 MW per hour on average): the forecast ran close to balanced on average. The worst miss was 1,210 MW (16.1%) too low at 12 Nov 2026, 04:00 PST (UTC-08:00): forecast 6,290 MW, reported 7,500 MW.
Source: U.S. Energy Information Administration (EIA). (US Government work, public domain) Data as of 2026-11-12. 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 12 Nov 2026, 04:00 PST (UTC-08:00)Show the data table (168 rows)
| Local hour | Reported demand | Day-ahead forecast |
|---|---|---|
| 5 Nov, 05:00 | 7,045 MW | 7,181 MW |
| 5 Nov, 06:00 | 7,596 MW | 7,801 MW |
| 5 Nov, 07:00 | 7,920 MW | 8,062 MW |
| 5 Nov, 08:00 | 7,836 MW | 7,988 MW |
| 5 Nov, 09:00 | 7,644 MW | 7,764 MW |
| 5 Nov, 10:00 | 7,474 MW | 7,558 MW |
| 5 Nov, 11:00 | 7,342 MW | 7,398 MW |
| 5 Nov, 12:00 | 7,247 MW | 7,303 MW |
| 5 Nov, 13:00 | 7,085 MW | 7,192 MW |
| 5 Nov, 14:00 | 7,046 MW | 7,131 MW |
| 5 Nov, 15:00 | 7,079 MW | 7,187 MW |
| 5 Nov, 16:00 | 7,347 MW | 7,468 MW |
| 5 Nov, 17:00 | 7,675 MW | 7,828 MW |
| 5 Nov, 18:00 | 7,702 MW | 7,832 MW |
| 5 Nov, 19:00 | 7,613 MW | 7,745 MW |
| 5 Nov, 20:00 | 7,454 MW | 7,603 MW |
| 5 Nov, 21:00 | 7,193 MW | 7,320 MW |
| 5 Nov, 22:00 | 6,871 MW | 6,976 MW |
| 5 Nov, 23:00 | 6,573 MW | 6,710 MW |
| 6 Nov, 00:00 | 6,451 MW | 6,391 MW |
| 6 Nov, 01:00 | 6,367 MW | 6,184 MW |
| 6 Nov, 02:00 | 6,312 MW | 6,100 MW |
| 6 Nov, 03:00 | 6,390 MW | 6,145 MW |
| 6 Nov, 04:00 | 6,553 MW | 6,340 MW |
| 6 Nov, 05:00 | 6,982 MW | 6,800 MW |
| 6 Nov, 06:00 | 7,531 MW | 7,375 MW |
| 6 Nov, 07:00 | 7,764 MW | 7,634 MW |
| 6 Nov, 08:00 | 7,826 MW | 7,568 MW |
| 6 Nov, 09:00 | 7,723 MW | 7,458 MW |
| 6 Nov, 10:00 | 7,570 MW | 7,294 MW |
| 6 Nov, 11:00 | 7,452 MW | 7,141 MW |
| 6 Nov, 12:00 | 7,334 MW | 7,027 MW |
| 6 Nov, 13:00 | 7,054 MW | 6,928 MW |
| 6 Nov, 14:00 | 7,454 MW | 6,868 MW |
| 6 Nov, 15:00 | 7,298 MW | 6,887 MW |
| 6 Nov, 16:00 | 7,525 MW | 7,091 MW |
| 6 Nov, 17:00 | 7,664 MW | 7,293 MW |
| 6 Nov, 18:00 | 7,569 MW | 7,204 MW |
| 6 Nov, 19:00 | 7,374 MW | 7,054 MW |
| 6 Nov, 20:00 | 6,915 MW | 6,856 MW |
| 6 Nov, 21:00 | 6,646 MW | 6,628 MW |
| 6 Nov, 22:00 | 6,644 MW | 6,380 MW |
| 6 Nov, 23:00 | 6,320 MW | 6,128 MW |
| 7 Nov, 00:00 | 6,175 MW | 6,114 MW |
| 7 Nov, 01:00 | 6,098 MW | 6,015 MW |
| 7 Nov, 02:00 | 6,018 MW | 5,969 MW |
| 7 Nov, 03:00 | 5,982 MW | 5,978 MW |
| 7 Nov, 04:00 | 6,094 MW | 6,061 MW |
| 7 Nov, 05:00 | 6,336 MW | 6,290 MW |
| 7 Nov, 06:00 | 6,612 MW | 6,558 MW |
| 7 Nov, 07:00 | 6,873 MW | 6,826 MW |
| 7 Nov, 08:00 | 7,041 MW | 7,014 MW |
| 7 Nov, 09:00 | 7,121 MW | 7,049 MW |
| 7 Nov, 10:00 | 7,004 MW | 6,979 MW |
| 7 Nov, 11:00 | 6,903 MW | 6,880 MW |
| 7 Nov, 12:00 | 6,782 MW | 6,730 MW |
| 7 Nov, 13:00 | 6,644 MW | 6,563 MW |
| 7 Nov, 14:00 | 6,565 MW | 6,585 MW |
| 7 Nov, 15:00 | 6,597 MW | 6,616 MW |
| 7 Nov, 16:00 | 6,847 MW | 6,861 MW |
| 7 Nov, 17:00 | 7,111 MW | 7,109 MW |
| 7 Nov, 18:00 | 7,020 MW | 7,034 MW |
| 7 Nov, 19:00 | 6,882 MW | 6,884 MW |
| 7 Nov, 20:00 | 6,778 MW | 6,683 MW |
| 7 Nov, 21:00 | 6,554 MW | 6,477 MW |
| 7 Nov, 22:00 | 6,395 MW | 6,299 MW |
| 7 Nov, 23:00 | 6,175 MW | 6,073 MW |
| 8 Nov, 00:00 | 5,992 MW | 5,915 MW |
| 8 Nov, 01:00 | 5,863 MW | 5,758 MW |
| 8 Nov, 02:00 | 5,852 MW | 5,701 MW |
| 8 Nov, 03:00 | 5,850 MW | 5,718 MW |
| 8 Nov, 04:00 | 5,921 MW | 5,786 MW |
| 8 Nov, 05:00 | 6,049 MW | 5,990 MW |
| 8 Nov, 06:00 | 6,371 MW | 6,215 MW |
| 8 Nov, 07:00 | 6,631 MW | 6,507 MW |
| 8 Nov, 08:00 | 6,885 MW | 6,765 MW |
| 8 Nov, 09:00 | 6,965 MW | 6,861 MW |
| 8 Nov, 10:00 | 6,968 MW | 6,800 MW |
| 8 Nov, 11:00 | 6,921 MW | 6,725 MW |
| 8 Nov, 12:00 | 6,847 MW | 6,681 MW |
| 8 Nov, 13:00 | 6,802 MW | 6,643 MW |
| 8 Nov, 14:00 | 6,743 MW | 6,664 MW |
| 8 Nov, 15:00 | 6,791 MW | 6,743 MW |
| 8 Nov, 16:00 | 7,072 MW | 7,058 MW |
| 8 Nov, 17:00 | 7,403 MW | 7,399 MW |
| 8 Nov, 18:00 | 7,409 MW | 7,401 MW |
| 8 Nov, 19:00 | 7,316 MW | 7,323 MW |
| 8 Nov, 20:00 | 7,171 MW | 7,177 MW |
| 8 Nov, 21:00 | 6,918 MW | 6,923 MW |
| 8 Nov, 22:00 | 6,603 MW | 6,647 MW |
| 8 Nov, 23:00 | 6,362 MW | 6,354 MW |
| 9 Nov, 00:00 | 6,155 MW | 6,182 MW |
| 9 Nov, 01:00 | 6,089 MW | 6,137 MW |
| 9 Nov, 02:00 | 6,090 MW | 6,156 MW |
| 9 Nov, 03:00 | 6,157 MW | 6,252 MW |
| 9 Nov, 04:00 | 6,397 MW | 6,535 MW |
| 9 Nov, 05:00 | 6,869 MW | 7,082 MW |
| 9 Nov, 06:00 | 7,449 MW | 7,758 MW |
| 9 Nov, 07:00 | 7,758 MW | 8,098 MW |
| 9 Nov, 08:00 | 7,756 MW | 8,043 MW |
| 9 Nov, 09:00 | 7,647 MW | 7,850 MW |
| 9 Nov, 10:00 | 7,569 MW | 7,635 MW |
| 9 Nov, 11:00 | 7,544 MW | 7,466 MW |
| 9 Nov, 12:00 | 7,513 MW | 7,295 MW |
| 9 Nov, 13:00 | 7,481 MW | 7,191 MW |
| 9 Nov, 14:00 | 7,480 MW | 7,161 MW |
| 9 Nov, 15:00 | 7,566 MW | 7,191 MW |
| 9 Nov, 16:00 | 7,912 MW | 7,486 MW |
| 9 Nov, 17:00 | 8,162 MW | 7,805 MW |
| 9 Nov, 18:00 | 8,048 MW | 7,796 MW |
| 9 Nov, 19:00 | 7,910 MW | 7,671 MW |
| 9 Nov, 20:00 | 7,642 MW | 7,465 MW |
| 9 Nov, 21:00 | 7,324 MW | 7,161 MW |
| 9 Nov, 22:00 | 6,892 MW | 6,840 MW |
| 9 Nov, 23:00 | 6,577 MW | 6,575 MW |
| 10 Nov, 00:00 | 6,387 MW | 6,397 MW |
| 10 Nov, 01:00 | 6,294 MW | 6,269 MW |
| 10 Nov, 02:00 | 6,191 MW | 6,219 MW |
| 10 Nov, 03:00 | 6,172 MW | 6,242 MW |
| 10 Nov, 04:00 | 6,412 MW | 6,436 MW |
| 10 Nov, 05:00 | 6,851 MW | 6,868 MW |
| 10 Nov, 06:00 | 7,401 MW | 7,396 MW |
| 10 Nov, 07:00 | 7,667 MW | 7,617 MW |
| 10 Nov, 08:00 | 7,623 MW | 7,574 MW |
| 10 Nov, 09:00 | 7,657 MW | 7,484 MW |
| 10 Nov, 10:00 | 7,563 MW | 7,394 MW |
| 10 Nov, 11:00 | 7,563 MW | 7,338 MW |
| 10 Nov, 12:00 | 7,549 MW | 7,303 MW |
| 10 Nov, 13:00 | 7,548 MW | 7,276 MW |
| 10 Nov, 14:00 | 7,481 MW | 7,302 MW |
| 10 Nov, 15:00 | 7,450 MW | 7,376 MW |
| 10 Nov, 16:00 | 7,624 MW | 7,637 MW |
| 10 Nov, 17:00 | 7,828 MW | 7,896 MW |
| 10 Nov, 18:00 | 7,726 MW | 7,798 MW |
| 10 Nov, 19:00 | 7,588 MW | 7,624 MW |
| 10 Nov, 20:00 | 7,317 MW | 7,384 MW |
| 10 Nov, 21:00 | 7,056 MW | 7,056 MW |
| 10 Nov, 22:00 | 6,760 MW | 6,727 MW |
| 10 Nov, 23:00 | 6,402 MW | 6,436 MW |
| 11 Nov, 00:00 | 6,235 MW | 6,253 MW |
| 11 Nov, 01:00 | 6,115 MW | 6,129 MW |
| 11 Nov, 02:00 | 6,076 MW | 6,059 MW |
| 11 Nov, 03:00 | 6,087 MW | 6,045 MW |
| 11 Nov, 04:00 | 6,187 MW | 6,205 MW |
| 11 Nov, 05:00 | 6,578 MW | 6,579 MW |
| 11 Nov, 06:00 | 6,950 MW | 7,008 MW |
| 11 Nov, 07:00 | 7,216 MW | 7,282 MW |
| 11 Nov, 08:00 | 7,298 MW | 7,368 MW |
| 11 Nov, 09:00 | 7,296 MW | 7,361 MW |
| 11 Nov, 10:00 | 7,206 MW | 7,229 MW |
| 11 Nov, 11:00 | 7,123 MW | 7,170 MW |
| 11 Nov, 12:00 | 7,041 MW | 7,057 MW |
| 11 Nov, 13:00 | 6,983 MW | 6,996 MW |
| 11 Nov, 14:00 | 7,004 MW | 6,932 MW |
| 11 Nov, 15:00 | 6,963 MW | 6,991 MW |
| 11 Nov, 16:00 | 7,203 MW | 7,241 MW |
| 11 Nov, 17:00 | 7,485 MW | 7,518 MW |
| 11 Nov, 18:00 | 7,442 MW | 7,440 MW |
| 11 Nov, 19:00 | 7,329 MW | 7,337 MW |
| 11 Nov, 20:00 | 7,142 MW | 7,170 MW |
| 11 Nov, 21:00 | 6,910 MW | 6,911 MW |
| 11 Nov, 22:00 | 6,669 MW | 6,597 MW |
| 11 Nov, 23:00 | 6,327 MW | 6,313 MW |
| 12 Nov, 00:00 | 6,234 MW | 6,246 MW |
| 12 Nov, 01:00 | 6,094 MW | 6,097 MW |
| 12 Nov, 02:00 | 6,061 MW | 6,046 MW |
| 12 Nov, 03:00 | 6,095 MW | 6,082 MW |
| 12 Nov, 04:00 | 7,500 MW | 6,290 MW |
Assumptions
- Only hours with both a forecast and a positive demand reading count (719 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). BPA Demand Forecast Accuracy: Error, Bias and Worst Miss. https://worldpowermonitor.com/forecast-accuracy/bpa/
World Power Monitor. BPA Demand Forecast Accuracy: Error, Bias and Worst Miss. Data as of 2026-11-12. Data from U.S. Energy Information Administration. https://worldpowermonitor.com/forecast-accuracy/bpa/
@misc{wpm_forecast_accuracy_bpa_2026,
title = {{BPA Demand Forecast Accuracy: Error, Bias and Worst Miss}},
author = {{World Power Monitor}},
year = {2026},
note = {Data as of 2026-11-12. Data from U.S. Energy Information Administration.},
url = {https://worldpowermonitor.com/forecast-accuracy/bpa/}
} Permalink: https://worldpowermonitor.com/forecast-accuracy/bpa/
The Copy buttons add today's date as the access date.