Safety stock: variance beats the average lead time
Two suppliers both quote 30 days. One of them quietly costs you triple the .
- quoted lead time, both suppliers30 days
- extra working capital$50,946
- yearly cost to hold it$11,208
Shape the comparison
As quotedTry a scenario
The identical number on both quotes is the trap.
28 to 32 days in practice
12 to 48 days in practice
The share of demand cycles you intend to cover from stock.
Demand and cost100 units/day · $40/unit · 22% holding
How steady is demand
Steady 5%, Normal 15%, Lumpy 35% daily variation.
Shown in any single currency; the arithmetic is identical.
Capital, storage, insurance and obsolescence, all in.
Same quote, different arrival windows
30 day quoteWhat it costs to cover them
95.0% serviceThe total inventory ratio is 1.396418× now and 1.703785× at 99.9% service.
The demand is identical on both, and that is what the single number hides.
Variance adds, so the split above is a split of variance carried back into units. The two figures sum to the buffer exactly; they are not two buffers you could hold separately.
| Measure | Supplier A | Supplier B |
|---|---|---|
| Safety stock, days of cover | 2.1 days | 15 days |
| Safety stock, units | 213 units | 1,487 units |
| Total inventory to fund | $128,515 | $179,461 |
| Annual cost of holding it | $28,273 | $39,481 |
Days of cover you have to hold
95.0% service12 cyclesOne buffer, two outcomes
Set the common buffer from
Coverage is recalculated with the selected buffer held by both suppliers.
The same 213 unit buffer covers 95.0% of Supplier A cycles and 59.3% of Supplier B cycles. Across 12 cycles, Supplier Bneeds more buffer at least once in 99.8% of cases.
Repeated cycles make a small gap in each cycle easier to see.
| Measure | Supplier A | Supplier B |
|---|---|---|
| Common buffer held | 213 units | 213 units |
| Coverage in one cycle | 95.0% | 59.3% |
| At least one cycle needs more, across 12 | 46.0% | 99.8% |
Coverage is the modeled chance that demand during lead time stays within pipeline stock plus this safety buffer. Replenishment cycles are treated as independent.
0.5% price reductionPut price against variance
Try a price reduction
At 0.5%, Supplier B's price reduction is worth $7,497 a year in this narrow model. Its wider spread adds $11,208 in annual carrying cost at the original price, so $3,711 remains.
Applied to annual purchase spend and to the value of inventory held.
| Measure | Annual amount |
|---|---|
| Value of price reduction | $7,497 |
| Variance carrying gap before price changes | $11,208 |
| Break even price reduction in this model | 0.747% |
| Gap left after price reduction | $3,711 |
This comparison counts annual purchase spend and carrying cost only. It describes one price and inventory tradeoff. It does not settle a supplier decision.
The same availability, two shapes
Both suppliers are available 95% of the time and both lose the same 1.5 days from an average lead time. The selected short and often scenario stops for 1 day at a time, leaving a spread of 1.2 days and 293.1 units of safety stock. The other long and rarely scenario leaves 5.5 days and 925.7 units.
| Measure | Selected shape | Other shape |
|---|---|---|
| Outage pattern | short and often | long and rarely |
| Length of one stoppage | 1 day | 20 days |
| Outage spread | 1.2 days | 5.5 days |
| Safety stock | 293.1 units | 925.7 units |
How the downtime arrives
Availability is held at the figure you set, and only the length of one stoppage moves. Mean downtime does not change. The spread does, in proportion to the length, and the buffer follows the spread.
What buyers negotiate
A quoted lead time is a single number and it is the number both sides argue about. Variance never appears on the quote, is rarely written into the contract, and is paid for entirely by the buyer: in stock, in expediting, in the orders that go out incomplete.
The figure worth asking for is not the quoted lead time. It is the last twenty four delivery dates against the dates that were promised. A supplier who can produce that list in a day is telling you something about their operation before you read it.
Here is the maths
- Model version
- 1.0
The formula, in words
- A quoted lead time is a mean; what matters for stock is how far actual deliveries scatter around it. The ± days sliders state that scatter as a range, read as ±2 standard deviations, so a ± 18 days supplier has a standard deviation of 9.
- Safety stock covers the combined uncertainty of demand during the lead time and of the lead time itself.
- is the number of standard deviations needed to cover a given share of cycles. It comes from the inverse normal distribution. This page uses Acklam's rational approximation, accurate to about one part in a billion across the range used here.
- Pipeline stock is what is in transit at any moment: daily demand times lead time. Because both suppliers quote the same lead time, their pipeline is identical, which is why the total inventory ratio starts at 1.0 and only opens up as service level rises.
- The common buffer experiment holds the same safety units for both suppliers. Dividing that buffer by each supplier's combined uncertainty gives a value, and the normal distribution turns that z value into coverage for one replenishment cycle.
- The price experiment compares annual purchase spend plus annual carrying cost. It sets the Break even preset where the wider supplier's discounted annual model equals the narrower supplier's annual model. It leaves quality, capacity, payment terms and disruption consequences outside the model.
- The contribution view separates the demand variance term from the lead time variance term, then carries each share back into units. The outage experiment adds the variance created by one outage shape to the lead time variance before calculating safety stock.
A worked example
Now hold Supplier A's 213 unit buffer for both suppliers. It gives A 95.0% coverage in one cycle, but only 59.3% for B because the same buffer is divided by B's much larger combined uncertainty. Across 12 independent cycles, the chance that at least one cycle needs more buffer is 46.0% for A and 99.8% for B.
Annual purchase spend plus carrying cost is about $1,488,273 for A and $1,499,481 for B at the quoted unit price. The $11,208 gap needs a 0.747% reduction from B to offset it in this narrow model. At 0.5%, the reduction is worth about $7,497 and leaves $3,711 of the variance carrying gap.
Supplier A's 213 unit buffer splits into 85.8 units from demand and 127.1 units from lead time. Supplier B's 1,486.5 unit buffer splits into 12.3 and 1,474.2 units. At 95% availability, one day outages add 1.5 days squared of variance and produce a 1.22 day outage spread, a 178.2 unit combined spread and 293.1 safety units for A. Twenty day outages add 30 days squared, producing 5.48 days, 562.8 units and 925.7 safety units.
Two standalone buffers form a right triangle
Within this page's independent-variation model, calculate one buffer with lead-time variation set to 0, and a second with demand variation set to 0. The combined safety stock is the hypotenuse of those two buffers.
The subscripts D and L name the demand-only and lead-time-only buffers. S is the combined safety stock.
At the opening Supplier A values, the variance terms are 6,750 and 10,000. The standalone buffers are 135.138515 and 164.485363 units; their hypotenuse is 212.879902 units. Their arithmetic sum is 299.623878 units.
The contribution bar uses variance-share attribution: 85.787423 units to demand and 127.092479 to lead time, adding to 212.879902. The standalone buffers answer the separate question of how much is needed when one source of variation is absent.
- Model version
- 1.0.0
Why the safety stock ratio alone does not move
appears in both suppliers' safety stock, so it cancels in . That ratio is fixed at about here whatever the service level. The number that genuinely diverges is total inventory, because the shared pipeline term dilutes the gap at low service levels and stops diluting it as grows. Chart 2 plots that.
values for the service levels
| Service level | z | Service level | z |
|---|---|---|---|
| 90% | 1.2816 | 99% | 2.3263 |
| 95% | 1.6449 | 99.5% | 2.5758 |
| 97% | 1.8808 | 99.8% | 2.8782 |
| 98% | 2.0537 | 99.9% | 3.0902 |
What this does not model
Order batching, minimum order quantities, review periods, lead times that are not normal (the real shape is usually skewed to the right with a fat tail), correlation between demand and lead time, supplier buffers you are already paying for inside the unit price, and the fact that a service level is a policy choice, not a property of the supplier. The repeated cycle view also assumes independent replenishments. The price view omits quality, capacity, payment terms, switching costs and the cost of an actual shortage. The outage view reduces downtime to an added variance term. It does not model repair queues, outage clustering, recovery output, dependencies between suppliers or the shape of the tail beyond the selected outage length.
It assumes demand and lead time are independent and roughly normally distributed, which real lead times usually are not, and it ignores batching, minimum order quantities and review periods. Safety stock policy is set against your own service commitments and your own history. This page describes the mechanics behind that decision and settles none of it.
Related
- Correlation: every estimate honest and the sum still lateEight serial tasks estimated at 8, 10 and 16 days sum to 80. Independent, four runs in five finish inside the 96 day allowance. Fully correlated they do not, and no estimate changed.Interactive lesson · 3 min
- Factory shutdowns: the closures your schedule assumes are openChinese New Year, Eid and Golden Week close the factories your schedule assumes are open. This puts them back in the date.Calculator · 1 min