Reorder point for irregular demand: choosing a window that does not lie to you
If a SKU sells thirty units in two days and then nothing for nine, an average over the wrong stretch of days is wrong in both directions, and so is the reorder point built on it. This page is about choosing a sales velocity window for irregular demand, and what Restoc is built to calculate once you have chosen one.
The day you are trying to get through
You do not sell evenly. One colourway moves forty units the day it drops, then sits for a week. A creator mentions a product and a month of demand lands in two days. A wholesale order clears a shelf that had ninety days of cover on Friday. Sizes and colours deplete at completely different speeds, so the parent product tells you nothing useful.
The job is small and it repeats. For each SKU, you are making one decision: order now, or wait. Everything else is support for that decision. You are not trying to forecast next quarter. You are trying to stop the moment where a burst arrives against stock you ordered two weeks too late.
The awkward part is that the usual method assumes the thing your catalogue does not do. Average daily sales multiplied by lead time is a clean formula for a SKU that sells three a day, every day. On a SKU that sells in bursts, the average is almost entirely a function of where you drew the line.
Why an average misleads on a bursty SKU
There are only two ways to get this wrong, and bursty SKUs give you both inside the same month.
The window contains the burst. Sixty units sold in the last seven days, fifty-six of them on one Tuesday. The average reads 8.6 a day. With a fourteen day lead time, the reorder point lands near 120 units. You order against a rate the SKU will not hold, and cash sits on a shelf until the next spike, if it comes.
The window sits just after the burst. The same SKU, measured a fortnight later across its quiet stretch, averages 0.4 a day. The reorder point falls to around 6 units. The next drop clears the shelf before the supplier has even confirmed the order.
Nothing in that is a flaw in the arithmetic. It is the window doing exactly what you asked. So on an irregular SKU, the window stops being a setting you pick once and becomes part of the decision itself: how much of the past should count as a prediction of the next lead time.
What each window does to an item that sells in bursts
| Window | What it does to a bursty SKU | Where it misleads | When it is the right pick |
|---|---|---|---|
| 7 days | Reacts fast. A single burst inside the window can multiply the daily figure several times over. | The reorder point spikes right after a drop and collapses a week later, so order sizes whipsaw. | Short lead times, and SKUs where demand has genuinely stepped up rather than spiked. |
| 14 days | Dilutes one burst without erasing it. The point moves, but less violently. | Still swings if your bursts land roughly fortnightly, which is common with drop schedules and payday peaks. | A sensible first setting on most SKUs while you learn how the item actually behaves. |
| 30 days | Smooths hard. One burst barely moves the average at all. | Warns late on a real step-change, and on a quiet month the point drops below what the next burst needs. | Steady sellers, long lead times, and SKUs whose bursts are frequent enough to be inside every window. |
The workflow Restoc is built to support
- Connect the store once
Restoc installs through Shopify OAuth and pulls inventory levels and sales history through webhooks plus a scheduled sync job. It is a web app: there is no mobile app and no browser extension.
- Enter a lead time per SKU
Lead time is merchant input, per SKU, because it is the number only you can supply. A supplier who takes nine days on one item and six weeks on another gets two different numbers, not one store-wide guess.
- Pick a store-wide velocity window
Choose 7, 14 or 30 days. The calculation engine takes average daily sales across that window and multiplies by the SKU's lead time. Every plan includes the store-wide window.
- Override the window on the SKUs that burst
Pro, at $99 per month, adds custom reorder rules: a per-SKU sales velocity window override, with up to 2,000 tracked SKUs. That is the setting for a catalogue where a handful of hero items spike and the rest tick along.
- Read days of inventory remaining, not just units
The dashboard shows current stock, days of inventory remaining and reorder status per active SKU. On a bursty item, the days figure is the one that shows you how much the window is doing.
- Take the alert when a SKU crosses its point
Alerting fires when a SKU crosses its reorder point and is delivered by a background job built to be idempotent, so one crossing is one alert. Email is on every plan. Slack, through an incoming webhook, is on Growth and above.
- Order from the weekly report
A weekly reorder report lists the SKUs below their reorder point with a suggested order quantity, viewable in the app and exportable as CSV. That is the list you work through when you sit down to place orders.
What this gives a merchant with uneven demand
One window per SKU, not one per store
A thirty day window keeps your steady lines calm. A seven day window on the item that just got picked up by a newsletter keeps that item honest. Pro carries the per-SKU override, so the two settings can live in the same store.
A number you can check by hand
Average daily sales over the window, multiplied by the lead time you entered. No hidden coefficient. If a reorder point looks wrong, you can work out which of the two inputs caused it in under a minute.
The quiet weeks are watched too
The failure mode on a bursty SKU is usually inattention during a slow stretch. A scheduled sync and a background alert job are there so the crossing is noticed when you are not looking at the dashboard.
Odd SKUs return a number, not a blank
The reorder point is a pure function with unit tests covering zero-sales SKUs, high-variance history and SKUs with fewer days of history than the selected window, asserting a defined, non-negative result.
A paper trail for the order you place
The weekly report exports to CSV with suggested order quantities, so the reasoning behind a large reorder on a spiky item is written down rather than reconstructed later from memory.
Price tied to catalogue size, not to spike size
Starter is $29 per month for up to 200 tracked SKUs, Growth $59 for up to 1,000, Pro $99 for up to 2,000. Each plan carries a 60-day free trial, and billing runs on your Shopify invoice rather than a separate card payment.
What Restoc does not do for an irregular SKU
We would rather you know this before you sign up than after.
- It does not compute safety stock for you. There is no statistical buffer term and no service-level setting. The reorder point is velocity times lead time. If you want a cushion on a spiky item, it has to come from the inputs you control.
- It does not forecast a spike. No seasonality model, no promotion calendar, no demand curve. It measures what already sold and tells you when stock crosses the line that history sets.
- The window is 7, 14 or 30 days. Not 10, not 45. Three choices, store-wide on every plan, per SKU on Pro.
- One location per plan. Every tier is sized for a single location today.
The honest frame is this: Restoc does the repetitive arithmetic and the watching. The judgement about how unusual a burst was, and whether it repeats, stays with you. For most merchants running fifty to two thousand SKUs, that split is the right one, because you are the only person who knows that the spike was a creator post and not a new baseline.
Where the per-SKU override sits
Starter, $29 per month
Up to 200 tracked SKUs, one location. Reorder point per SKU from your velocity and lead time, a store-wide window of 7, 14 or 30 days, email alerts, the weekly reorder report with CSV export, and the days-of-inventory dashboard. 60-day free trial.
Growth, $59 per month
Up to 1,000 tracked SKUs, enforced at sync time. Everything in Starter plus Slack alerts through an incoming webhook alongside email. 60-day free trial.
Pro, $99 per month
Up to 2,000 tracked SKUs. Everything in Growth plus custom reorder rules: a per-SKU sales velocity window override, which is the setting this page is about. 60-day free trial. Paid yearly, Pro is $990, ten months' price for twelve.
Questions
What reorder point formula works for irregular demand?
The same one, applied with more care about the window. Restoc takes average daily sales across a 7, 14 or 30 day window and multiplies it by the lead time you enter for that SKU. On an item that sells in bursts, the window is the variable that matters most, because it decides whether a spike counts as a prediction or as noise.
Which window should I pick for a SKU that sells in bursts?
Start at 14 days on most SKUs. Move to 30 where the lead time is long and the bursts are frequent enough to fall inside every window, and to 7 only where you believe demand has genuinely stepped up rather than spiked once. Change it, watch the days-of-inventory figure for a cycle, and change it again if the number reads wrong.
Can I set a different velocity window for one SKU?
Yes, on Pro at $99 per month, which adds custom reorder rules in the form of a per-SKU sales velocity window override and up to 2,000 tracked SKUs. Starter and Growth carry the store-wide window of 7, 14 or 30 days.
Does Restoc add safety stock for variable demand?
No. There is no safety stock term and no service-level setting in the calculation. The reorder point is velocity multiplied by lead time, and nothing else is layered on top. If you want a buffer on a volatile SKU, it has to come from the inputs you control.
What happens to a SKU that sold nothing during the window?
The calculation is a pure function with tests covering zero-sales SKUs, high-variance history, SKUs with fewer days of history than the selected window, and SKUs already at zero stock, asserting that it returns a defined, non-negative reorder point rather than failing or going blank.
Do alerts arrive by email or Slack?
Email alerts are on every plan and go to your account email until you change the address in alert settings. Slack alerts, through an incoming webhook you configure, are part of Growth and above. Alerts are delivered by a background job built to be idempotent, so one threshold crossing produces one alert.
Can I install it today?
Not yet. Restoc is on a waitlist while it is built. When it opens, each plan carries a 60-day free trial, and the subscription is billed by Shopify on your Shopify invoice rather than as a separate card payment.