0 units online, 421 units across 48 stores near one Chicago postcode. On November 10 a five dollar toy at a United States chain showed nothing on its product page while the same SKU sat on shelves across the metro area, 12 of them at the nearest counter 3.7 miles away. As of November 13, 2026 the two counts still sit in separate systems, and only one of them tells a shopper what can be picked up today rather than shipped tomorrow. The gap is not a data error, it is how availability gets counted, and it decides which sales a product page quietly cancels.
Availability has two counters, and they rarely agree
The online pool is pooled. It is priced once, promised once and shipped from whichever node has depth. The store pool is fragmented: every branch holds its own units, its own back room and its own labour on the day. When the page reports availability it reports the pooled number, because that is the number the checkout can honour. When a customer walks in, they meet the fragmented one. The gap between them is not a bug in either system. It is the difference between a promise and a count.
This is why a website can be honest and still mislead. It is telling the truth about the inventory it controls, not about the branch the shopper has in mind. The shopper reads it as a statement about the shop down the road, and no line on the page corrects that reading. The correction has to come from the store count, published beside the network figure rather than in a report nobody opens.
A page flag is a promise, a unit count is a fact
Retail systems inherited their availability logic from warehouses, where a stockout is arithmetic: stock minus orders. A store is not a warehouse. Product can be in the building and not on the shelf, which the Gruen work on out-of-stocks puts at a quarter of all gaps, and product can be on the shelf and not counted because nobody scanned the facing since the morning refill.
That distinction changes what a brand should measure. A flag tells you what the network believes. A unit count tells you what a shopper can touch. For distribution coverage, the second number is the only one that converts, because instant retail and same-day delivery both ask the store to settle the promise physically within hours rather than days.
Instacart turns shopper visits into a shelf map
On the supply side the measurement is being rebuilt from the aisle up. Instacart is rolling out Inventory Intelligence for retailers and a Store Excellence Portal for brands, both built on its shopper network: roughly 600,000 shoppers visiting stores more than 15 times per store per day, over 10 million data points daily, set against more than 1.6 billion lifetime orders. The company positions the output as store-level rather than regional, and says the system separates a product that sold through from one that never reached the shelf.
For a brand the useful part is the substitution trail. When a shopper cannot find an item, the portal records whether they moved to a competitor SKU, to a different pack size or out of the category. That single field turns an empty facing into a velocity-adjusted loss estimate at UPC level, which is a different object from a national availability average. Distribution coverage measured nationally hides exactly the stores where the gap lives.
What a shelf map does not fix
Vision and scan data describe the shelf; they do not restock it. The quarter of gaps that sit in the back room are a labour problem, and labour is the constraint that shows up first when a promise shortens. A store that holds a two-day promise comfortably can miss a same-hour promise with identical inventory, because the picker cannot walk the aisle fast enough at eleven at night.
There is a second blind spot in markets where wholesale buyers purchase by the case. An availability dashboard counts units. A restaurant buying twelve bottles counts cases. Item-level fill rate can look healthy while case-level fill rate fails, because the last case was committed to single-unit orders. Splitting the two demand types at node level is the only way the number stops flattering itself.
The arithmetic that runs before the promise
Four signals decide whether an availability claim survives contact with a customer. None of them requires new software, and all of them are cheaper to collect than a missed sale. The point of listing them together is that each one answers a question the others cannot, so a report that carries only one will be confidently wrong in three ways.
| Signal | Where it is captured | What it misses |
|---|---|---|
| Online units | Order management system | Anything already in a store |
| Store pickup units | Store inventory, per SKU | Product in the back room |
| On-shelf availability | Aisle scan or shelf vision | Case-level demand |
| Pick capacity | Labour schedule by hour | Demand spikes inside the hour |
Read together, the four produce the only number that matters operationally: how many units a customer could actually leave with, in the next hour, at that store. Promising faster than that figure produces a cancellation dressed as a delay, and the customer records it as a broken promise rather than a forecast error. Promising slower than the figure costs an order to a competitor who quoted tighter, which is why the count has to be current rather than conservative.
A weekly routine that keeps the count honest
Two of these steps cost nothing but a decision: publish the timestamp, and stop averaging across a city. The rest are scheduling questions. A retailer that runs this routine for a month usually finds the same thing the toy did, which is that the website was never lying, it was answering a different question than the one the shopper asked.
FAQ
Why can a product be sold out online and available in a store?
Because the two counters read different pools. The website reports the units the shipping network can commit to, while each store holds a separate quantity that is only visible through its own inventory and shelf. A single SKU can be zero in one pool and hundreds in the other.
Does shelf vision remove the need for store counts?
No. Vision describes what is on the shelf at the moment of the scan, which is useful for on-shelf availability and planogram drift, but it does not see the back room or the labour available to refill. It improves the picture rather than replacing the count.
Which metric should a brand ask for first?
Fill rate by node and by item for the top sellers. Regional averages hide the node that is out of the fast movers, and a gap you can locate is a gap you can route around.
How does a shorter delivery promise change availability work?
It removes the cushion that used to absorb a missing facing. With a week the shopper substitutes or returns later; with a few hours the shortfall is settled in front of them, as a cancellation, a refund or a substitution they did not choose.











