Reorder before the stockout, not after.
Out-of-stock does not just lose the sale. It drops you out of Google Shopping and AI shopping results, and getting momentum back takes weeks. I built the inventory system for the brand I run ops for; this is the same math it uses.
The formula
Safety stock = (max daily sales × max lead time) − (avg daily sales × avg lead time). It absorbs the double bad luck of a demand spike during a supplier delay.
Reorder point = (avg daily sales × avg lead time) + safety stock. When on-hand crosses this number, place the PO that day, not next week.
Why stockouts cost more than the missed orders
The obvious cost of running out is the revenue you do not capture that week. The larger cost is what happens around it. Out-of-stock products get filtered out of Google Shopping and increasingly out of AI shopping results. Ad sets pointing at a dead product keep spending. Organic rankings for the product page soften while it sits unavailable, and they do not snap back the day inventory lands.
Which is why a reorder point is not really an inventory metric. It is a visibility metric with an inventory formula behind it.
The formula, and what each part is protecting you from
Two calculations. The first sizes your buffer:
Safety stock = (max daily sales x max lead time)
- (avg daily sales x avg lead time)
This covers the scenario that actually causes stockouts, which is rarely a single problem. It is a demand spike happening at the same time as a supplier delay. Sizing the buffer against your worst observed demand and your worst observed lead time together prices in that overlap.
The second sets the trigger:
Reorder point = (avg daily sales x avg lead time) + safety stock
When on-hand inventory crosses that number, the purchase order goes out that day. Not at the end of the week, not after the next planning meeting. The whole point of computing it in advance is to remove the decision from the moment.
A worked example
You sell 12 units a day on average, spiking to 25 on your best days. Your supplier averages 18 days, but has taken as long as 28.
Safety stock = (25 x 28) - (12 x 18) = 700 - 216 = 484 units Reorder point = 216 + 484 = 700 units
At 700 units you reorder. That buffer looks large, and it is: it is the honest cost of a supplier whose lead time swings by ten days. If that number is uncomfortable, the fix is a more reliable supplier or a second source, not a smaller buffer. Shrinking the buffer does not reduce the risk, it just moves the cost from inventory to stockouts.
Where to find these numbers in Shopify
- Average daily sales: Analytics, then Reports, then Sales by product. Take a 90 day window and divide by 90. Use 90 days rather than 30 so a single promotion does not distort the average.
- Maximum daily sales: the same report grouped by day. Use your genuine best day, excluding Black Friday unless you are planning for Black Friday.
- Lead times: your own purchase order history. Measure from the date you sent the PO to the date stock was actually available to sell, not the date it arrived at the warehouse. Receiving and putaway are part of your lead time.
What this calculation does not handle
It assumes demand is roughly stable. That assumption breaks in three places, and each needs a manual override:
- Seasonality. Recalculate before your peak using peak-period demand, not the annual average. A Q4 reorder point built on July numbers will fail.
- Launches and promotions. A planned campaign is known demand. Add it on top rather than waiting for the reorder point to catch up after the fact.
- Products with a shelf life. A large safety stock on a perishable or dated product trades stockout risk for write-off risk. Cap the buffer at what you can sell inside the product's usable life.
Recalculate quarterly at minimum. Lead times drift, suppliers change, and a reorder point built on last year's numbers will quietly stop protecting you.
Common questions
How do I calculate a reorder point?
Why does stocking out cost more than the lost sales?
How much safety stock should I hold?
Where do I find lead time and sales data in Shopify?
Does this work for seasonal products?
How often should I recalculate?
Read next on the blog
Get new tools and posts in your inbox
Occasional notes on Shopify, paid ads, and AI in commerce. No spam.
Thanks - check your inbox to confirm.
Want the free AI Shopping Checklist PDF instead? →