The test
It made every call blind — which products were finished, which were overstocked, which to leave alone. Only then were the hidden months revealed and the calls scored. No number on this page comes from data the engine had seen.
| Sage said | Products | Capital at risk | Sold nothing after |
|---|---|---|---|
| Dead — stop reordering | 542 | €272,108 | 80% |
| Excess — stop reordering | 536 | €355,456 | 3% |
| Slow — hold off | 220 | €15,600 | 3% |
| Healthy — no action | 947 | — | 6% |
| Reorder now † | 1,059 | — | 94% |
† The one bad row, left in on purpose. A product that has gone silent and already run down to zero stock has nothing on the shelf to flag, so it falls through to “reorder” instead of “dead”. It costs nothing today — the quantity it computes is zero, so no money moves — but the label is wrong, and it is the next thing we fix.
Read the rest downward. Stock Sage called dead mostly never moved again. Stock it called excess did sell, slowly — which is what excess means, and why the advice there is to buy less rather than to dump it. Products it left healthy carried on. The gap between the first row and the fourth is the entire product.
Why silence, and not a trend
Before building anything we checked the shape of the problem, because if there is no downward slope then every method that looks for one is useless.
There is no downward slope to catch. The product sells, and then one week it does not, and it never does again. That rules out trend-chasing entirely.
What works instead is noticing silence — a product quiet for far longer than it has ever been quiet, judged against its own rhythm. A line that sells every three days is in trouble after three weeks. One that sells every six weeks is not. That per-product rhythm is the whole method, and it needs no forecast at all.
Financial impact
What we claim, and what we don’t
If a vendor shows you one big number and calls it savings, ask them which of these four it is.
Where the data comes from. Demand is real: two years of a wholesaler’s invoice history, 1.07 million order lines, publicly available. The warehouse around it — unit cost, supplier, lead time, case pack, stock on hand — is not in that data, so it is simulated. The silence Sage detects is therefore real customer behaviour. The euros are real quantities priced at modelled costs, so read them as scale rather than one company’s books. On your file, both halves are real.
Next
Send a sales export — date, product code, quantity, price. We run it and send back what we find, in euros. Free, and no obligation of any kind.