Inventory forecasting works best when demand is classified before modelling, so stable, seasonal, intermittent and lumpy items each get an appropriate method. Safety stock should be derived from measured forecast error and lead time variability, not from a fixed multiple of average demand.
Classify demand before you model it
Applying one forecasting method to every item is the most common cause of disappointing results. Demand series differ structurally, and the classification determines which method can work at all.
Stable items with low variability are served well by simple exponential smoothing. Seasonal items need a seasonal decomposition or a model with seasonal terms. Intermittent items, which have many zero-demand periods, need methods designed for sparse data such as Croston's approach. Lumpy items, intermittent and highly variable, are the hardest and often benefit more from improving data than from changing models.
Classification is usually done on two dimensions: average demand interval and the squared coefficient of variation. That produces a manageable grid with a recommended method per cell.
| Class | Characteristics | Suitable approach |
|---|---|---|
| Smooth | Frequent demand, low variability | Exponential smoothing |
| Seasonal | Regular cycle with trend | Seasonal decomposition, gradient boosting with calendar features |
| Intermittent | Many zero periods, low volume | Croston or bootstrapping |
| Lumpy | Intermittent and variable | Aggregate then disaggregate, improve data capture |
| New item | No history | Analogous item mapping |
| Discontinued | Declining to zero | Manual obsolescence review |
Features, models and where machine learning helps
Machine learning adds most value when there are strong exogenous signals: promotions, price changes, weather, project pipelines or economic indicators. If those signals exist, gradient-boosted trees with calendar and promotion features often outperform classical time series methods.
Where history is short or signals are weak, classical methods are usually more robust. They require less data, degrade more predictably and are far easier to explain to planners, which matters because planners will override forecasts they do not trust.
Whatever the method, forecast at the level where the signal exists and aggregate upward. Forecasting at an individual stock-keeping unit and warehouse combination often produces noise; forecasting at product-family level and allocating downward frequently produces better results.
- Use exogenous signals where they exist, and classical methods where they do not.
- Forecast at the level with a real signal, then allocate downward.
- Keep an explainable baseline for planners to compare against.
- Retrain and re-evaluate on a fixed cadence, not continuously.
Measuring forecast error honestly
Percentage error fails on intermittent demand because dividing by a small or zero actual produces meaningless values. Use absolute error measures scaled to the series, and report error per demand class rather than as one aggregate number that hides the failing segment.
Track bias as well as magnitude. A forecast that is consistently ten percent low causes stock-outs even though its average error looks acceptable. Bias is usually a process or data problem rather than a model problem.
Report accuracy by class and by value contribution. A shortlist of high-value items with poor accuracy is more actionable than a single global percentage.
- Avoid percentage error on intermittent series.
- Report error per demand class, never as one global figure.
- Track systematic bias separately from magnitude of error.
- Weight reporting by item value contribution.
From forecast to inventory decision
A forecast only affects inventory when it is converted into a replenishment decision. Safety stock should be computed from forecast error and lead time variability using a service level target, so that items with erratic demand or unreliable supply automatically carry more buffer and predictable ones carry less.
Guard rails are essential in practice. Cap order quantities, respect supplier minimums and multiples, prevent orders that would exceed shelf life, and route forecast-driven proposals above a threshold to a planner for approval.
Measure the outcome, not the model: service level achieved, inventory turns and stock-out frequency. A model with better statistical accuracy that produces worse service levels is not an improvement.
- Size safety stock from forecast error and lead time variability.
- Apply guard rails: minimums, multiples, shelf life and value thresholds.
- Route high-value proposals to planner approval.
- Judge success on service level and turns, not on model metrics.
Frequently asked questions
Does machine learning beat classical forecasting for inventory?
It beats it when strong exogenous signals exist, such as promotions, pricing or project pipelines. With short or weak history, classical methods are usually more robust and easier for planners to trust.
How should safety stock be calculated?
From measured forecast error and lead time variability against a target service level, rather than as a fixed percentage of average demand. Erratic items and unreliable suppliers then carry proportionally more buffer.
Why do inventory forecasts fail on slow-moving items?
Intermittent series have many zero periods, which breaks percentage-based error measures and confuses models tuned for continuous demand. They need sparse-data methods and classification-aware accuracy reporting.
References
Engineer your next strategic platform
Estimate your project investment and delivery timeline instantly, or schedule an architectural discovery call with our engineering leadership.