Safety Stock Formula Explained
Safety stock is the buffer that absorbs demand variability during replenishment lead time. This guide explains the statistical formula used by our calculator, what each input means and how to apply it to a real SKU.
Run the numbers
Enter average daily demand, demand standard deviation, lead time and target service level to get safety stock and reorder point instantly.
Open the Safety Stock CalculatorWhat Safety Stock Actually Protects Against
A replenishment order covers expected demand during lead time. Safety stock exists for the demand you did not expect: the week the forecast was low, the promotion that ran hot, the order that arrived a day late. It buys a chosen probability of not running out — never certainty, which is why the target service level is a commercial decision rather than a technical one.
The Formula
SS = Z × σd × √L
- SS — safety stock in units.
- Z — service-level factor from the standard normal distribution.
- σd — standard deviation of demand per period (usually per day).
- L — lead time in the same periods as σd.
This is the fixed-lead-time model implemented by the Safety Stock Calculator. It assumes demand per period is roughly normally distributed and independent between periods, and that lead time is stable.
Service Level and Z
- 90% service level → Z = 1.28
- 95% service level → Z = 1.65
- 97.5% service level → Z = 1.96
- 99% service level → Z = 2.33
Note the shape of that list: moving from 95% to 99% raises Z by about 41%, and safety stock rises in the same proportion. Setting every SKU to 99% is how inventory budgets are quietly destroyed; reserve the highest service levels for the SKUs where a stockout is genuinely expensive.
Demand Variability (σd)
Calculate σd from actual demand history at the same granularity you will use for lead time — daily demand for a lead time in days. Use a period long enough to be representative but short enough to reflect current behaviour, and exclude one-off events you can explain and would not plan for again. If you strip out genuine recurring seasonality, calculate σd separately per season instead.
Lead Time (L)
Use the full replenishment lead time your operation actually experiences: order processing, supplier production, transit, customs where relevant, and inbound receiving and putaway. The clock ends when stock is available to pick, not when the truck arrives.
Why √L and Not L
Daily demands are treated as independent random variables. Variances add, so over L days the variance is L × σd² and the standard deviation is σd × √L. For a 16-day lead time the multiplier is 4, not 16 — using L directly would overstate safety stock four-fold in this case.
Worked Example
A single SKU in a regional distribution centre:
- Average daily demand: 400 units
- Standard deviation of daily demand: 90 units
- Lead time: 9 days
- Target cycle service level: 95% → Z = 1.65
√L = √9 = 3.
SS = 1.65 × 90 × 3 = 445.5 → 446 units.
Lead-time demand = 400 × 9 = 3,600 units.
Reorder point = 3,600 + 446 = 4,046 units.
Raising the target to 99% (Z = 2.33) increases safety stock to 2.33 × 90 × 3 ≈ 629 units — roughly 41% more inventory for four percentage points of service. That comparison, not the base figure, is usually the useful output of the exercise.
Variable Lead Time
When supplier lead time is itself unreliable, the fixed-lead-time formula understates the buffer. The combined model is:
SS = Z × √(L × σd² + d² × σL²)
where d is average demand per period and σL is the standard deviation of lead time. In many supply chains the second term dominates — reducing lead-time variability then cuts inventory faster than any forecasting improvement.
From Units to Warehouse Space
Safety stock is inventory that must be stored. Once you have unit quantities, the Pallet Position Calculator converts them into pallet positions and the Storage Capacity Calculator checks that the building can hold the result at a realistic occupancy.
Practical Cautions
- Cycle service level is the probability of not stocking out in a cycle — it is not fill rate.
- Highly intermittent or lumpy demand breaks the normality assumption; use a Poisson or bootstrap approach instead.
- Safety stock does not compensate for a biased forecast — fix the bias first.
- Recalculate when lead time changes; it moves safety stock through the √L term immediately.
Related Pages
- Safety Stock Calculator — safety stock and reorder point
- Reorder Point Formula
- Pallet Position Calculator — turn stock levels into pallet positions
- Storage Capacity Calculator
Frequently Asked Questions
- What is the safety stock formula?
- For a fixed lead time, safety stock = Z × σd × √L, where Z is the service-level factor, σd is the standard deviation of demand per period and L is the lead time expressed in the same periods.
- What Z-score should I use?
- Z corresponds to the cycle service level you target: 1.28 for 90%, 1.65 for 95%, 1.96 for 97.5% and 2.33 for 99%. Higher service levels cost disproportionately more stock because Z rises faster than the service level does.
- Why is lead time under a square root?
- Because the variances of independent daily demands add, not their standard deviations. Over L days the variance is L × σd², so the standard deviation is σd × √L. Multiplying σd by L instead of √L substantially overstates safety stock.
- Does this formula handle variable lead time?
- No. It assumes lead time is fixed and only demand varies. When lead time itself varies, the combined formula SS = Z × √(L × σd² + d² × σL²) is used, where σL is the standard deviation of lead time and d is average demand per period.
- How often should safety stock be recalculated?
- Whenever the inputs move: a change in supplier lead time, a shift in demand variability, a seasonal transition or a change in target service level. Many operations review it monthly and recalculate fully each quarter.