Key takeaways
- Safety stock has to cover two uncertainties over the whole time an order must last: demand, and the supplier's lead time.
- A buffer set as a fixed share of the lead time is too thin for nearby suppliers ordered once a week, because it ignores the wait until the next order day.
- An erratic supplier can double the safety stock for the same product at the same service level.
- Measure lead times from your own receipts: planned and contracted lead times systematically understate real ones.
- Supplier order days, measured lead times and minimum orders are the data that decide whether a buffer formula works at all.
Safety stock is the part of an order that is not expected to sell. It is there because demand and deliveries vary, and its size decides most of the trade between empty shelves and money tied up in stock. Many tools size it with a single factor applied to every product and every supplier. That is convenient, and for a store chain with suppliers both around the corner and across the sea it is usually wrong.
1. What safety stock has to cover
An order placed today has to last until the next order arrives: the lead time L plus the wait R until the supplier's next order day. Over those L + R days, the safety stock covers two things: the spread of daily demand σ, which adds up over the days, and the spread of the lead time σ_L, which shifts the whole delivery. Together, safety stock = z·√((L + R)σ² + μ²σ_L²), where μ is daily sales and z sets the service level. The reorder point guide shows where it sits in the full order-up-to level.
2. One factor for every supplier
Demand-driven planning (DDMRP) and many tools built on it size the buffer differently: as a factor of expected demand over the lead time alone. The engine in Retail-Bench, the open simulation marql built, used one such factor, 0.5, on every line, and its methodology works out the factor at which that buffer would equal the textbook one1. For a product with typical demand noise at a 95% service level:
| Supplier | Lead time, wait to next order, spread | Factor needed | Factor used |
|---|---|---|---|
| Nearby, ordered once a week | Lead time, wait to next order, spread2 days, 7 days, 1 day | Factor needed3.32 | Factor used0.5 |
| Nearby, ordered twice a week | Lead time, wait to next order, spread3 days, 3 days, 1 day | Factor needed1.24 | Factor used0.5 |
| Importer, ordered once a week | Lead time, wait to next order, spread21 days, 7 days, 4 days | Factor needed0.47 | Factor used0.5 |
One constant is about right for the importer and several times too thin for the nearby supplier ordered weekly, because a buffer scaled to a two-day lead time knows nothing about the seven days until the next order. DDMRP's own guidance lowers the factor as lead times grow, from 61 to 100% for short ones to 20 to 40% for long ones1, but in practice factors are often set by category or fixed outright: one published comparison simply used "a fixed coefficient equal to 0,8" and found the plain reorder point method cheaper in every demand profile it tested6.
3. The erratic supplier
The second term in the formula is the one most often left out. Take a product that sells four units a day with moderate noise, a five-day lead time and weekly orders, at the same 95% service level. Only the supplier's punctuality changes:
Punctual supplier
Supplier that varies by three days
Same product, same service level
Suppliers do differ in exactly this way. In a study of 352 suppliers of one manufacturer, "poorly performing suppliers are associated with more frequent and longer disruptions"4. And reliability is not a fixed property of the supplier: during the pandemic, larger grocery customers imposed stricter on-time-in-full requirements and penalties, and customers without them received less than their purchasing history would have allotted5. A chain's own experience of a supplier is the only measure that applies to it. It also moves: in the US Census Bureau's survey for late September and early October 2026, delivery times from suppliers had lengthened for 12.0% of retail businesses in the previous two weeks and shortened for 7.8%7.
4. Measure lead times from receipts
The lead time in the formula has to be the real one. In a 2025 study of 160,048 purchase orders, one product's lead times ranged from 20 to 170 days, and the planned lead times in the company's system "systematically underestimate actual lead times"; predicting them from the order history instead reached the target service level with roughly 7% less capital3. Retail-Bench takes the same approach: a contender uses the supplier's promised lead time only until it has ten receipts of its own, and estimates the spread from five1.
Each supplier's order days, so the wait to the next order is known
Lead time per delivery: order date to the day the goods were received
Its spread, once there are a handful of receipts
Minimum order quantities and case packs
A buffer per supplier, not per category
Without them, any buffer formula falls back to a guess
5. What the missing data costs
Retail-Bench measured this directly. The same engine, with its buffer computed from the spread of demand and lead time over the full L + R, ran once with each chain's supplier order days, lead-time history and minimums, and once without them2:
Engine without supplier data6.8%
Order days, lead-time history, minimums+61.6 points
Engine with supplier data68.4%
In the simulation, the data was worth more than any change of formula or model. Empty-shelf days matter for the other half of the formula: they understate μ and σ unless they are treated as missing, which the out-of-stocks guide covers.
6. Limitations
The factor table and the bridge come from a simulation, not from measured stores, and from the benchmark's version of 19 September 2026. Two of the supplier studies are from manufacturing rather than retail, and the FTC report covers the pandemic years. The formula assumes demand and lead time vary independently; when shortages and late deliveries come together, it understates the buffer.
How marql handles it
The benchmark changed how marql's replenishment engine computes its buffer: in Retail-Bench, a reorder point built from the spread of demand and lead time over the full L + R is what moved the engine past the textbook formula in all four simulated chains. It needs the supplier data above, so it is held back until a chain's order days and lead-time history are connected.
Sources
- MARQL Retail-Bench (2026). Methodology, sections 7 and 10. retail-bench.marql.one
- MARQL Retail-Bench (2026-09-19). Leaderboard v0.2, canonical worlds (generator v2). retail-bench.marql.one
- Reiners, R., Haubitz, C. B. and Thonemann, U. W. (2025). Lead time prediction for inventory optimization with machine learning. Production and Operations Management, 34(10), 3010-3025. doi.org
- Burkhart, D. and Bode, C. (2024). On supplier resilience: how supplier performance, disruption frequency, and disruption duration are interrelated. Journal of Purchasing and Supply Management, 30, 100921. doi.org
- US Federal Trade Commission (2024-03). Feeding America in a time of crisis: the U.S. grocery supply chain and the COVID-19 pandemic. Staff report. PDF
- Marchi, B., Ferretti, I. and Zanoni, S. (2023). Requirements planning in the new normal: comparison between reorder point method and DDMRP. APMS 2023, IFIP AICT 691, 750-764. doi.org
- US Census Bureau (2026). Business Trends and Outlook Survey, national estimates by sector: supplier delivery times, retail trade. census.gov
TopicsSafety stock, Lead time variability, Supplier reliability, Store replenishment