Blog · 21 September 2026
Detecting out-of-stocks with till data: the method of the product that stopped selling
In shortA fast-moving product whose sales fall to zero for an unusual length of time is very probably absent from the shelf, even if book stock is positive. The method compares, for each SKU, the time since the last sale with the usual time between two sales at that hour and on that day: beyond a multiple (three to five times), the SKU is flagged. It only works on products that sell often, it detects the out-of-stock late, and it does not give the cause. In addition, checkout staff are the first to hear 'there was none left'.
The principle: a missing sale is a signal
Tills record every sale with the time. For a product that sells, say, twelve times an hour on a Saturday afternoon, an hour without a sale is a rare event if the product is on the shelf. The probability that it is absent becomes high. This reasoning was formalised in the literature on detecting out-of-stocks from sales, notably by Papakiriakopoulos, Pramatari and Doukidis (Decision Support Systems, 2009), and it is used by several retail tools.
Its interest: it does not depend on book stock. Phantom stock, a pallet forgotten in the back room, a misplaced product all produce the same symptom, sales stopping.
The method, SKU by SKU
- Calculate the usual interval between two sales for each SKU, by weekday and time slot, over recent weeks.
- Measure the time since the last sale continuously.
- Flag when that time exceeds the usual interval multiplied by a threshold, for example four. A low threshold gives false alerts; a high one detects late.
- Check on the shelf the flagged SKUs, and correct book stock if the product is absent with positive stock (phantom stock).
| SKU | Usual sales (Saturday 3-5 pm) | Usual interval | Last sale | Signal (threshold × 4) |
|---|---|---|---|---|
| Semi-skimmed milk 1 L | 60 / h | 1 min | 25 min ago | yes |
| Coffee pods brand A | 12 / h | 5 min | 12 min ago | no |
| Hair colour, common shade | 1 / h | 60 min | 90 min ago | no |
The limits
- Slow movers cannot be detected: a SKU that sells once a day can be absent all day without the method seeing it. Yet these are often products without a substitute, with a high margin.
- Detection is late: several intervals without a sale are needed before the signal. On a fast mover that is half an hour; on an average product, several hours.
- The signal does not give the cause: stock-out, product in the back room, misplaced product, missing label, or simply no shopper in the aisle. Someone has to go and look.
- Promotions and events change the usual intervals; the method must be recalibrated during operations (promotions and out-of-stocks).
Checkout staff, the first witness
Before any algorithm, the till hears shoppers: “there was no milk left”, “I could not find the nappies”. That information is almost always lost. Three simple practices recover it:
- a key or a notebook “missing product reported” at the till, with the product name, collected at every shift change;
- a five-minute catch-up between the checkout and the department managers at the end of the day;
- the same rule as for the shelf count, described in how to get the shelf team hunting gaps: what is reported is treated and the result is fed back to whoever reported it.
A worked example (hypothetical)
Take a fictional supermarket applying the method with a threshold of four intervals on its 200 best-selling SKUs. One Saturday, 14 SKUs are flagged between 2 pm and 6 pm. Shelf check: 9 are absent (6 of them with positive book stock), 3 are present but misplaced, 2 are false alerts. Of the 9 absent, 5 are brought up from the back room within a quarter of an hour. These figures illustrate the expected order of magnitude: a majority of true detections, and a share of checks for nothing.
What shopper reporting changes
Till data detects the out-of-stock when sales stop; the shopper who reports with ShelfAlert detects it the moment they stand in front of the empty shelf, including on slow movers the till cannot see. The two signals cross-check: a SKU reported by a shopper and with no sale for an hour is a certain out-of-stock. 14-day trial, no payment card: see the plan for store managers.
Sources
- Papakiriakopoulos, Pramatari, Doukidis, “A decision support system for detecting products missing from the shelf based on heuristic rules”, Decision Support Systems, volume 46, 2009.
- DeHoratius, Raman, “Inventory Record Inaccuracy: An Empirical Analysis”, Management Science, 2008: abstract.
- Gruen, Corsten, Bharadwaj, “Retail Out-of-Stocks: A Worldwide Examination”, GMA, 2002: full study (PDF).