Free tool · no signup · no upload

How long will your stock last?

Days of cover for every SKU, from the two exports you already have — the same two the paid tool takes. It will not print a dollar figure unless your file carries cost, and it will not call anything dead stock on under a year of history.

1 · Drop your orders CSV here or click to choose a file — it is read in this tab and goes nowhere
In Shopify: Orders → Export → All orders → CSV
Any CSV with a date, a SKU and a quantity works.
2 · Drop your inventory CSV here or click to choose a file — it is read in this tab and goes nowhere
In Shopify: Products → Inventory → Export
Needs a SKU and a quantity on hand. A Cost per item column is optional — without it the answer is in units and days, never dollars.

Don't have both files to hand right now? See it run on sample data first →

Refuses

Four things it will not tell you, whatever your files say

Your textbook inventory turnover. That is cost of goods sold over a period divided by average inventory over the same period, and an inventory export is a snapshot — neither file carries a history of stock levels. Printing a ratio from a snapshot quietly swaps “inventory today” for “average inventory”. This page shows you the arithmetic it can do, and names the number it is missing.

That a SKU is dead stock, on under a year of history. Under one full cycle a December-only line in March looks exactly like something nobody wants. Days of cover is still computed — it is a projection at your observed rate, and the window it was measured over is printed beside it — but no SKU is labelled dead, slow or overstocked without the year to support it.

How much money is tied up, unless your export carries cost. Retail price is not cost; substituting it overstates the figure by your whole margin. Where the cost column is missing the answer comes back in units and days, and the page says so on screen.

What to discount, or by how much. A markdown is permanent and this page cannot tell you it was wrong until after the money is gone. It reports what is parked and how long the current rate implies it stays parked. The decision stays yours.

Check the columns before it counts anything

Detected from your headers. Change anything that looks wrong.

Longest cover in your catalogue
—

SKUOn handSold in windowUnits/day Days of coverImplied turnsAt cost

The one that costs money

You now know what is not moving. What should you order?

This page looks at what is already on the shelf. Reorder Copilot takes the same two files and looks forward: how much to order this week, per SKU, with the ones it cannot size returned as not assessed rather than guessed at.

  • Order quantities sized with proper safety stock for your service level
  • Safety stock scales with the square root of lead time, so a long lead does not tie up cash in proportion to it
  • Refuses to size an order for discontinued or seasonal SKUs — the mistake that fills a warehouse with dead stock
  • Same rules as this page: one file, no server, works offline forever
See Reorder Copilot — $49 once One payment, no subscription · 30-day refund, no questions
Next question

You now know what is not moving. The same orders export says what the empty shelves cost you — the days a SKU went quiet because it had run out, priced against its own weekday pattern.

Stockout Cost — same orders file →