Portugal Demand Forecast Accuracy: Error, Bias and Worst Miss, 30 September to 28 October 2026
The day-ahead demand forecast for Portugal was off by 2.0% on average (mean absolute percentage error) over 685 hours from 30 September to 28 October 2026, and 94% of hours landed within 5% of the reading. Its bias was -0.1%: it ran close to balanced on average. The largest miss was 702 MW (9.4%) too low at 28 Oct 2026, 09:00 WET (UTC+00:00). Dates and times are local (Europe/Lisbon).
Key Facts
- The day-ahead demand forecast for Portugal was off by 2.0% on average (mean absolute percentage error) over 685 hours from 30 September to 28 October 2026, and 94% of hours landed within 5% of the reading. Its bias was -0.1%: it ran close to balanced on average. The largest miss was 702 MW (9.4%) too low at 28 Oct 2026, 09:00 WET (UTC+00:00).
- Across 47 European bidding zones ranked by average error over their own latest 30 day windows, Portugal came 7 (1 is the smallest error).
- On average the forecast differed from reported demand by 110 MW, against average demand of 5,843 MW.
- The forecast was above reported demand in 49% of compared hours.
Forecast Error at a Glance
685 hours from 30 September to 28 October 2026Average error is the mean absolute percentage gap between the forecast and reported demand. Bias is the signed mean (-11 MW per hour on average): the forecast ran close to balanced on average. The worst miss was 702 MW (9.4%) too low at 28 Oct 2026, 09:00 WET (UTC+00:00): forecast 6,801 MW, reported 7,503 MW.
Source: ENTSO-E Transparency Platform (transparency.entsoe.eu), CC BY 4.0. Aggregated and converted by World Power Monitor; ENTSO-E does not endorse this site. (ENTSO-E Terms of Use plus CC BY 4.0 for listed data items) 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, 12:00 WET (UTC+00:00)Show the data table (168 rows)
| Local hour | Reported demand | Day-ahead forecast |
|---|---|---|
| 21 Oct, 14:00 | 6,144 MW | 6,161 MW |
| 21 Oct, 15:00 | 6,216 MW | 6,203 MW |
| 21 Oct, 16:00 | 6,420 MW | 6,369 MW |
| 21 Oct, 17:00 | 6,575 MW | 6,532 MW |
| 21 Oct, 18:00 | 6,941 MW | 6,908 MW |
| 21 Oct, 19:00 | 7,631 MW | 7,623 MW |
| 21 Oct, 20:00 | 7,471 MW | 7,455 MW |
| 21 Oct, 21:00 | 6,989 MW | 6,941 MW |
| 21 Oct, 22:00 | 6,436 MW | 6,375 MW |
| 21 Oct, 23:00 | 5,836 MW | 5,857 MW |
| 22 Oct, 00:00 | 5,473 MW | 5,303 MW |
| 22 Oct, 01:00 | 5,170 MW | 5,032 MW |
| 22 Oct, 02:00 | 4,951 MW | 4,827 MW |
| 22 Oct, 03:00 | 4,841 MW | 4,706 MW |
| 22 Oct, 04:00 | 4,788 MW | 4,652 MW |
| 22 Oct, 05:00 | 4,935 MW | 4,770 MW |
| 22 Oct, 06:00 | 5,455 MW | 5,186 MW |
| 22 Oct, 07:00 | 6,212 MW | 5,935 MW |
| 22 Oct, 08:00 | 6,870 MW | 6,625 MW |
| 22 Oct, 09:00 | 6,970 MW | 6,758 MW |
| 22 Oct, 10:00 | 6,656 MW | 6,505 MW |
| 22 Oct, 11:00 | 6,470 MW | 6,357 MW |
| 22 Oct, 12:00 | 6,189 MW | 6,144 MW |
| 22 Oct, 13:00 | 6,082 MW | 6,040 MW |
| 22 Oct, 14:00 | 6,244 MW | 6,221 MW |
| 22 Oct, 15:00 | 6,396 MW | 6,351 MW |
| 22 Oct, 16:00 | 6,671 MW | 6,535 MW |
| 22 Oct, 17:00 | 6,778 MW | 6,693 MW |
| 22 Oct, 18:00 | 7,130 MW | 7,041 MW |
| 22 Oct, 19:00 | 7,828 MW | 7,734 MW |
| 22 Oct, 20:00 | 7,643 MW | 7,542 MW |
| 22 Oct, 21:00 | 7,172 MW | 7,067 MW |
| 22 Oct, 22:00 | 6,602 MW | 6,519 MW |
| 22 Oct, 23:00 | 6,042 MW | 5,909 MW |
| 23 Oct, 00:00 | 5,687 MW | 5,459 MW |
| 23 Oct, 01:00 | 5,372 MW | 5,173 MW |
| 23 Oct, 02:00 | 5,169 MW | 4,956 MW |
| 23 Oct, 03:00 | 5,053 MW | 4,815 MW |
| 23 Oct, 04:00 | 4,968 MW | 4,764 MW |
| 23 Oct, 05:00 | 5,037 MW | 4,875 MW |
| 23 Oct, 06:00 | 5,472 MW | 5,271 MW |
| 23 Oct, 07:00 | 6,233 MW | 6,001 MW |
| 23 Oct, 08:00 | 7,005 MW | 6,706 MW |
| 23 Oct, 09:00 | 7,074 MW | 6,879 MW |
| 23 Oct, 10:00 | 6,757 MW | 6,686 MW |
| 23 Oct, 11:00 | 6,612 MW | 6,533 MW |
| 23 Oct, 12:00 | 6,322 MW | 6,292 MW |
| 23 Oct, 13:00 | 6,108 MW | 6,130 MW |
| 23 Oct, 14:00 | 6,258 MW | 6,253 MW |
| 23 Oct, 15:00 | 6,289 MW | 6,277 MW |
| 23 Oct, 16:00 | 6,490 MW | 6,431 MW |
| 23 Oct, 17:00 | 6,618 MW | 6,592 MW |
| 23 Oct, 18:00 | 6,995 MW | 6,937 MW |
| 23 Oct, 19:00 | 7,602 MW | 7,583 MW |
| 23 Oct, 20:00 | 7,427 MW | 7,391 MW |
| 23 Oct, 21:00 | 6,994 MW | 6,889 MW |
| 23 Oct, 22:00 | 6,490 MW | 6,375 MW |
| 23 Oct, 23:00 | 5,906 MW | 5,808 MW |
| 24 Oct, 00:00 | 5,456 MW | 5,352 MW |
| 24 Oct, 01:00 | 5,097 MW | 5,053 MW |
| 24 Oct, 02:00 | 4,827 MW | 4,854 MW |
| 24 Oct, 03:00 | 4,699 MW | 4,710 MW |
| 24 Oct, 04:00 | 4,665 MW | 4,606 MW |
| 24 Oct, 05:00 | 4,718 MW | 4,616 MW |
| 24 Oct, 06:00 | 4,864 MW | 4,785 MW |
| 24 Oct, 07:00 | 5,144 MW | 5,023 MW |
| 24 Oct, 08:00 | 5,505 MW | 5,383 MW |
| 24 Oct, 09:00 | 5,700 MW | 5,576 MW |
| 24 Oct, 10:00 | 5,601 MW | 5,552 MW |
| 24 Oct, 11:00 | 5,522 MW | 5,467 MW |
| 24 Oct, 12:00 | 5,502 MW | 5,439 MW |
| 24 Oct, 13:00 | 5,267 MW | 5,234 MW |
| 24 Oct, 14:00 | 5,119 MW | 5,145 MW |
| 24 Oct, 15:00 | 5,114 MW | 5,150 MW |
| 24 Oct, 16:00 | 5,272 MW | 5,316 MW |
| 24 Oct, 17:00 | 5,605 MW | 5,622 MW |
| 24 Oct, 18:00 | 6,099 MW | 6,015 MW |
| 24 Oct, 19:00 | 6,766 MW | 6,758 MW |
| 24 Oct, 20:00 | 6,619 MW | 6,637 MW |
| 24 Oct, 21:00 | 6,196 MW | 6,203 MW |
| 24 Oct, 22:00 | 5,806 MW | 5,801 MW |
| 24 Oct, 23:00 | 5,462 MW | 5,387 MW |
| 25 Oct, 00:00 | 5,095 MW | 5,005 MW |
| 25 Oct, 01:00 | 4,813 MW | 4,722 MW |
| 25 Oct, 01:00 | 4,598 MW | 4,687 MW |
| 25 Oct, 02:00 | 4,482 MW | 4,494 MW |
| 25 Oct, 03:00 | 4,390 MW | 4,375 MW |
| 25 Oct, 04:00 | 4,361 MW | 4,336 MW |
| 25 Oct, 05:00 | 4,359 MW | 4,360 MW |
| 25 Oct, 06:00 | 4,465 MW | 4,444 MW |
| 25 Oct, 07:00 | 4,602 MW | 4,602 MW |
| 25 Oct, 08:00 | 4,974 MW | 4,879 MW |
| 25 Oct, 09:00 | 5,200 MW | 5,200 MW |
| 25 Oct, 10:00 | 5,340 MW | 5,386 MW |
| 25 Oct, 11:00 | 5,470 MW | 5,578 MW |
| 25 Oct, 12:00 | 5,485 MW | 5,656 MW |
| 25 Oct, 13:00 | 5,197 MW | 5,423 MW |
| 25 Oct, 14:00 | 5,066 MW | 5,247 MW |
| 25 Oct, 15:00 | 5,156 MW | 5,214 MW |
| 25 Oct, 16:00 | 5,394 MW | 5,350 MW |
| 25 Oct, 17:00 | 5,816 MW | 5,728 MW |
| 25 Oct, 18:00 | 6,475 MW | 6,425 MW |
| 25 Oct, 19:00 | 6,689 MW | 6,611 MW |
| 25 Oct, 20:00 | 6,438 MW | 6,512 MW |
| 25 Oct, 21:00 | 5,995 MW | 6,139 MW |
| 25 Oct, 22:00 | 5,606 MW | 5,721 MW |
| 25 Oct, 23:00 | 5,168 MW | 5,264 MW |
| 26 Oct, 00:00 | 4,891 MW | 4,938 MW |
| 26 Oct, 01:00 | 4,676 MW | 4,695 MW |
| 26 Oct, 02:00 | 4,519 MW | 4,532 MW |
| 26 Oct, 03:00 | 4,370 MW | 4,459 MW |
| 26 Oct, 04:00 | 4,363 MW | 4,479 MW |
| 26 Oct, 05:00 | 4,509 MW | 4,623 MW |
| 26 Oct, 06:00 | 5,028 MW | 5,285 MW |
| 26 Oct, 07:00 | 5,795 MW | 5,961 MW |
| 26 Oct, 08:00 | 6,518 MW | 6,525 MW |
| 26 Oct, 09:00 | 6,610 MW | 6,625 MW |
| 26 Oct, 10:00 | 6,425 MW | 6,457 MW |
| 26 Oct, 11:00 | 6,401 MW | 6,360 MW |
| 26 Oct, 12:00 | 6,280 MW | 6,197 MW |
| 26 Oct, 13:00 | 6,250 MW | 6,125 MW |
| 26 Oct, 14:00 | 6,498 MW | 6,366 MW |
| 26 Oct, 15:00 | 6,612 MW | 6,539 MW |
| 26 Oct, 16:00 | 6,748 MW | 6,729 MW |
| 26 Oct, 17:00 | 6,977 MW | 6,978 MW |
| 26 Oct, 18:00 | 7,472 MW | 7,499 MW |
| 26 Oct, 19:00 | 7,611 MW | 7,646 MW |
| 26 Oct, 20:00 | 7,364 MW | 7,449 MW |
| 26 Oct, 21:00 | 6,916 MW | 6,932 MW |
| 26 Oct, 22:00 | 6,320 MW | 6,351 MW |
| 26 Oct, 23:00 | 5,720 MW | 5,772 MW |
| 27 Oct, 00:00 | 5,290 MW | 5,365 MW |
| 27 Oct, 01:00 | 5,007 MW | 5,111 MW |
| 27 Oct, 02:00 | 4,818 MW | 4,946 MW |
| 27 Oct, 03:00 | 4,725 MW | 4,870 MW |
| 27 Oct, 04:00 | 4,753 MW | 4,870 MW |
| 27 Oct, 05:00 | 4,892 MW | 4,968 MW |
| 27 Oct, 06:00 | 5,370 MW | 5,503 MW |
| 27 Oct, 07:00 | 6,082 MW | 6,155 MW |
| 27 Oct, 08:00 | 6,762 MW | 6,791 MW |
| 27 Oct, 09:00 | 6,896 MW | 6,933 MW |
| 27 Oct, 10:00 | 6,810 MW | 6,827 MW |
| 27 Oct, 11:00 | 6,982 MW | 6,837 MW |
| 27 Oct, 12:00 | 6,823 MW | 6,710 MW |
| 27 Oct, 13:00 | 6,832 MW | 6,666 MW |
| 27 Oct, 14:00 | 7,060 MW | 6,850 MW |
| 27 Oct, 15:00 | 7,142 MW | 6,892 MW |
| 27 Oct, 16:00 | 7,164 MW | 6,991 MW |
| 27 Oct, 17:00 | 7,309 MW | 7,167 MW |
| 27 Oct, 18:00 | 7,752 MW | 7,635 MW |
| 27 Oct, 19:00 | 7,930 MW | 7,759 MW |
| 27 Oct, 20:00 | 7,643 MW | 7,540 MW |
| 27 Oct, 21:00 | 7,122 MW | 7,015 MW |
| 27 Oct, 22:00 | 6,507 MW | 6,435 MW |
| 27 Oct, 23:00 | 5,918 MW | 5,847 MW |
| 28 Oct, 00:00 | 5,495 MW | 5,307 MW |
| 28 Oct, 01:00 | 5,214 MW | 5,037 MW |
| 28 Oct, 02:00 | 5,065 MW | 4,864 MW |
| 28 Oct, 03:00 | 4,950 MW | 4,786 MW |
| 28 Oct, 04:00 | 4,866 MW | 4,763 MW |
| 28 Oct, 05:00 | 4,979 MW | 4,861 MW |
| 28 Oct, 06:00 | 5,476 MW | 5,408 MW |
| 28 Oct, 07:00 | 6,425 MW | 6,051 MW |
| 28 Oct, 08:00 | 7,311 MW | 6,695 MW |
| 28 Oct, 09:00 | 7,503 MW | 6,801 MW |
| 28 Oct, 10:00 | 7,139 MW | 6,596 MW |
| 28 Oct, 11:00 | 6,899 MW | 6,499 MW |
| 28 Oct, 12:00 | 6,703 MW | 6,294 MW |
Assumptions
- Only hours with both a forecast and a positive demand reading count (685 of 685 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.
- European figures are for the ENTSO-E bidding zone named on this page. US and European grids are ranked separately.
Related
Cite this page
World Power Monitor. (2026). Portugal Demand Forecast Accuracy: Error, Bias and Worst Miss. https://worldpowermonitor.com/forecast-accuracy/pt/
World Power Monitor. Portugal Demand Forecast Accuracy: Error, Bias and Worst Miss. Data as of 2026-10-28. Data from ENTSO-E Transparency Platform. https://worldpowermonitor.com/forecast-accuracy/pt/
@misc{wpm_forecast_accuracy_pt_2026,
title = {{Portugal Demand Forecast Accuracy: Error, Bias and Worst Miss}},
author = {{World Power Monitor}},
year = {2026},
note = {Data as of 2026-10-28. Data from ENTSO-E Transparency Platform.},
url = {https://worldpowermonitor.com/forecast-accuracy/pt/}
} Permalink: https://worldpowermonitor.com/forecast-accuracy/pt/
The Copy buttons add today's date as the access date.