Guides · Reorder points

How to set a reorder point in Shopify (and where each number comes from)

The reorder point formula in one line, plus exactly which Shopify report gives you each input. Includes safety stock, why lead time is the number people get wrong, and what to do when demand is seasonal.

A reorder point is the stock level at which you place the next purchase order. Below it, you are betting that nothing goes wrong at the supplier. Shopify does not compute one for you, but it holds every number you need, and the arithmetic is a single line.

The formula

reorder point = (average daily sales × lead time in days) + safety stock

That is it. The first term is what you will sell while you wait for the delivery. The second is the cushion for the week the supplier is late or the week a TikTok happens.

An example, because the formula reads as more abstract than it is. A variant sells 6 units a day. Your supplier takes 21 days from order to receipt. You keep one week of cover as a cushion, so 42 units.

(6 × 21) + 42 = 168

At 168 units on hand, you order. Not at 20, not "when it looks low".

Where each number lives in Shopify

Average daily sales

Analytics → Reports → Inventory sold daily by product. It gives the average units sold per day per variant over the period you choose.

Two things about the period. Use at least the last 60 days, because a 7-day window turns one good weekend into a permanent trend. And if you are reading it during or just after a promotion, do not use that window — you will size the order for a discount you are not repeating.

Lead time

This one is not in Shopify, and it is the number people get wrong. Lead time is not what the supplier's website says. It is the number of days between you clicking send on the purchase order and the stock being sellable in your Shopify inventory.

That includes the day the order sits unread, the production time, the shipping, customs if the goods cross a border, and the day the box sits in your receiving area before anybody counts it. Measure your last three or four orders from your own email timestamps. For most small merchants the real figure is between a third and twice what they assumed.

Safety stock

The cushion. Three ways to set it, in increasing order of effort:

  • A period of cover. One week of average sales is the common starting point. Simple, defensible, and what most stores should use.
  • Proportional to lead-time risk. If your supplier's delivery time varies between 14 and 28 days, carry the 14-day difference: 14 × average daily sales. This is the one worth doing if lateness, not demand, is what actually burns you.
  • Statistical. Z × standard deviation of demand during lead time, where Z is 1.65 for a 95% service level. Correct, and overkill for a catalogue you can hold in your head.

The honest guidance is to start with one week of cover and only get fancier for the ten SKUs that actually matter, which the ABC product analysis report will name for you.

Turning it into an alert

You now have a number per variant. The problem is keeping it current and being told when you hit it.

Shopify Flow's low stock template accepts one threshold for the whole workflow, so a reorder point that differs per variant does not fit it directly. The usual workaround is tags — rop-50, rop-170 — with a duplicated workflow per bucket. It works and it is tedious.

The deeper issue is that the reorder point is not a constant. It is daily sales × lead time, and daily sales moves. A number you computed in March is wrong by November on anything seasonal, and nothing in your store will tell you it has gone stale. You just start running out earlier than expected and blame the supplier.

That is the argument for expressing the threshold as days of cover instead of units: "warn me when I have less than 21 days left" stays correct when demand doubles, because the unit figure it resolves to moves with the sales rate. It is what StockPilot computes per variant and per location, from your actual order history, and it is the whole reason the app exists.

Three corrections that pay for themselves

Count the variant, not the product. A product with five sizes has five reorder points. Aggregate stock looks healthy right up to the morning that the only two sizes anyone buys are gone.

Recompute after any change in lead time. A new supplier, a new shipping route, or a port problem changes the first term of the formula directly. This is the one input where being wrong by a week costs you a week of empty shelf.

Do not set a reorder point on something you are discontinuing. Obvious, and yet the alert will keep firing and you will keep half-reading it, which is how you learn to ignore the ones that matter.

Related


Report names checked against Shopify's documentation on 4 August 2026. Which reports your admin shows depends on your Shopify plan.

StockPilot watches this for you

One email when a variant drops below the level you set, per location, based on real sales velocity. No alert storms. Free plan, then $9/month.

Install on Shopify