Skip to main content

Prediction & Causal Analysis · Guide

Forecasting spare parts
and other slow-moving demand.

Spare parts and other slow-moving items have intermittent demand: most periods are zero, and the orders that do come vary in size. Averages and percentage-error metrics were built for items that sell every period, and they mislead on these series. Classify each item by how often it sells and how much its order sizes vary, use methods built for sparse demand such as Croston’s method, SBA or TSB, forecast demand over the lead time as a distribution, and score the result with measures that stay defined at zero.

A guide for planners and data teams who forecast spare parts, MRO items and long-tail products.

The short version

The problem
Mostly zeros, with irregular order sizes
The methods
Croston, SBA, TSB & two-stage models
The output
Demand over the lead time, as a distribution
  • A specialist practice of MLAIA Data Science
  • Led by Dr. Yochai Edlitz · Ph.D., Weizmann Institute

Why ordinary methods fail

Most periods are zero.
The zeros are the pattern.

A part ordered a few times a year has a mostly empty history. Methods designed for steady sellers treat that emptiness as noise, and three things go wrong.

01

Averages chase the last order

A moving average or simple exponential smoothing jumps after each order and then decays through the zero periods. The forecast is highest just after a demand and lowest just before the next one.

02

A point forecast isn’t enough

The best single number for a sparse item is a fraction of a unit per period. The stocking decision depends on how much could be needed over the lead time, which a point forecast doesn’t say.

03

Zeros aren’t all the same

A zero can mean nobody needed the part, that it was out of stock, or that another part number replaced it. Unless those cases are flagged, the model learns low demand from periods when there was nothing to sell.

Classify before you forecast

Smooth, erratic, intermittent or lumpy.
Two numbers decide.

ADI, the average demand interval, is the average number of periods between non-zero demands. CV² is the squared coefficient of variation of the non-zero demand sizes. The cut-offs most often used are an ADI of 1.32 and a CV² of 0.49.

Demand classes by ADI and CV²
ClassADICV²What it looks likeWhere to start
SmoothBelow 1.32Below 0.49Sells most periods, in similar quantitiesExponential smoothing, ARIMA or a global gradient-boosted model
ErraticBelow 1.320.49 or aboveSells most periods, but sizes swing widelyThe same methods, with more attention to the forecast range
Intermittent1.32 or aboveBelow 0.49Many zero periods, similar sizes when it sellsCroston’s method, SBA or TSB
Lumpy1.32 or above0.49 or aboveMany zero periods and very uneven sizesSBA or TSB for the rate, and a distribution for the stock level

The class depends on the time bucket: an item that is intermittent in weekly data can be smooth in monthly data. Match the bucket to the replenishment decision.

Methods compared

Croston, SBA and TSB.
And when machine learning helps.

Croston’s method splits the series in two: the size of each non-zero demand, and the interval between demands. Each is smoothed separately, and the forecast is their ratio, a demand rate per period. SBA and TSB address its two main weaknesses.

Methods for intermittent and slow-moving demand
MethodHow it worksWhere it fitsWatch for
Simple exponential smoothingSmooths the raw series, zeros included.Smooth demand. A baseline elsewhere.Spikes after each order and sags before the next.
Croston’s methodSmooths demand size and the interval between demands separately. Forecast is size divided by interval.Intermittent demand with a stable rate.Biased upward. Updates only when a demand occurs, so it misses a part that has stopped moving.
SBA (Syntetos–Boylan approximation)Croston’s forecast multiplied by a correction factor based on the smoothing constant.Intermittent and lumpy demand. A common default.Still slow to notice obsolescence.
TSB (Teunter–Syntetos–Babai)Smooths the probability of demand every period, and the size when demand occurs. Forecast is probability times size.Demand that is fading, or parts near end of life.Two smoothing constants to set.
Two-stage (hurdle) gradient boostingOne model predicts whether demand occurs, a second predicts its size. Expected demand is the product.Many items, with drivers beyond the sales history.Needs enough items and history. Leakage through features not known at forecast time.

When gradient boosting helps

A single sparse series holds little information. A global model trained across many parts can use what the series can’t show: how many machines use the part, their age, planned maintenance, and how similar parts behave. A two-stage model, or a Poisson or Tweedie objective, lets it handle the zeros.

When it doesn’t

With few items, short history and no drivers, a boosted model has nothing extra to learn from and tends to overfit. Croston-type methods are then the stronger choice, and easier to explain to planners.

Forecast a distribution

Stock is set from a range.
Not from an average.

The useful question is how many units could be needed during the replenishment lead time, and how likely each quantity is. The reorder point comes from that distribution and a target service level.

Demand over the lead time

Forecast total demand across the lead time, plus the review period if stock is reviewed periodically. Summing per-period point forecasts gives the mean but not the spread.

Skewed, whole-number demand

Sparse demand is a count with a long right tail. A normal curve around the mean puts weight on negative demand and understates the tail. A Poisson or negative binomial distribution, or a bootstrap of past demand, fits better.

Pick the service measure

Cycle service level is the chance of getting through a replenishment cycle without a stockout. Fill rate is the share of demand met from stock. They lead to different stock levels, so agree which one applies.

Evaluation

Metrics that survive zeros.
And measure the decision.

On intermittent series, several familiar metrics reward the wrong forecast.

Why MAPE fails

MAPE divides by actual demand, so it is undefined whenever demand is zero. Dropping the zero periods ignores every over-forecast in between.

The zero-forecast trap

Mean absolute error is minimised by the median, and the median of a mostly-zero series is zero. A forecast of zero for every period can win on MAE.

Scaled errors and bias

MASE and RMSSE divide the error by that of a naive forecast on the same item’s history, so they stay defined and comparable across items. Report bias next to them.

Pinball loss & inventory cost

If the reorder point is a high quantile of lead-time demand, score that quantile with pinball loss. Then replay the stocking policy on past demand and record the service level, stockouts and stock held.

Practical steps

From order history to reorder points.
In four steps.

Clean data and a sound stocking rule often count for as much as the choice of model.

Clean the history

Flag stockout periods, link superseded part numbers, and separate one-off project orders from regular usage.

Classify

Match the time bucket to the lead time, compute ADI and CV² per item, and group the items.

Backtest

Rolling-origin backtests of Croston, SBA, TSB and, where the data supports it, a boosted model, next to the method in use today and a naive forecast. Score by class.

Set stock & monitor

Build the lead-time demand distribution, set reorder points from the agreed service level, simulate the policy on past demand, and reclassify items on a schedule.

Book a 30-minute forecasting review

Common questions

Good questions. Straight answers.

Why does MAPE fail on intermittent demand?

MAPE divides each error by the actual demand, so it is undefined in every period where demand is zero, and on a slow-moving part that is most periods. Scaled errors such as MASE or RMSSE, bias and pinball loss stay defined when demand is zero.

What is the difference between Croston, SBA and TSB?

Croston’s method smooths the size of non-zero demands and the interval between them separately, and forecasts their ratio as a demand rate. SBA is Croston’s method with a correction factor that reduces its upward bias. TSB smooths the probability of demand in every period instead of the interval, so its forecast falls when a part stops moving.

Can machine learning forecast slow-moving parts?

It can help when there are many parts and useful information beyond each part’s own history, such as the installed base, equipment age, maintenance plans or part attributes. For a single sparse part with no such drivers, Croston-type methods are hard to beat.

Can a forecast tell us when the next order for a part will arrive?

No. For intermittent demand the timing of a single order is mostly random. What can be estimated is the demand rate and the distribution of demand over the replenishment lead time, which is what a reorder point and safety stock are set from.

Prediction & Causal Analysis · Spare-Parts Demand Forecasting

Book a 30-minute
forecasting review.

Bring one forecast or decision you want to improve. In 30 minutes we’ll cover:

  • What your data can realistically support
  • Which methods are worth backtesting on your slow movers
  • How we’d test them against your current method

Please don’t include confidential datasets, credentials or patient information.

yochai@mlaia.com
WhatsApp: +972 52 484 6282

Your inquiry is handled under our Privacy Policy.