Skip to main content

How sales velocity and days of supply work

Every reorder decision in SKU.io starts from two numbers: how fast a product sells (its velocity) and how long the stock you have will last at that pace (its days of supply). This page explains where those numbers come from, so you can read them correctly in the Inventory Planning report and in a demand forecast.

Velocity: how fast a product sells​

Velocity is units sold per day or per month, counted from your sales orders. The Inventory Planning report shows it several ways:

ColumnWhat it shows
Sold 30d, Sold 60d, Sold 90d, Sold 180dTotal units sold over the last 30, 60, 90, or 180 days.
Daily AvgAverage units sold per day.
Monthly AvgAverage units sold per month: the 180-day total divided by six.
Demand TrendWhether the product is speeding up or slowing down: the last 30 days' daily average compared with the last 90 days'. An up arrow means growing and a down arrow means declining.
Sell-Through %The share of your supply that sold: units sold in 180 days divided by those units plus what's still available. A high percentage is a fast mover.
Inv. TurnoverHow many times a year you sell through your stock: twice the 180-day sales, divided by total inventory.

These figures are refreshed every night at 2 AM. The line at the top of the report shows when the Velocity Cache was last refreshed and when it runs next. Click Refresh next to it to recalculate now, for example after importing a batch of historical orders.

Demand Trend needs enough sales to mean something. With fewer than 6 units sold in 90 days it shows a dash. With 6 to 19 units it shows faded, as a low-confidence reading. From 20 units it shows normally.

Velocity for one channel​

The report's velocity counts sales from every channel together. To size an order on a single channel's demand, use Inventory → Demand Planning. Its sales order filters let you count only orders from a chosen Channel or Sub Channel, and leave out cancelled orders or returns. The forecast's Avg/d column is then that channel's velocity.

Days of supply: how long your stock lasts​

Days of supply divides the stock you have by how fast you sell it.

ColumnFormulaWhat it tells you
Days of StockAvailable ÷ Daily AvgHow many days your current stock lasts at the current pace. ∞ means no recent sales.
Days Until Stockout(Available + Inbound) ÷ Daily AvgThe same, counting units already on open purchase orders. It's higher than Days of Stock when you have stock on the way.
Stockout RiskDays of Stock compared with the supplier's lead timeHIGH: you run out before a new order could arrive. MEDIUM: stock lasts less than one and a half lead times. LOW: comfortably more. NONE: no sales.

The sales side is company-wide. When you filter the report by Warehouse, the stock columns change to that warehouse, but velocity still counts sales from every warehouse.

A demand forecast also reports days of supply. Its summary tiles show the days of coverage the recommended order would give you, and the target you set with Target Stock Days drives how much it recommends.

Velocity drives the reorder numbers​

The report's reorder columns are built on the same velocity:

  • Reorder Point = (Daily Avg × lead time) + Min Stock Level. When available stock falls below it, it's time to order. The report uses the longer of the supplier's quoted lead time and the actual lead time from your recent purchase orders.
  • Suggested Qty = (Daily Avg × (lead time + Target Stock Days)) − Available − Inbound, rounded up to the supplier's minimum order quantity. 0 means current and inbound stock already cover the target.

Stockouts: velocity counts only what you sold​

Velocity measures observed sales. On a day a product is out of stock, it sells nothing, and SKU.io counts that day as zero sales. It doesn't estimate the sales you would have made with stock on the shelf.

That means a product that was out of stock for part of the period shows a lower velocity than its real demand, and the reorder numbers built on it come out too small. This matters most for your best sellers, which are the products most likely to run out.

To correct for it in a forecast:

  1. Build a Sales Based forecast for the product on Inventory → Demand Planning.
  2. Click Detect Anomalies. Days with far fewer sales than normal are flagged as Drop.
  3. Exclude the drops from the days the product was out of stock, so those days leave the average completely.
  4. Turn on Exclude detected anomalies from baseline and build the forecast again.

The forecast now averages only the days the product could sell. See Review demand anomalies for the full steps. You can also choose a Days of History window that starts after the product was back in stock.

The Inventory Planning report's velocity columns don't use these exclusions. They always count every day.

Last verified: