Sign in

Blog · Forecast and pipeline · Supply chain

Intermittent demand forecasting: sparse and lumpy sales

Intermittent demand needs a calendar that preserves genuine zeros and a review that separates order timing from order size. Compare supplied forecasts with a worked example, spreadsheet formulas, and checks for slow-moving items.

The short answerIntermittent demand forecasting estimates demand for items with many zero-demand periods and occasional orders. Review the frequency of demand separately from positive order sizes, then compare forecasts saved before the period with actual demand. Keep genuine zeros, flag unavailable stock, and measure absolute error and bias without dividing each weekly error by zero.

Intermittent demand forecasting handles items that sell in occasional bursts, with genuine zero-demand periods between them. Start by separating how often demand occurs from how much arrives when it does, then test forecasts saved before the period against a complete demand calendar. A correct total can still hide a poor weekly plan.

Start with a complete item calendar

Export requested quantities by item, location, and requested delivery week. Add the forecast version, the date it was saved, and any availability flag. Keep the unit consistent: individual parts, cases, or another defined selling unit.

Create one row for every item-location-week in scope, including weeks without orders. A missing export row is not automatically a zero. Confirm that the source was complete and that the item was active before filling the calendar.

Separate requested demand from shipments. A zero shipment during a stockout cannot establish zero customer demand. Likewise, an overdue order shipped later should not become new demand in the later week if the review measures requested delivery dates.

The broader demand forecasting guide covers the choice of demand signal. For a slow-moving part, that choice matters before any statistical comparison begins.

Work one sparse item through the numbers

A US maintenance-parts distributor reviews one replacement part over the following completed weeks. Both supplied forecasts were saved before the review window: a flat weekly plan and an event-informed plan based on known customer maintenance schedules. The event-informed plan is an illustrative supplied alternative, not a forecast reconstructed from actual orders.

Put the columns below in A:F, with headers in row 1. Quantities and errors are units.

Week Actual demand Flat forecast Event-informed forecast Flat absolute error Event absolute error
1 0 3 0 3 0
2 0 3 0 3 0
3 6 3 8 3 2
4 0 3 0 3 0
5 0 3 0 3 0
6 0 3 0 3 0
7 18 3 12 15 6
8 0 3 0 3 0
Total 24 24 20 36 8

In Excel, enter these formulas in E2 and F2 and fill down through row 9:

=ABS(C2-B2)
=ABS(D2-B2)

Check the actual-demand total with =SUM(B2:B9). Microsoft documents SUM as adding values, references, and ranges. Covirage is not affiliated with Microsoft.

The flat plan sums to exactly the actual demand. It nevertheless allocates units to empty weeks and misses most of the large order. That is why a total-only review would approve a plan that gives purchasing little information about timing.

Separate frequency from positive order size

The calendar contains six zero weeks and two positive weeks. Zero-demand share is 6 / 8 = 75.0%. Average positive demand is (6 + 18) / 2 = 12 units, while average demand across all weeks is 24 / 8 = 3 units.

Use these formulas on the same actual-demand column:

=COUNTIF(B2:B9,0)/COUNT(B2:B9)
=IF(COUNTIF(B2:B9,">0")=0,NA(),AVERAGEIF(B2:B9,">0"))
=AVERAGE(B2:B9)

An exposure-based average demand interval is 8 / 2 = 4 weeks per positive-demand period:

=IF(COUNTIF(B2:B9,">0")=0,NA(),COUNT(B2:B9)/COUNTIF(B2:B9,">0"))

This uses the full observation window; it is not an estimate of when the next customer will order. The window boundaries and the small number of orders limit what you can infer.

Hyndman and Athanasopoulos describe Croston's method as separately smoothing nonzero quantities and the intervals between them. They also note that its forecasts are biased. Treat a supplied Croston forecast as a candidate to evaluate rather than an automatic replacement for an existing plan.

Measure error without deleting the zero weeks

Define signed error here as forecast minus actual, so positive bias means overforecasting. Weighted absolute percentage error, or WAPE, divides summed absolute error by summed actual demand.

WAPE = Sum of absolute forecast errors / Sum of actual demand

Bias = Sum of forecast minus actual / Sum of actual demand

For the flat plan, mean absolute error is 36 / 8 = 4.5 units per week and WAPE is 36 / 24 = 150.0%. Bias is (24 - 24) / 24 = 0.0%. Zero bias therefore does not establish good accuracy.

For the event-informed plan, mean absolute error is 8 / 8 = 1.0 unit per week, WAPE is 8 / 24 = 33.3%, and bias is (20 - 24) / 24 = -16.7%. Percentages are rounded to one decimal place.

=AVERAGE(E2:E9)
=IF(SUM(B2:B9)=0,NA(),SUM(E2:E9)/SUM(B2:B9))
=IF(SUM(B2:B9)=0,NA(),(SUM(C2:C9)-SUM(B2:B9))/SUM(B2:B9))

Substitute F for E and D for C to evaluate the event-informed plan. Forecasting: Principles and Practice explains why percentage errors are undefined when an individual actual is zero. Do not remove those weeks to make a weekly percentage work.

Turn the review into a purchasing decision

The event-informed plan performs better in this window, but it still underestimates the large order. Ask whether the maintenance schedule was reliable, whether customers ordered early, and whether the part must be available throughout supplier lead time. A low average weekly error does not answer those service questions.

Compare additional saved forecast windows at the replenishment horizon before changing the method. Keep the procedure consistent with the demand forecasting process, and inspect bias by SKU and site so fast-moving products do not conceal persistent errors in slow movers.

Where it goes wrong

  • Deleting genuine zeros. Positive-only history changes the question from weekly demand to order size conditional on an order.
  • Treating blank weeks as confirmed zeros. Missing files, inactive items, and incomplete periods need explicit flags.
  • Using shipment zeros during stockouts. Sales history then understates requested demand and can reinforce an inadequate plan.
  • Choosing a method on the same orders used to tune it. Save forecasts before the test period and preserve their issue dates.
  • Approving an item from aggregate bias alone. Positive and negative errors cancel even when orders arrive in very different weeks.

Compare your slow-moving items in Covirage

Bring a sample of your own item-week demand export, saved forecasts, and availability flags to Covirage. Covirage maps the columns; its tools compute and check the comparisons, and the external AI model explains the results with every figure traced to its rows. Create a free Covirage account and set up your business with your own file.

See Covirage for supply chain teams for the supporting business context.

Questions people ask

What is the difference between intermittent and lumpy demand?

Intermittent demand has gaps between positive demand periods. Lumpy demand also has substantial variation in the positive quantities. Review both occurrence frequency and order size before grouping items, because the same average demand can hide very different replenishment risks.

Can I use MAPE for intermittent demand?

Weekly MAPE is undefined when actual demand is zero. Keep those weeks in the review and use unit-based absolute errors alongside a clearly defined aggregate measure. If total actual demand is also zero, report that condition instead of a percentage.

Does Croston's method predict the next order date?

Croston's method separately smooths positive demand sizes and intervals, then expresses a demand rate. It does not identify an exact future order date. Compare its supplied forecasts with your existing approach over the same held-out periods and decision horizon.