Sign in

Blog · Procurement and supply chain · Supply chain

Inventory safety stock formula: inputs and example

Safety stock covers uncertainty beyond expected replenishment demand. Work through demand and lead-time inputs, compare service targets, and reconcile the buffer to a reorder point.

The short answerThe inventory safety stock formula is the service factor multiplied by the standard deviation of demand during replenishment lead time. With independent daily demand and variable lead time, use z × SQRT(L × demand variance + average daily demand squared × lead-time variance). Keep time units consistent and choose an explicit cycle service target.

The inventory safety stock formula converts demand and replenishment uncertainty into an extra quantity to hold. It needs a stated service target, consistent time units, and a clear replenishment policy. Expected demand belongs in the replenishment plan; safety stock covers the uncertainty around it.

Choose the formula that matches the uncertainty

For continuous review with fixed replenishment lead time and independent daily demand:

Safety stock = z × daily demand standard deviation × SQRT(lead time in days)

When lead time also varies, a common approximation is:

Safety stock = z × SQRT(L × σd² + d² × σL²)

Reorder point = d × L + safety stock

Here, d is average daily demand, σd is its standard deviation, L is average lead time in days, σL is the standard deviation of lead time, and z is the service factor. Stanford's supply-chain lecture notes set out the mean and variance of lead-time demand and distinguish cycle service from the share of demand filled.

The combined expression assumes stable, independent demand increments and independence between demand and lead time. Using a normal service factor also assumes the lead-time-demand distribution is reasonably approximated by a normal distribution. Intermittent demand, shared disruptions, or orders arriving out of sequence require closer examination of actual replenishment experience.

A cycle service target means the intended probability of avoiding a shortage during a replenishment cycle. It is not a promise to fill the same percentage of units immediately. Peter King's safety-stock article, hosted by MIT, explains this distinction and why predictable seasonality should be separated from random variability.

Start with demand rows and completed receipts

An Ohio maintenance-parts distributor is reviewing one SKU at one warehouse. The following deliberately short lists make the arithmetic reproducible; they are insufficient to establish a production stocking policy. Demand days and completed replenishments are separate observations, not matched pairs.

Demand day Requested units Deviation from mean Squared deviation
D1 80 -20 400
D2 80 -20 400
D3 100 0 0
D4 120 20 400
D5 120 20 400
Total 500 0 1,600

Mean daily demand is 500 / 5 = 100 units. Sample variance is 1,600 / (5 - 1) = 400, so daily demand standard deviation is SQRT(400) = 20 units.

Completed replenishment Lead time in working days Deviation from mean Squared deviation
R1 4 -1 1
R2 5 0 0
R3 5 0 0
R4 5 0 0
R5 6 1 1
Total 25 0 2

Mean lead time is 25 / 5 = 5 working days. Sample variance is 2 / (5 - 1) = 0.5 days squared; standard deviation is approximately 0.707107 days. Demand is also measured per working day, so the calendars agree.

In the underlying exports, retain SKU, site, requested quantity, demand date, purchase-order line, release date, and usable receipt date. Match replenishment start and finish consistently, including receiving or inspection delays when stock remains unusable. The supplier lead-time variability guide covers that receipt analysis separately.

Include confirmed zero-demand working days. Distinguish closures from missing records and unavailable stock from absent demand; an inferred out-of-stock is evidence to investigate before accepting the sales series.

Work the buffer and prove the reorder point

Management chooses an illustrative 95% cycle service target. The normal service factor is approximately 1.644854. Use full precision in the calculation, display intermediate quantities to six decimals where needed, and round the final buffer upward to whole units.

Step Calculation Result
Demand contribution to variance 5 × 20² 2,000
Lead-time contribution to variance 100² × 0.5 5,000
Total lead-time-demand variance 2,000 + 5,000 7,000
Lead-time-demand standard deviation SQRT(7,000) 83.666003 units
Unrounded buffer 1.644854 × 83.666003, using full precision 137.618328 units
Safety stock Round buffer upward 138 units
Expected lead-time demand 100 × 5 500 units
Reorder point 500 + 138 638 units

The identity is 638 - 500 = 138: subtract expected replenishment demand from the reorder point and recover the buffer. Squaring the unrounded standard deviation must recover 7,000, the sum of the variance contributions. Both checks catch a missing square or an accidental addition of standard deviations.

Under continuous review, use inventory position to assess the reorder trigger: on-hand stock plus eligible open replenishment minus outstanding demand. Define outstanding demand once so allocated orders and backorders are not deducted twice. The base-stock inventory method addresses target replenishment policies; safety stock is only the uncertainty component.

Rebuild it in Excel

Place the demand observations in B2:B6 and the lead-time observations in E2:E6. Set H2 to the service target, entered as 95%. The whole-unit buffer is:

=ROUNDUP(NORM.S.INV(H2)*SQRT(AVERAGE(E2:E6)*STDEV.S(B2:B6)^2+AVERAGE(B2:B6)^2*STDEV.S(E2:E6)^2),0)

If that buffer is in H3, calculate the reorder point with:

=AVERAGE(B2:B6)*AVERAGE(E2:E6)+H3

Microsoft documents STDEV.S as a sample standard deviation using the n - 1 method. Its NORM.S.INV documentation defines the inverse standard normal cumulative distribution, which supplies z. Keep numeric zeros in the ranges and resolve missing observations explicitly.

Covirage is not affiliated with Microsoft.

Compare assumptions before buying more stock

Use the same demand rows and an assumed unit acquisition cost of $12.50 throughout. Only the lead-time-variability assumption or the service target changes below.

Scenario Service factor, displayed Lead-time-demand variance Rounded buffer, units Reorder point, units Buffer value (USD)
Fixed lead time, 95% target 1.644854 2,000 74 574 925.00
Observed lead-time variability, 95% target 1.644854 7,000 138 638 1,725.00
Observed lead-time variability, 99% target 2.326348 7,000 195 695 2,437.50

The fixed-time calculation is ROUNDUP(1.644854 × SQRT(2,000), 0) = 74 using full precision. Moving to observed lead-time variability adds 138 - 74 = 64 units, or 64 × $12.50 = $800. Raising the target next adds 195 - 138 = 57 units, or $712.50.

Buffer value is quantity multiplied by unit cost, not annual carrying expense. Procurement owns the receipt assumptions, planning owns the demand series, and commercial and finance leaders should agree on service priorities and cash exposure. Historical days inventory outstanding measures a different question: how much inventory the business has carried relative to cost of sales.

Where it goes wrong

  • Mixing calendars. Daily working-day demand and calendar-day lead time do not share a unit. Rebuild both on one calendar.
  • Applying a cycle target to fill rate. A normal percentile does not directly specify the share of units supplied immediately. Agree on the measure first.
  • Treating shortages as weak demand. Shipped quantities omit demand the warehouse could not serve. Retain backorders and other evidence.
  • Using the fixed-time formula despite variable receipts. That removes the lead-time variance contribution even when the receiving record shows it matters.
  • Ignoring the review interval. Periodic ordering must protect demand until the next review plus replenishment. Do not reuse a continuous-review buffer unchanged.

Compare safety stock on your own file in Covirage

Bring demand history, purchase-order and receipt records, and an inventory export; Covirage maps the columns, and its tools compute and check the supplied SKU and site scenarios. The external AI model explains the results with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data.

See Covirage for supply chain teams for the supporting business context.

Questions people ask

Is safety stock the same as a reorder point?

Safety stock is the uncertainty buffer. A reorder point adds expected demand during replenishment to that buffer. Under continuous review, compare the reorder point with inventory position, including eligible open supply and outstanding demand, rather than treating physical shelf stock as the entire position.

Does a higher service target always require more safety stock?

For unchanged demand and lead-time uncertainty, a higher normal-distribution service factor produces a larger buffer. The target should reflect shortage consequences and carrying capacity. A target based on cycles without shortages is different from a target based on units fulfilled immediately.

Can I use sales history to calculate safety stock?

Sales history is useful when it reflects demand. During a stockout, shipped sales can fall because inventory was unavailable. Keep backorders, lost-demand evidence, promotions, and closures visible so the calculation does not interpret constrained sales as a permanent drop in demand.

How often should a company recalculate safety stock?

Review inputs when demand patterns, supplier performance, service commitments, or replenishment rules change. Use a regular planning review as well. Preserve the prior assumptions and compare subsequent shortage experience with the chosen target before increasing or reducing the buffer.