Checking prediction interval coverage
Today let's work out whether a forecast's prediction interval actually delivers what its percentage claims.
Covewood Teas is a small online tea subscription seller. Here is how many new orders it picked up each week over the last 104 weeks, two full years.
Look at how tight those early week-to-week swings are, and how loose they get by the end. A forecasting model fit to a series like this will not just hand back one number for next week. It will also hand back a range, tagged with a confidence level such as 95%.
The question this whole lesson answers is this: does that range actually contain the real outcome 95% of the time, or is 95% just a label the model prints without anyone checking whether it holds up?
Defining nominal coverage
Let's fit a model to Covewood's history and see what it says about next week.
The model is ETS(A,A,N), the exponential smoothing model with additive error and additive trend and no seasonal part. Fit it to all 104 weeks, then forecast four weeks ahead.
Read the point column first. It climbs from 102.4 to 104.5, which just continues the climb you already saw in the series. The lo80/hi80 and lo95/hi95 columns are two separate claims wrapped around that same point forecast.
Take week 105. The model's 95% interval runs from 82.6 to 122.3. That 95 is called the interval's nominal level. Nominal here means "as stated" or "as claimed": it comes straight out of the model's own formula, built from how spread out the fitted model's past errors were, not from checking this particular interval against any real outcome yet.
So what does "95% nominal" actually mean? It states a long-run frequency: if you ran this exact forecast over and over, on data generated the same way, the real outcome should land inside the band 95 times out of 100. One forecast cannot test that claim on its own. You need to actually run it over and over, for real, and count.