If a bestseller sells out and the new stock is still two weeks away, the mistake happened about two weeks earlier, at the moment the stock dropped below what you'd sell while waiting for the supplier. That moment is your reorder point. Work it out for each product that matters, set an alert at that number, and reorder when the alert arrives rather than when the product page says "Sold out".

A low-stock alert on its own doesn't solve this. An alert at "5 left" is useless for a product that sells four a day and takes ten days to arrive. The number behind the alert is the part to get right.

Work out the reorder point

You need two figures per product:

  • Average daily sales. Units sold over the last 30 to 90 days, divided by the number of days. Use a period without one-off spikes such as a sale weekend, or the number will be too high for normal weeks.
  • Lead time. Days from placing the order to having the stock counted and ready to sell. Count from the day you send the order to the day it's on the shelf, not the supplier's quoted shipping time. Receiving and counting take time too.

Then:

Reorder point = average daily sales × lead time + safety stock

Safety stock covers the days when the supplier is late or sales run faster than average. A simple way to set it: take the longest delay you've had from this supplier in the last few orders, in days, and multiply by daily sales.

An example with made-up numbers: a candle sells 3 a day. The supplier takes 12 days from order to shelf, and the last delivery was 3 days late.

  • Stock used while waiting: 3 × 12 = 36
  • Safety stock: 3 × 3 = 9
  • Reorder point: 45

When the count reaches 45, the order goes out. If the delivery arrives on time, you'll have about 9 left when it lands. If it's 3 days late, you'll hit zero on the day it arrives.

For a product that sells less than one a week, the formula gives a tiny number. Set the reorder point to the minimum you're willing to show on the shelf instead, for example 2.

Decide how much to order

The reorder point says when. The quantity is a separate decision:

Order quantity = daily sales × days until the next planned order

If you reorder the candle once a month (30 days), that's 3 × 30 = 90 units. If you're placing the order late and stock is already below the reorder point, add the difference. Round up to the supplier's case size or minimum order, and check you have the cash and storage space for it. If the minimum order is far above a month's sales, order less often and accept a higher stock level, or find a supplier with smaller minimums.

Only do this for the products that matter

You don't need a reorder point for every SKU. Sort products by units sold in the last 90 days and start with the top 20, or with anything where running out costs you sales you can't recover: a product customers come back for, an item in a bundle, a variant with ads pointing at it.

For the rest, a weekly look at a low-stock report or a stock count is enough.

Set the alert at the reorder point

Once each important product has a number, put an alert on it. What's available depends on the platform.

Shopify. The Shopify Flow app is free and, according to Shopify, available on the Basic, Grow, Advanced and Plus plans. Its example workflows include a template called "Get notified when product inventory is low": it starts when an inventory quantity changes and sends an email when a variant drops below your threshold. Shopify's example checks both the new quantity and the quantity before the change, so the email goes out once, when stock crosses the line. If you check only the current quantity, Shopify notes that the reorder email is sent every time the product is ordered until it's restocked.

The template uses one threshold for everything it watches. If your reorder points differ a lot, make one workflow per group of products with similar numbers and add a condition that limits each workflow to that group. A Shopify Community user found Flow unreliable and its output hard to read for orders with 40 to 50 items, so test it on a few real orders before you rely on it.

WooCommerce. In the inventory settings you can turn on low stock and out of stock notification emails, enter one or more recipient addresses and set a low stock threshold, the stock count that triggers the email. That threshold is store-wide, which suits a catalogue where products sell at similar speeds and needs extra work where they don't.

Other platforms or a separate inventory app. Look for three things: a threshold you can set per product or variant, an alert that fires when stock crosses it (not only a daily list), and more than one recipient, so the alert doesn't sit in one person's inbox during a holiday.

Send the alert to whoever places orders with suppliers. An alert that goes to a shared inbox nobody owns is the same as no alert.

Make the alert lead to an order

A short routine that turns the email into stock:

  1. Alert arrives: check the count is real. A quick shelf count catches the cases where the system is wrong.
  2. Place the order with the supplier the same day and note the expected arrival date.
  3. Record the order where the store can see it. On Shopify, a purchase order records what you ordered from the supplier and lets you receive the stock against it when it arrives.
  4. When the delivery lands, count it in before it goes on sale.
  5. If the delivery was late, write down by how many days. That's the input for next month's safety stock.

If counts drift because shop sales, breakages or a second location aren't recorded, the alert fires at the wrong time. Fix that first; our guide to selling stock you don't have covers where those gaps come from.

Keep the numbers current

Reorder points go stale. Recalculate them once a month for your top products, and straight away when:

  • a supplier changes its lead time or minimum order;
  • a product's sales double or halve, for example after you start or stop advertising it;
  • a seasonal peak is coming. Use last year's sales for the same weeks, not the last 30 days, and place the order early enough for the supplier's own busy period.

A spreadsheet with four columns per product — daily sales, lead time, safety stock, reorder point — is enough to keep this up to date. When you change a number there, change the threshold in your alert at the same time.

When a product runs out anyway

It will happen sometimes: a supplier misses a delivery, or a product gets unexpected attention. Decide in advance what the product page does at zero: hide the product, show it as sold out, or take orders with a clear dispatch date. Taking orders at zero only works if the page says when the order will ship and you can keep that date. Leave selling at zero (Shopify calls it "Continue selling when out of stock") switched off for everything else.