Statistical Forecast Methods Reference: Which Model for Which Demand
Choosing a forecast method starts with the shape of the demand, not the software menu. This reference matches common statistical methods to the demand pattern they handle, what data they need and where they usually fail.
| Method | Demand pattern it suits | History needed | Key parameters | Pitfall |
|---|---|---|---|---|
Naive (last value) | Any, used as a baseline | 1 period | None | Copies noise and last month's spike |
Seasonal naive | Strong repeating seasonality | 1 full season | Season length | Repeats one-off events from last year |
Simple moving average | Stable level, no trend or season | n periods | Window length n | Lags behind trends; every period weighs the same |
Weighted moving average | Stable level where recent periods matter more | n periods | Window and weights | Weights are subjective unless tested |
Simple exponential smoothing | Stable level with noise | Around 6 or more periods | Alpha between 0 and 1 | Flat forecast, no trend or season |
Holt (double exponential) | Linear trend, no season | Around 10 periods | Alpha, beta | Trend can run away on long horizons, damping helps |
Damped trend | Trend expected to level off | Around 10 periods | Alpha, beta, phi | Phi near 1 behaves like undamped Holt |
Holt-Winters additive | Trend plus seasonal swing of constant size | 2 full seasons or more | Alpha, beta, gamma, season length | Poor when seasonal amplitude grows with level |
Holt-Winters multiplicative | Trend plus seasonal swing proportional to level | 2 full seasons or more | Alpha, beta, gamma, season length | Needs strictly positive history |
Classical decomposition | Visible trend and seasonal index | 2 full seasons or more | Season length, trend method | Seasonal index fixed, does not adapt |
Linear regression on time | Steady linear growth or decline | Around 12 periods | Slope and intercept | Extrapolates the line forever |
Regression with drivers | Demand driven by price, weather, orders or capacity | Driver history aligned to demand | Selected drivers | Driver must be known in advance for the horizon |
ARIMA / SARIMA | Autocorrelated series, optional seasonality | Around 3 seasons or 50 points | p, d, q and seasonal terms | Hard to explain to sales, needs stationarity checks |
Croston | Intermittent demand with many zero periods | Several non-zero demands | Smoothing constant | Biased upward; Syntetos-Boylan fixes this |
Syntetos-Boylan approximation (SBA) | Intermittent demand | Several non-zero demands | Smoothing constant | Still weak on lumpy demand with extreme sizes |
TSB (Teunter-Syntetos-Babai) | Intermittent demand that may become obsolete | Several non-zero demands | Two smoothing constants | Probability decays between demands, confusing to read |
Life cycle or analog profile | New product with no history | History of similar items | Chosen analog and scaling | Analog choice is judgment, document it |
Judgmental / consensus | Events, launches, contracts not in history | Sales and marketing knowledge | Process rules | Optimism bias unless tracked with forecast value add |
History lengths are rules of thumb, not strict limits. Always compare any method with a naive forecast on a holdout period before adopting it.
Model selection on your data
Want a method suggested per SKU from your ERP history? Ask for an optional expert review.
Optional. The tool and every export work without this. No spam.
How to use this reference
Plot the item first. Is there a level only, a trend, a repeating season, or lots of zeros? Search the table for that pattern and shortlist two or three methods. Run each on a holdout of the last few periods, compare error against a naive baseline, and keep the simplest method that clearly beats it. Export the table to Excel and add a column for the method you chose per family, so the decision is written down.
Matching pattern to method
Stable demand with noise suits simple smoothing or a moving average. A steady trend needs Holt or a damped trend. A repeating seasonal shape needs Holt-Winters or decomposition, and at least two full seasons of history. Intermittent demand, where most periods are zero, needs Croston or its corrections, because ordinary smoothing keeps forecasting a small number every period that never actually occurs.
- Level only: SES or moving average
- Trend: Holt or damped
- Season: Holt-Winters or decomposition
- Intermittent: Croston, SBA or TSB
- No history: analog or life cycle profile
Worked example
A spare part sells 0, 0, 4, 0, 0, 0, 6, 0, 3, 0, 0, 5 units over twelve months. Simple smoothing forecasts about 1.5 units every month, which is never right. Croston forecasts the average size of a demand, about 4.5 units, divided by the average gap between demands, about 3 months, giving roughly 1.5 per month of rate but with an explicit interval. Use the rate for stocking, not for monthly production orders.
Common mistakes
Using Holt-Winters with less than two seasons of data lets the model invent a season. Applying smoothing to intermittent parts produces a forecast that looks smooth but fits nothing. Forgetting to clean one-off events such as a lost customer or a strike lets the model learn them as the pattern. Always review outliers before fitting.
Frequently Asked Questions
What is the simplest forecast method that works?
A seasonal naive or simple moving average is often a surprisingly strong baseline. Any more complex model should beat it on a holdout period before you trust it. If it cannot, keep the simple method.
How much history do I need for Holt-Winters?
At least two full seasons so the model can estimate the seasonal shape, for example 24 months for monthly seasonality. With less, the seasonal component is poorly estimated and the forecast can be unstable.
When should I use Croston instead of exponential smoothing?
Use Croston or its variants when a large share of periods show zero demand. Ordinary smoothing treats zeros as small values and gives a flat number that is wrong every period. Croston models demand size and interval separately.
Should I let the software pick the best model?
Automatic selection is useful at scale, but check it against a naive baseline and review the largest items by hand. Selection on a very short holdout can pick a model that fit by luck.
If you want a model selected per SKU and checked against a naive baseline automatically, Netray can run that on your ERP history on your own servers.
Related Tools
Forecast Error Metrics Reference (MAPE, WMAPE, RMSE and more)
A searchable lookup of the common forecast accuracy and bias metrics, their formulas, how to read them and where each one misleads.
Supply Chain & InventoryDemand Pattern ADI and CV2 Classification Calculator
Enter a few counts from an item's demand history and get its ADI, CV2 and demand class so you can choose a suitable forecast method.
Developer ToolsPython Holt-Winters Forecast Script Generator
Generate a short Python script that fits Holt-Winters to monthly demand, tests it on a holdout against a naive baseline and writes the forecast to CSV.
Supply Chain & InventoryDemand Planning Data Readiness Checklist
Work through the data checks that decide whether a statistical forecast can be trusted, from history length to unit of measure and product hierarchy.
More Supply Chain & Inventory tools
See all- Oracle Fusion Inventory Turns and Carrying Cost Calculator
- Distribution ERP Fill Rate Calculator
- Distributor Rebate Tracking Worksheet
- Branch Transfer Planning Worksheet
- Distributor Slow-Moving Inventory Review Worksheet
- Distributor Vendor Performance Scorecard Worksheet
- Distributor GMROI Calculator
- Distributor Backorder Cost and Fill Rate Calculator
- EOQ with Vendor Minimum Order Calculator