ARIMA Forecasting Checklist: Steps, Diagnostics, and Common Mistakes
ARIMA models can forecast autocorrelated series, but a low in-sample error is not enough. A defensible forecast must respect time order and demonstrate that the remaining residuals behave like unpredictable noise.
Start in the DataStatPro time-series analysis workspace when you are ready to connect the checklist to an applied workflow.
1. Define the forecast task
Write down the outcome, time interval, forecast horizon, decision deadline, and accuracy measure before fitting a model. Forecasting next week's demand is a different task from forecasting the next 12 monthly values.
Also identify known interventions, policy changes, stockouts, reporting delays, and calendar effects. A model cannot infer the meaning of a structural break from the values alone.
2. Audit and plot the series
Check timestamps, duplicates, missing intervals, unit changes, extreme values, and the actual sampling frequency. Plot the full series and a recent window. Summaries that ignore ordering can hide trend, seasonality, level shifts, and changing variance.
Do not replace unusual observations automatically. Determine whether each value is a data error, a genuine event, or a signal of a regime change.
3. Split data in time order
Reserve the most recent observations for validation or use rolling-origin evaluation. Random train-test splitting leaks future patterns into training and does not represent real forecasting.
The validation horizon should resemble the intended operational horizon. If the goal is a six-month forecast, one-step accuracy alone is incomplete evidence.
4. Address variance and stationarity
ARIMA models work with a stationary representation of the series. Use subject knowledge, plots, and diagnostics to decide whether a transformation or differencing is needed.
- A log or Box-Cox transformation may help when variation increases with the level.
- Ordinary differencing may remove a stochastic trend.
- Seasonal differencing may address recurring seasonal patterns.
Over-differencing can create unnecessary noise and unstable coefficients. Each transformation should have a stated reason and an interpretable reverse transformation.
5. Select candidate orders
Use autocorrelation patterns, information criteria, and domain constraints to build a small candidate set. Automated selection can be a useful starting point, but it is not a substitute for checking whether the chosen model is stable, plausible, and competitive out of sample.
For seasonal data, compare seasonal ARIMA specifications and suitable benchmark models. Always include a simple baseline, such as naive, seasonal naive, or drift, because complexity must earn its place.
6. Diagnose residuals
After fitting, examine residual plots, the residual autocorrelation function, and a portmanteau test such as Ljung-Box at justified lags. Also look for changing variance, unusual observations, and non-normal tails when interval estimation depends on distributional assumptions.
A non-significant diagnostic test does not prove the model is correct. It means the chosen diagnostic did not detect remaining dependence at the assessed lags.
7. Validate forecasts
Compare candidate models on held-out or rolling forecasts using measures appropriate to the decision. MAE is easy to interpret in outcome units. RMSE penalizes large errors more strongly. Percentage errors can be unstable when actual values are zero or near zero.
Inspect errors across horizons and time periods, not only a single average. A model may perform well at one step and poorly at longer horizons.
8. Report uncertainty and assumptions
Publish point forecasts with prediction intervals, the training period, transformations, ARIMA order, seasonal period, validation design, accuracy measures, benchmarks, and known limitations. Prediction intervals should generally widen as the horizon grows.
Use the time-series analysis guide to connect model selection with interpretation and reporting.
Common ARIMA mistakes
- Randomly shuffling time-series observations before validation.
- Selecting a model only by in-sample fit or information criterion.
- Differencing until every pattern disappears.
- Ignoring seasonality, interventions, and structural breaks.
- Reporting forecasts without prediction intervals.
- Comparing models on different validation windows.
- Treating an automated order as final without residual checks.
Frequently asked questions
What do p, d, and q mean in ARIMA?
The value p is the autoregressive order, d is the number of ordinary differences, and q is the moving-average order. Seasonal ARIMA adds corresponding seasonal terms and a seasonal period.
How do I know whether an ARIMA model is good?
A useful model has plausible coefficients, adequately uncorrelated residuals, competitive out-of-sample accuracy against simple benchmarks, and uncertainty intervals that fit the decision context.
Should I choose ARIMA by AIC or forecast accuracy?
Information criteria help compare fitted candidates, while time-ordered forecast accuracy evaluates performance on unseen observations. Use both with residual diagnostics and subject-matter judgment.
Can ARIMA handle seasonality?
Yes. Seasonal ARIMA includes seasonal autoregressive, differencing, and moving-average terms. The seasonal period must match the data frequency and real recurring pattern.