4 Things Your Cannabis Reorder Report Can't See

Sales Operations · By Headquarters · September 2, 2026

Almost every cannabis POS and analytics platform will generate a reorder report on demand. Almost nobody who builds wholesale orders for a living uses one without correcting it first.

That gap is expensive. IHL Group's 2025 inventory distortion study put global out-of-stock losses at $1.157 trillion, with inventory distortion running at 6.5% of retail sales worldwide and $415 billion of the damage landing in North America. And the foundational research on why shelves go empty, a worldwide study of more than 71,000 shoppers across 29 countries, traced roughly half of all out-of-stocks to demand forecasting and ordering rather than to anything that happens inside the store.

Cannabis inherits every bit of that, then adds rotating strain menus, state-by-state track-and-trace, and no universal product identifier. Canada made GS1 GTINs mandatory for cannabis at legalization, with a unique identifier required for every strain and size variation. The US market never standardized, which is why so much of the work below is reconciliation.

A reorder report is a simple calculation: units on hand, measured against units sold over some window. It is a reasonable starting point and a bad ending point, because four things that determine the right order quantity are invisible to it.

---

1. Product That Is Already on Its Way

A reorder report reads current on-hand. It has no concept of an order that shipped four days ago and is sitting in a distribution warehouse, or in the back room waiting to be received.

This gets worse the larger the chain. Operators running centralized distribution move product through two hops before it reaches a shelf: brand to distro, distro to store, then back room to floor. Across that window the store's on-hand reads low, the reorder report flags a stockout, and a second order goes out against inventory that already exists in the system.

The correction is mechanical. Before running the numbers, treat the last submitted order as though it is already in the store. Anything the report recommends after that adjustment is a real gap. Anything it recommended before is partly a duplicate of an order you already placed.

---

2. The Days a SKU Was Not on the Shelf

This is the costliest of the four, and the least visible.

Reorder logic divides units sold by days in the period. If a SKU sold 60 units over 30 days, velocity reads 2.0 units per day. But if that SKU was out of stock for 11 of those 30 days, it actually sold 60 units across 19 selling days. True velocity is 3.16 per day, 58% higher than the report shows.

Size a six-week coverage window off each figure and the divergence compounds:

  • At 2.0 units/day: 84 units ordered
  • At 3.16 units/day: 133 units ordered
  • Shortfall: 49 units, on a single SKU, at a single door

The failure is self-reinforcing. A product that stocks out looks slow. Because it looks slow, it gets under-ordered. Because it is under-ordered, it stocks out again. Fast movers are the most exposed, because they are the SKUs most likely to have gone to zero in the first place.

The cost is not only the units you failed to ship. The same worldwide study found that when shoppers find their product missing, 45% buy something else, 31% go to a different store, and 9% leave without buying at all. Only 15% wait. An under-ordered SKU does not hold its place on the shelf until the next delivery, it hands the sale to whatever is sitting next to it.

Sell-through platforms have started correcting for this by calculating velocity against in-stock days rather than calendar days. Headset reports that retailers connected through its Bridge product see 19.6% fewer stock-outs on average. The metric matters more than the vendor: if your velocity denominator is calendar days, every number downstream of it is low.

---

3. The Same Product Living on Two Shelf Records

When a retailer receives a restock, the correct action is to add units to the existing product record. The common action, under time pressure, is to create a second record.

Now one physical product occupies two rows. On-hand splits across both. Each row independently looks depleted, and a reorder report reading either one in isolation recommends a restock. Order against both and you double-ship. METRC package imports and POS migrations produce the same artifact, and analytics normalization does not reliably catch it, particularly after a state traceability update changes how package data arrives.

This is not an edge case. It is a structural feature of high-churn catalogs with no standardized naming convention, and it means a reorder report can confidently recommend restocking a SKU the store already has sitting in quantity. It is the same duplication problem that quietly erodes margin on the retail side, seen from the wholesale end.

---

4. Whether You Can Actually Fill the Order

A reorder report is computed entirely from retailer-side data. It has no visibility into what the supplier has available.

So it will recommend 40 units of a SKU you sold out of last week, and it will keep recommending it. Worse, it cannot tell the difference between two situations that look identical in the data:

  • A stockout, where the store is temporarily out of a product that is coming back
  • A strain gap, where the store is out of something that is never coming back, because that phenotype is done

The first is a reorder line. The second is a replacement decision, and it needs a rule agreed in advance: substitute within strain type first, then potency, then format. Without that rule, discontinued strains sit in the recommendation forever, and every order built off the report carries lines that cannot be filled.

---

What to Use Instead

Skip the reorder report and pull the raw inventory report. It is messier and it is complete, which is the correct trade.

From there, four corrections turn it into something a buyer will approve:

  1. Add back in-transit product so recent orders are not counted twice
  2. Recalculate velocity against in-stock days, not calendar days
  3. Deduplicate shelf records before summing on-hand
  4. Check every recommended line against your own availability, with a pre-agreed substitution rule for what is gone for good

A useful way to measure whether this is worth the effort: take last month's orders and recompute them with in-stock velocity. The delta between what you shipped and what the corrected math says you should have shipped is the revenue the reorder report cost you. On a portfolio of any size, that number tends to be larger than people expect.

None of this requires new software. It requires knowing that the report is an input rather than an answer, and that the four things it cannot see are the four things most likely to be wrong.

Common questions

Why are cannabis reorder reports unreliable?
They calculate units on hand against units sold, and cannot see product already in transit, days a SKU was out of stock, duplicate shelf records holding the same product, or whether the supplier can actually fill the recommended line.
How does out-of-stock time distort sales velocity?
Standard reorder logic divides units sold by calendar days. A SKU that sold 60 units in 30 days but was out of stock for 11 of them has a true velocity of 3.16 units per day, not 2.0. Sizing a six-week order off the lower figure under-orders by 49 units on that SKU alone.
What should cannabis brands use instead of a reorder report?
The raw inventory report, corrected four ways: add back in-transit product, recalculate velocity against in-stock days, deduplicate shelf records before summing on hand, and check each line against supplier availability with a pre-agreed substitution rule.