413. Safety Stock

The portion of inventory held as a buffer against uncertainty — in demand, in lead time, or both. Distinguished from cycle stock (which exists due to batching, not uncertainty).

SS=𝑧𝜎LD

where 𝜎LD is the standard deviation of lead-time demand and 𝑧 is the quantile of the standard normal at the desired service level.

413.0.1. Why this form

The reorder point under (Q, r) is set such that the probability of running out during lead time equals the target stockout probability 𝛼:

𝑃(𝐷𝐿>𝑟)=𝛼

For normally distributed lead-time demand 𝐷𝐿𝒩︀(𝜇𝐿,𝜎LD2):

𝑟=𝜇𝐿+𝑧𝜎LD,𝑧=Φ1(1𝛼)

Decompose:

413.0.2. Lead-time demand variance — the four cases

The form of 𝜎LD2 depends on which of demand and lead time are random. Combining via the law of total variance:

𝜎LD2=𝐸[𝐿]𝜎𝑑2+(𝐸[𝑑])2𝜎𝐿2

where 𝜎𝑑 = std of per-period demand, 𝜎𝐿 = std of lead time, 𝐸[𝑑]=|𝑑| and 𝐸[𝐿]=|𝐿|.

The four classical cases:

Case𝜎LDWhere the variance comes from
Constant 𝑑, constant 𝐿0No variance — basic EOQ regime, no safety stock needed
Variable 𝑑, constant 𝐿𝐿𝜎𝑑Demand variability over 𝐿 periods
Constant 𝑑, variable 𝐿|𝑑|𝜎𝐿Lead time variability scales the deterministic demand
Variable 𝑑, variable 𝐿𝐿𝜎𝑑2+|𝑑|2𝜎𝐿2Both contribute

The combined formula reduces to the special cases when one variance is zero. The |𝑑|2 factor in the lead-time term often dominates when both are random — small percentage variance in lead time can produce huge swings in lead-time demand.

413.0.3. Safety stock = 𝑧𝜎LD

Once you know 𝜎LD, the safety stock formula is:

SS=𝑧𝜎LD

Choose 𝑧 from the desired service level (see [cycle_service_level.typ](../service_levels/cycle_service_level.typ) and [fill_rate.typ](../service_levels/fill_rate.typ)).

413.0.4. Risk pooling reduces safety stock

When inventory is held centrally rather than distributed across 𝑛 independent locations:

Total safety stock falls by factor 𝑛 under centralization (assuming independent demands across locations). This is the square-root law of inventory aggregation.

Example

Given (compare four scenarios):

  • |𝑑|=33 units / day
  • |𝐿|=14 days
  • 𝑧=1.65 (95% CSL)

Case 1 — constant demand, constant lead time

No variance. Safety stock = 0. Just hold |𝑑||𝐿|=462 units of cycle/pipeline; no buffer.

Case 2 — variable demand, constant lead time (𝜎𝑑=5, 𝜎𝐿=0)

𝜎LD=𝐿𝜎𝑑=14518.7SS=𝑧𝜎LD=1.6518.731units

Case 3 — constant demand, variable lead time (𝜎𝑑=0, 𝜎𝐿=3 days)

𝜎LD=|𝑑|𝜎𝐿=333=99SS=1.6599163units

Lead time variability dominates demand variability in this case — same 𝑧, same demand, but 5× higher safety stock. Because |𝑑|=33 is much larger than 𝜎𝑑=5, the multiplier |𝑑| amplifies 𝜎𝐿.

Case 4 — variable demand AND variable lead time

𝜎LD=𝐿𝜎𝑑2+|𝑑|2𝜎𝐿2=1425+3329=350+9801=10151100.8SS=1.65100.8166units

Combined std is barely larger than the lead-time-only case — when one source of variance dominates, the other contributes little. Reducing the bigger one (lead-time variability here) gives the biggest safety-stock savings.

Practical takeaway

  • Reduce demand-side uncertainty → modest safety-stock savings.
  • Reduce lead-time uncertainty → often dramatic savings (because |𝑑| multiplies 𝜎𝐿).
  • Centralize inventory → safety stock shrinks by 𝑛 (risk pooling).