Under a manual forecasting process, a stockout rarely announces itself in advance. Somebody notices when a customer asks why their order has not shipped, or when a reorder is placed too late to close the demand gap. By then the sale is already at risk and in a wholesale relationship so is the account. A static minimum inventory level does not help, because it does not monitor variable demand or how reliable that supplier’s lead time has been lately. A threshold that was prudent six months ago is dangerously low today if demand has picked up and wasteful if demand has decelerated. The recalibration exercise is the tell. Any business running min/max at scale eventually finds itself reviewing thresholds across every location by spreadsheet, because the thresholds have drifted from reality and nobody has time to keep them honest. The work is real, repetitive and produces a number that is stale again within weeks. Does this sound familiar? How much time does your team spend manually calculating forecasts or amending min/max levels by CSV?
The reorder point combines three inputs:
1. the trend-adjusted daily demand forecast
2. the lead time configured on the product record
3. statistical safety stock.
The calculation is (trend-adjusted daily demand forecast + lead time in days) + safety stock).
When available stock falls below that number, today is the day to place the order for stock to arrive before a stockout, not after. This number is calculated daily and held against every SKU for 365 days.
When you ask the question – “what items will stock out in 30 days at the central warehouse?” Stok.ly is not calculating on the fly, it is querying this pre-calculated value and providing that number for you in seconds.
Safety stock is calculated as the 90-day demand standard deviation, multiplied by the square root of lead time in days, multiplied by 1.645. It recalculates daily.
A product becomes spiky; perhaps a B2B customer has started placing large irregular orders. This item earns a larger buffer automatically, with nobody editing a field. A product that settles down earns a smaller one, releasing capital that was sitting as unnecessary insurance.
That figure is the z-score for a 95th percentile service level: the standard for a business that intends to be in stock on nineteen of every twenty demand days. It is a commercial choice and it is published here because a buyer should be able to interrogate it rather than accept a buffer they cannot explain.
A business that needs a higher service level on a critical range should be able to have that conversation with a number in front of it.
Available stock divided by trend-adjusted daily demand. Sorted ascending, it produces an ordered list of what runs out first. It is the most intuitive of the four signals for anyone who has to explain a purchasing decision to somebody else, because it answers the question in the unit people actually think in.
A composite score between 0 and 1 combining current availability, forecast demand and demand variability. Sorted descending it gives the buying team the day’s purchasing priority list in a single action. The design intent: which items do I need to order today, sort by which are closest to their reorder point, job done.
The data lake separately records, for each rolling window, how many days a product had zero available stock. This is what allows the system to tell the difference between two situations that look identical on a sales report:
1. I sold none because nobody wanted it
2. I sold none because I had none to sell.
The first is a slow mover to be cleared. The second is a product to buy more of. Treating them the same way is how businesses simultaneously overstock what does not sell and understock what does.
If lead time is not configured on the product record, safety stock returns null and the AI flags the product for setup rather than substituting an assumption. This is deliberate. A silently assumed lead time produces a confident-looking reorder point that is wrong, and a wrong number a buyer trusts is worse than a gap a buyer can see.
What do you like best about Stok.ly – Inventory-Centric Cloud ERP?
“we have been a user for the last 4 years and we cannot think of life without it for our retail business. it makes listing to shopify and other marketplaces easy, keeps inventory accurate online and the POS is easy to use. accurate inventory across all sales channels is the big win for us.”
| Signal | What it tells you | How it is calculated | How the buying team uses it |
|---|---|---|---|
| Reorder point | The exact threshold at which to place a purchase order today | (Trend-adjusted forecast daily demand × lead time in days) + safety stock | When available stock falls below this number, order now |
| Safety stock | The buffer needed to absorb demand variability at a 95% service level | 90-day demand standard deviation × √(lead time in days) × 1.645 | Set once and left alone; it recalculates daily as variability changes |
| Days of cover | How long available stock will last at the current demand rate | Available stock ÷ trend-adjusted daily demand | Sort ascending to see imminent stockouts |
| Stockout risk | A single urgency score from 0 to 1 | Composite of current availability, forecast demand and demand variability | Sort descending for today’s purchasing priority list |
| Zero-stock days | How many days in the window the product had nothing to sell | Count of days with zero available stock across 30, 60 and 90 day windows | Distinguishes unmet demand from genuine slow movement |
| Non-zero demand days | How many days it actually sold | Count of days with demand above zero in the trailing 90 days | Identifies intermittent sellers that need different treatment |
| Min/max replenishment | Stok.ly statistical replenishment | |
|---|---|---|
| Where the threshold comes from | A person, once | Actual demand variability, daily |
| Response to a demand spike | None, until someone notices | Safety stock increases automatically |
| Response to a slowdown | Keeps ordering at the old rate | Safety stock reduces, releasing capital |
| Treatment of stockout days | Counted as low demand | Excluded from sell-through |
| Service level | Implicit and unknown | Explicit: 95% |
| Lead time handling | Usually baked into the minimum | A separate configured input |
| Missing lead time | Silently absorbed into the threshold | Returns null and flags the product for setup |
| Maintenance overhead | Periodic manual recalibration | None |
Positions below reflect vendor-documented capability as at 27 July 2026.
Use the same anonymised data set and the same questions with every vendor, and insist on a live workflow rather than slides.
Score on time taken, number of clicks, whether the answer is traceable to source records, and whether the insight becomes an editable draft without rekeying.
Yes. Safety stock is recalculated daily for every SKU at every location from the 90-day demand standard deviation multiplied by the square root of lead time in days multiplied by 1.645, the z-score for a 95% service level. A product that becomes spiky receives a larger buffer automatically; a product that stabilises receives less, freeing capital.
Through a reorder point combining trend-adjusted forecast demand, configured lead time and statistical safety stock: (trend-adjusted forecast daily demand × lead time in days) + safety stock. When available stock drops below that figure, today is the day to order.
The published calculation uses a 95% service level, the standard for being in stock on nineteen of every twenty demand days. The z-score of 1.645 is stated openly so a buyer can interrogate the assumption rather than inherit an unexplained buffer. A business needing a different service level on a specific range should raise it directly, with the current number in front of it.
A composite score between 0 and 1 combining current availability, forecast demand and demand variability, recalculated daily per SKU per location. Sorting descending produces the day’s purchasing priority list in one action.
Days of cover expresses urgency in days, which is intuitive and easy to explain. Stockout risk expresses it as a composite score that also accounts for how erratic demand is, so a product with volatile demand can rank higher than a product with slightly fewer days of cover but very stable demand.
The data lake records how many days in each rolling window the product had zero available stock, separately from demand itself. A product with high zero-stock days and low recorded demand is a product you had nothing to sell, not a product nobody wanted. Those two situations require opposite purchasing responses.
Safety stock returns null and the AI flags the product for setup rather than substituting a guess. A silently assumed lead time produces a confident-looking reorder point that is wrong, which is worse than no number at all.
Yes. It can produce the ranked list and then create the purchase orders directly, showing the full workings first. Nothing is committed until you approve it.
Yes. All four signals are available conversationally and via API, including for Power BI, so a morning dashboard and a conversation return identical figures because both read the same pre-computed fields.
All our sales, support and development team are located in Hereford and Cheltenham in the U.K. Please submit the contact form and we will contact you within the same business day.