All guides

By September 6, 20269 min read

How to Handle Intermittent Demand

Some SKUs sell twice a month in unpredictable quantities. Why averages break on intermittent demand, and what to plan with instead of a daily sales rate.

A brass wick trimmer sold on seven days out of the last eighty-four. Fifteen units in total. Divide one by the other and you get an average daily sales rate of 0.18 units: arithmetically correct, and useless for deciding anything. Almost every planning formula on this site takes that rate as its first input.

What intermittent demand looks like

Intermittent demand means a SKU sells rarely, with long gaps between sales and roughly consistent quantities when it does sell. Lumpy demand adds unpredictable quantities on top of the irregular timing. The four-pattern classification these sit in is covered in comparing forecasting methods, and grading a catalog on revenue and demand variability is how a SKU gets sorted into the erratic corner in the first place; this post takes one SKU out of that corner and works through what you do with it on Monday morning.

The trimmer's last twelve weeks, units per week, oldest first:

2, 0, 1, 3, 0, 1, 0, 2, 0, 4, 0, 2

Five of the twelve weeks are zero. At day level it is worse: 77 of the 84 days recorded nothing, and each of the seven that did was one order from one customer, carrying 2, 1, 3, 1, 2, 4 and 2 units. The average gap between sales is 84 ÷ 7 = 12 days, which is also the store's supplier lead time. A typical lead time on this product contains one sale, or none.

15

units sold in 84 days

7

days with any sale at all

2.1

units, average 12-day demand

6

units, worst 12-day window

Why averages break here

Two things go wrong, in opposite directions.

The first is the level. Eighty-four days hold seven twelve-day stretches, so 15 units is 15 ÷ 7 = 2.1 units of demand in an average lead time. Feed that into the reorder point formula against the 12-day lead time and the trigger lands near 2 units, plus whatever buffer you add. But one customer bought 4 units in a single order on day 70. A trigger set at 2 does not survive a customer who wants 4: you sell two, you lose two, and the reorder it finally fires is already too late for the sale that fired it.

On a SKU that sells seven times a quarter, the average is mostly a measurement of the days nothing happened.

The second is the shape. The safety-stock half of the formula multiplies a service-level factor by the standard deviation of demand, a construction that assumes demand is roughly normally distributed. The safety stock guide states that assumption plainly and names this exact case as one where it fails. A series that is 92% zeros with occasional spikes is not a bell curve; it is a pile at zero with a thin tail. The output is not broken arithmetic. It is correct arithmetic applied to a distribution it was never built for, and it reads as more precise than it is.

Change the time bucket first

Before reaching for a different method, change the bucket you count in. The same fifteen units look like three different products depending on how you slice the calendar.

  • Daily: 77 of 84 periods empty. Almost nothing to model.
  • Weekly: 5 of 12 periods empty. Series: 2, 0, 1, 3, 0, 1, 0, 2, 0, 4, 0, 2.
  • Monthly, in four-week months: no empty periods at all. Series: 6, 3, 6.

The pattern is partly an artifact of the bucket rather than a fixed property of the product: wider buckets contain fewer empty periods, so a SKU that reads as intermittent daily can read as steady monthly without a single sale changing. Be honest about what that buys, though. Five units a month converted back to a twelve-day window is 5 × 12 ÷ 30 = 2 units, the same answer the daily rate gave. Aggregation fixes what you can see and what cadence you review on. It does not change what the arithmetic hands back.

The same fifteen units counted daily and counted monthlyTwo panels showing the same slow-moving SKU across the same quarter, counted in two different time buckets. The left panel plots eighty-four days of sales as thin bars: seventy-seven of the days are empty, and the seven that are not carry two, one, three, one, two, four and two units in that order. The right panel counts the identical fifteen units in four-week months instead, producing three bars of six, three and six units with no empty period at all. Nothing about the product changed between the panels and no sale was added or removed; only the width of the bucket did. Whether this SKU looks intermittent or looks steady is therefore partly a property of the calendar you count it on, and a formula fed the left panel is mostly measuring the days on which nothing happened.The same fifteen units, counted two waysBrass wick trimmer: 84 days of sales, then the same quarter in months4day 1day 84Daily: 77 of the 84 days are zero636month 1month 2month 3Monthly: no zeros at allWeekly sits between the two: 5 of the 12 weeks are zero.
Neither panel is the truthful one. The left is what a daily reorder point actually sees; the right is the only one a person can read a level off.

Planning methods that work

Count the windows instead of averaging them

The mean twelve-day window held 2.1 units. Now ask what the worst one held. The answer is 6: the 4-unit order on day 70 and the 2-unit order on day 78, eight days apart, inside the same stretch. Only one other pair of sales in the quarter falls close enough to share a window, days 19 and 27, and that pair totals 4.

Six is nearly three times the mean, and it is the number worth writing down. Hold 6 and every lead-time window in the observed history is covered. The whole quarter rests on seven sales, so redo the count each time a new one lands. It is still a better basis than a mean-and-standard-deviation calculation whose assumption you already know is broken.

Croston's method, and what it does not solve

Croston's method was built for this pattern. Rather than smoothing a series that is mostly zeros, it keeps two smoothed series and updates both only in periods where something sold: one for the size of the sale, one for the gap between sales. The forecast is the ratio.

Forecast rate = smoothed demand size ÷ smoothed interval between sales

That beats averaging zeros, and it is where the research points for intermittent demand. It also carries a documented positive bias, meaning it tends to over-forecast, attributed to Syntetos and Boylan. The standard correction, the Syntetos-Boylan Approximation, deflates the forecast to compensate, but the literature notes it can overshoot into a negative bias sometimes larger than the one it was fixing. Neither version is neutral, and no traceable source puts a percentage on either.

Croston's also returns a demand rate, not a date, and on a SKU that sells seven times a quarter what hurts you is the size of one order, which any rate averages away. It is the right family of method, not a number you can act on without separately holding cover for a single transaction.

The policy that usually wins: min/max

For most small catalogs the practical answer is not a better forecast but a policy that does not need one: a minimum that triggers a reorder, a maximum you order up to, both left alone until something changes. Min/max inventory planning covers how the two map onto the reorder point and target stock level. For the trimmer: min 6, the worst observed twelve-day window, and max 20, about four months of cover at five units a month. Stock touches 6, you order 20 − 6 = 14 units, and at roughly 60 units of annual demand that happens about four times a year. A supplier's minimum order quantity or case pack often sets the max for you on a product this slow.

Sizing a buffer when the formula fails

The buffer question here is not "how much variability am I exposed to across the lead time". It is "if one more customer orders while the shipment is in transit, can I fill it?" Worst observed window of 6, plus one more typical order of 2, is 8. That is a judgment call wearing arithmetic, and it should be labelled as one.

Now the part that catches people out. Shorten the lead time from twelve days to four and recount the same eighty-four days: the worst four-day window still holds 4 units, because it is still that single order on day 70. Cutting the lead time by two thirds cut the required cover by one third. On this kind of SKU the buffer is set by the size of one transaction rather than by the number of days you wait, which is the reverse of how a reorder point behaves on a fast mover. A shorter lead time still earns its keep, but by getting you back in stock sooner, not by letting you hold less.

When to stop stocking it

Intermittent is not the same as dead. A SKU with long gaps and a real sale at the end of each gap is working. Identifying slow-moving inventory covers the detection thresholds and the stop-reordering decision, so this is only the intermittent-specific part.

Three questions decide it. Did it sell at all in the most recent period, or is every sale you are planning from older than your review window? Does it attach to something else, so the sale you would lose is bigger than the line item? And can you fill demand without holding stock at all? That last one gets skipped. A listing marked made to order, or shipping in a stated number of days, turns an intermittent stocked SKU into an unstocked one: you give up the instant sale and keep the cash and the shelf. For the deepest part of a long tail that is often correct, and it is a decision about the product rather than about the forecast.

Recounting worst-case windows by hand, per SKU, across a long tail, is the kind of task that gets done once and never repeated. StockCue derives velocity and a reorder point per variant from 24 months of your own order history, on every plan including Free, and Growth adds the breakdown showing which inputs produced each quantity. What it will not do, and nothing does, is turn seven sales into a confident forecast.

STOCKCUE

No tool, StockCue included, forecasts a product that sold seven times last quarter with any confidence. What it does is compute velocity, reorder points and days of cover for every variant nightly, on every plan including Free, so the long tail is measured rather than guessed at.

Install StockCue on Shopify →

Frequently Asked Questions

What is intermittent demand?

Intermittent demand describes a SKU that sells rarely, with long gaps between sales, in roughly consistent quantities when it does sell. The related pattern, lumpy demand, adds unpredictable order sizes on top of the irregular timing. Both break the forecasting methods built for steady sellers, because most of the periods in the history contain no sale at all.

Why doesn't the reorder point formula work on slow sellers?

The formula multiplies average daily sales by lead time, and on a slow seller that average is mostly an average of days with no sales. It returns a trigger level smaller than a single customer order, so the trigger fires after you are already short. Its safety-stock term has a second problem: it assumes demand is roughly normally distributed, and a series of mostly zeros with occasional spikes is not.

What is Croston's method?

Croston's method forecasts intermittent demand by keeping two separately smoothed series, one for the size of a sale and one for the gap between sales, updating both only in periods where something actually sold. The forecast is smoothed size divided by smoothed interval. It suits this pattern better than a moving average, but it carries a documented positive bias, meaning it tends to over-forecast, and it returns a long-run rate rather than telling you when the next order will arrive.

Should you keep safety stock on an intermittent SKU?

Usually yes, but not calculated the standard way. The service-level-times-standard-deviation formula assumes a demand distribution an intermittent SKU does not have. A more defensible buffer is the largest demand that any lead-time-length window in your own history actually contained, plus room for one more typical order.

Nafisa Hasan Tuli, Inventory and Operations Writer at Devmerx

Nafisa Hasan Tuli

Inventory and Operations Writer

Nafisa Hasan Tuli writes about Shopify inventory operations for Devmerx, the studio behind StockCue: Inventory Forecast.

Need help with your Shopify store?

Devmerx builds and optimises Shopify stores for DTC brands. Book a free 20-minute consultation.