Evaluation
Forecasting Evaluation Across Time, Horizons, and Hierarchies
Design time-aware backtests for point, interval, and probabilistic forecasts across horizons, seasonal baselines, and hierarchical series.
By the end you can
- Build rolling-origin backtests that preserve forecast timing
- Evaluate performance separately across horizons and regimes
- Choose seasonal and scale-free baselines for forecasting
- Assess coherence across hierarchical or grouped time series
One test window can reward one lucky season
A demand model evaluated only during a calm month may look excellent. Then come the holidays, an outage, or a policy change, and it fails. That is why time-series evaluation has to sample several forecast origins, and preserve what information existed at each one.
Shuffling time destroys the deployment problem outright: it lets future conditions influence the past. The narrower failure is quieter and much more common. A single origin, honestly chosen, can still be decided by one outlier or one level shift that happened to sit just after the cut. The rolling-origin vignette for the R package greybox gives exactly that reason for using several origins rather than one. Multiple origins are what robustify the evaluation.
Forecast evaluation is a sequence of simulated deployments.
Steps
Rolling-origin evaluation, after Tashman (2000)
Each origin recreates a decision at a historical point. The technique has a name, a definition and a date. The greybox vignette states it plainly: “Rolling origin is an evaluation technique according to which the forecasting origin is updated successively and the forecasts are produced from each origin (Tashman 2000).” The reference is Tashman's 2000 review of out-of-sample tests of forecasting accuracy.
It is defined against something. The two main out-of-sample setups are fixed origin and rolling origin evaluation. Hewamalage and colleagues cite Tashman for both, in a 2022 survey of forecast evaluation. Rolling origin travels under two other names as well: time series cross-validation, and prequential evaluation.
The same survey adds the failure mode the five steps below do not show. Each origin's test period becomes training data for the next origin, which makes the procedure “naturally susceptible to data leakage dangers”. Advancing the origin is not by itself a guarantee of honesty. It is a guarantee only if the refitting at each origin is done with the same discipline as the first.
1. Choose an origin
Freeze all information at a historical forecast time.
2. Fit or update
Train using only data available up to that origin.
3. Predict horizons
Generate one-step and longer-horizon forecasts as deployment would.
4. Wait for outcomes
Score only after the corresponding future observations occur.
5. Advance the origin
Repeat across seasons, regimes, and operational changes.
Comparison
19.2 nautical miles at 12 hours, 115.3 at 120
Aggregating all lead times can hide where a model loses value. The National Hurricane Center does not aggregate them. Its published scorecard is what the argument looks like with numbers in it.
For the Atlantic basin, the center's 2024 verification report, by Cangialosi and Martinez, puts it in one line: “Mean track errors ranged from 19 n mi at 12 h to 115 n mi at 120 h.” The report's table carries the decimals — 19.2 n mi at 12 h against 115.3 n mi at 120 h. Roughly a sixfold growth in error, across one season, from one system.
The evidence thins as the error grows. The number of verifiable cases falls from 311 at 12 h to 79 at 120 h. So the long-horizon figures are worse and less firmly established at the same time. That is the trade the comparison below records as “many origins available” at short range and “fewer independent outcomes” at long range.
Skill does not decay in a straight line either. Measured against CLIPER5, the climatology-and-persistence baseline, official track skill peaks at 77.2% at 48 and 60 h. It falls to 70.3% at 120 h. The forecast beats its baseline by the widest margin in the middle of its range, not at the start. One pooled error number would have shown none of this.
Short horizon
Often benefits from recent state and autocorrelation.
- Useful for immediate operations
- Many origins available
- May have low uncertainty
- Can favor persistence baselines
Medium horizon
Balances current signals with seasonal structure.
- Relevant for staffing and inventory
- Error growth becomes visible
- Exogenous forecasts matter
- Regime shifts can dominate
Long horizon
Depends heavily on trend, scenario, and structural assumptions.
- Wider uncertainty expected
- Fewer independent outcomes
- Point metrics can mislead
- Decision value may come from ranges
Example
Forecasts need temporal baselines, and someone has to actually run them
Useful baselines depend on the cadence of the series. They are also not a formality that a serious model clears on the way past. The US COVID-19 Forecast Hub is the case where a persistence baseline was operated in public, week after week, rather than assumed.
The baseline had a name and a rule. The COVIDhub-baseline's median prediction is simply the most recent week's reported deaths. That is the first row below, run as a live submission. Cramer and colleagues, reporting the evaluation in PNAS in 2022, scored 27–28 models against it, forecasting weekly incident deaths from April 2020 to October 2021. Two-thirds of the models beat it. The ensemble reached a relative weighted interval score of 0.61 — 39% less probabilistic error than the baseline. Observed prediction-interval coverage was typically below nominal. The intervals were narrower than they claimed to be.
The margin depended on the horizon. The same paper says so directly: “Forecast accuracy degraded as models made predictions further into the future, with probabilistic error at a 20-wk horizon three to five times larger than when predicting at a 1-wk horizon.”
A separate ECDC-supported consortium found the same shape on other data. Its eLife study covered 32 countries and 48 models over 52 weeks. The ensemble's median scaled relative WIS for cases worsened from 0.62 at 1 week ahead to 0.9 at 4 weeks ahead. For deaths it moved only from 0.69 to 0.76.
- Persistence: predict the most recent observation for the next step. The COVIDhub-baseline is exactly this — its median prediction is the number of reported deaths in the most recent week.
- Seasonal naive: reuse the value from the same hour, day, or week in the previous cycle.
- Drift: extend the average historical trend from the first to the latest observation.
- Rolling mean: use a recent local average when noise dominates short movements.
- Incumbent plan: compare with the schedule or forecast operators already use — submitted on the same cadence, and scored by the same rule as every candidate model.
Key idea
Scale-free metrics are not assumption-free
MASE scales errors by a naive in-sample forecast and can support comparison across series. Its meaning still depends on the chosen seasonal period and on the stability of the scaling denominator.
Percentage metrics can fail near zero. Aggregate volume-weighted metrics can hide poor performance on small but important series.
The scaling was proposed in 2006 by Hyndman and Koehler. They found the measures used in the M-competition and the M3-competition “degenerate in commonly occurring situations”, and proposed instead that “the mean absolute scaled error become the standard measure for comparing forecast accuracy across multiple time series”. The construction is specific. Each forecast error is divided by the in-sample mean absolute error of a one-step naive forecast.
That denominator has a consequence the name hides. Hewamalage and colleagues set it out: “Using a one-step ahead in-sample naïve forecast as benchmark will often result in huge errors (>> 1) for the forecasts far ahead in the horizon, simply because the benchmark tackles an easier forecasting problem.” A MASE of 2 on a 28-day-ahead task and a MASE of 2 on a one-step task are not the same claim. MASE values from datasets with different horizon lengths are not comparable at all.
The choice is live, not theoretical. The M5 competition rebuilt the denominator rather than inherit it. Its official measure was RMSSE, which the competition's own report calls “a variant of the MASE originally proposed by Hyndman & Koehler (2006)”. That denominator is the in-sample one-step-ahead mean squared error of the naive method, computed only over the periods when a product was actually being sold. Entries were then ranked on WRMSSE — the per-series RMSSE averaged across all 42,840 series, weighted by dollar sales. The weighting question came straight back in through the aggregation step.
Normalization moves the scale choice into the denominator; it does not remove it.
Visual
M5: 42,840 series, 12 levels, and coherence by construction
Forecasts may exist at several aggregation levels. The M5 competition made that structure the object of the contest rather than a caveat about it.
Entrants were asked for 28-day-ahead forecasts of 42,840 Walmart series. Those series sat in 12 cross-sectional aggregation levels, built from 3,049 products sold in 10 stores across California, Texas and Wisconsin. The competition report defines the requirement: “forecasts at the lower levels have to sum up to the ones at the higher levels so that decisions made using the forecasts across different levels are aligned”.
The interesting part is how the competition obtained that property. It did not ask for coherence and check it afterwards. Prize eligibility required submitting only the 30,490 product-store series at level 12, and every higher level was obtained by summation. Coherence was therefore true of every eligible submission by construction. The modelling question became which level to forecast, rather than how to reconcile levels that disagree.
The figures survive independent handling. An unaffiliated 2024 paper on local versus global models for hierarchical forecasting reproduces the same dataset description: 3,049 products over five years, 42,840 hierarchically organised series over 12 levels.
Total demand
The organization-wide quantity used for high-level planning.
Regional demand
Subtotals that should sum to the total under a coherent forecast.
Store demand
Local series driving staffing and replenishment.
Product demand
Fine-grained series with sparse or intermittent observations.
Analogy
A sequence of weather forecasts issued each morning
One storm tells you almost nothing about a meteorologist. The evidence is the whole record of forecasts issued on many mornings for one, three, and seven days ahead. Pool those lead times back together and most of that evidence is thrown away. This is not a figure of speech about meteorology. The National Hurricane Center verifies its Atlantic track forecasts at eight separate intervals — 12, 24, 36, 48, 60, 72, 96 and 120 h. Each one gets its own error, its own baseline error, its own skill and its own case count.
Tomorrow's weather does not care what the forecast said. A demand forecast moves the price, the order, and the roster, so the series it is later scored against is partly its own doing. Issue time and lead time belong in the evaluation table for the first reason. The action the forecast triggered belongs there for the second.
A forecast must be scored from the information available when it was issued.
Build a forecasting scorecard, and price the actions it triggers
Report point and probabilistic metrics by horizon, origin, series, season, event regime, and volume tier. Include calibration and width for intervals, plus the business cost of shortages, overstaffing, or missed capacity.
The M4 Competition ran this at scale in 2020, across 100,000 time series and 61 forecasting methods. One of its three stated aims was “including prediction intervals in the evaluation process as well as point forecasts”. Point accuracy had stopped counting as the whole result. A scorecard reporting one mean error reports less than the competition it inherits from.
If forecasts influence prices, inventory, or user behavior, later outcomes are partly policy-generated. The cost of being wrong may never appear as a metric at all. Zillow Group is the documented case. On 2 November 2021 the company announced it would wind down Zillow Offers. Its third-quarter results carried an inventory write-down of approximately $304 million on homes bought above its own estimates of their future selling prices. The wind-down cut roughly 25% of a 6,400-person workforce. Co-founder and CEO Rich Barton named the forecast itself as the reason, in the results press release filed with the SEC that day: “the unpredictability in forecasting home prices far exceeds what we anticipated and continuing to scale Zillow Offers would result in too much earnings and balance-sheet volatility”.
Read that sentence for what is missing from it. There is no error metric in it. The forecast set the offer price. The offer price bought the house. The purchases moved the company's own inventory position, and the bill arrived as a write-down and a headcount reduction. Monitoring has to distinguish model error from intervention effects, because the second is where the money is.
Forecast quality is conditional on horizon, regime, and the actions the forecast triggers.
Key takeaways
- Forecast backtests should preserve issue time and use only information available at each origin. Rolling origin, defined after Tashman (2000), is “naturally susceptible to data leakage dangers” when each test period silently becomes the next origin's training data.
- Quality should be reported separately across lead times: the National Hurricane Center's 2024 Atlantic track error runs 19.2 n mi at 12 h and 115.3 n mi at 120 h, on 311 verifiable cases and 79 respectively.
- Persistence, seasonal naive, and incumbent plans are essential forecasting baselines, and someone has to run them. Two-thirds of the models in the COVID-19 Forecast Hub evaluation beat the COVIDhub-baseline, which predicts the most recent week's reported deaths.
- Scale-free metrics depend on their normalization choices: MASE divides by the in-sample error of a one-step naive forecast, which flatters nothing and inflates everything scored far ahead in the horizon.
- Hierarchical forecasts require consistency between aggregate and component levels; M5 enforced it by accepting only the 30,490 level-12 series and summing upward to all 42,840.
- Forecast-induced actions can change future outcomes and complicate post-deployment evaluation. Zillow's forecast error surfaced as a ~$304 million write-down and a 25% workforce cut, not as a metric.