Inventory and stock

What running out of stock costs a WooCommerce store

WooCommerce doesn't report sales lost to stock-outs, but you can estimate them: take the product's average daily sales before it ran out, multiply by the days it was out of stock, then by its average selling price. Say a product sold 4 a day at $25 and was out for 10 days: that's roughly 40 units and $1,000 in lost sales.

The estimate is rough, and it can run high or low. Below: how to get each number from WooCommerce, the costs a stock-out causes beyond the missing orders, how to tell which products are running out most often, and how to stop it happening again.

Estimating lost sales, step by step

Lost sales ≈ daily sales before the stock-out × days out of stock × average selling price

1. Find the daily sales rate before it ran out

Go to Analytics › Products and set the date range to the 30 days before the product ran out. Note Items sold and Net sales for the product. Divide items sold by 30 for daily sales, and net sales by items sold for the average selling price.

If the product was also out of stock for part of that period, divide by the days it was actually in stock.

2. Find how long it was out

WooCommerce doesn't keep a dated history of stock levels, so you piece this together:

  • Start: the out of stock notification email, if you have notifications turned on under WooCommerce › Settings › Products › Inventory. Or the date of the order that took the last unit.
  • End: the day you received new stock and updated the quantity.

If you don't know the start date, use the first day with no sales in Analytics as an approximation.

3. Multiply

Say a linen apron sold 120 units for $3,000 net in the 30 days before it ran out, then was out for 12 days.

  • Daily sales = 120 ÷ 30 = 4
  • Average selling price = $3,000 ÷ 120 = $25
  • Lost sales ≈ 4 × 12 × $25 = $1,200

To see that in profit rather than revenue, multiply by your gross margin. If your margin on the apron is 60%, the lost gross profit is about $720.

Why the estimate can be wrong

  • Some customers wait. If you allow backorders or offer back-in-stock emails, some of those orders come later, so the true loss is smaller.
  • Some customers buy something else. If they switch to another of your products, the store didn't lose the sale, the product did.
  • Some customers leave for good. A customer who finds an empty page may buy from a competitor and not come back. That loss doesn't show in this formula at all, so the true loss can also be larger.
  • The sales rate was changing. If the product was rising before it ran out (often why it ran out), the past 30 days underestimates the demand you missed.

Treat the figure as an order of magnitude. Its real use is to compare against what extra stock would have cost.

The costs that don't show up as lost orders

  • Ads that keep running. Paid ads and shopping campaigns pointing at an out of stock product spend money on clicks that can't convert.
  • Lost traffic. If you hide out of stock items from the catalog, those pages stop collecting visitors until the product is back.
  • Customer trust. Repeat buyers who find their usual product gone may shop elsewhere next time.
  • Rushed restocking. Express shipping or a smaller, pricier order to get stock back quickly eats into margin.

How to see which products run out most often

WooCommerce shows what's out of stock now, not what ran out last month. To spot repeat offenders:

  1. Check Analytics › Stock weekly with the Show menu set to Out of stock, and note what's on it and since when.
  2. Keep your out of stock emails in one folder. Over a few months, they're a list of stock-outs by date.
  3. Look for gaps in sales. In Analytics › Products, check a best seller's items sold week by week over the last 90 days. A week near zero on a normally steady product is usually a stock-out.
  4. Compare periods. Use the date picker's compare option to see if a product fell sharply from one month to the next. If its stock was zero during the drop, that's lost demand, not lost interest. The guide on comparing two date ranges explains how.

How to stop running out

  • Set reorder points on your best sellers. A reorder point is daily sales × lead time + safety stock. Enter it as the product's low stock threshold so WooCommerce flags it at the right time. See how to set reorder points for WooCommerce products and the free reorder point calculator.
  • Hold safety stock on anything that runs out repeatedly.
  • Check days of stock left weekly. Stock ÷ daily sales gives the days until a product runs out. Anything shorter than your supplier's lead time needs ordering now. See how to find products about to sell out.
  • Manage stock per variation. A product can look well stocked while its most popular size is gone.
  • Plan for promotions. Before a sale or a big email, make sure the featured products have stock for the expected rise.

What Askshelf can and can't tell you

Askshelf doesn't estimate lost sales, and it can't tell you how long a product was out of stock, because WooCommerce doesn't store that history. What it does well is the prevention side. Its stock runway lookup lists products and variations that will run out within the number of days you choose (1 to 120), based on current stock and the sales rate over the last 7 to 90 days.

Askshelfexample answer

What will run out in the next 14 days?

3 items will run out within 14 days at their last-30-day pace: the linen apron (sage) in about 5 days (20 left, selling 4 a day), the ceramic mug (white) in 9, and the canvas tote in 13.Stock runway, within 14 days, sales rate over the last 30 days
An example on a demo store. In your store, the numbers come from your own orders.

Its sales summary and top products lookups can also compare a month with the one before, which helps confirm a drop after a stock-out. For a full stock routine, see the WooCommerce inventory forecasting guide, and the stock forecasting page for how Askshelf fits in.

Common questions

Does WooCommerce report lost sales from stock-outs?

No. WooCommerce records orders that happened, not the ones that didn't. You estimate lost sales from the product's sales rate before it ran out and the number of days it was out of stock.

How do I know when a product went out of stock?

WooCommerce doesn't keep a dated stock history. If out of stock notifications are on, the email's date is your best record. Otherwise, use the date of the order that took the last unit, from the order list or Analytics › Products with a narrow date range.

Should I hide out of stock products?

It depends. Hiding them (WooCommerce › Settings › Products › Inventory › Out of stock visibility) stops customers hitting a dead end, but you lose the page's search traffic and the chance to collect back-in-stock interest. Many stores keep best sellers visible and hide one-off items.

See how Askshelf handles this: Stock forecasting for WooCommerce