Supply Chain & InventoryFree referencePDF, Excel, Word export

Service Level Z-Score and Loss Function Table

Every safety stock formula starts with a z-score for the service level you want. This table gives the z-score and the loss function value, so you can also convert between cycle service level and fill rate without a spreadsheet.

Download:
Cycle service levelZ scoreLoss function L(z)Typical use
50%
0.0000
0.3989
No safety stock, order at expected demand
60%
0.2533
0.2850
Very low priority parts
70%
0.5244
0.1904
Low value, easily substituted items
75%
0.6745
0.1492
Low criticality C items
80%
0.8416
0.1116
Common for C items
85%
1.0364
0.0777
Moderate service target
88%
1.1750
0.0590
Between B and C targets
90%
1.2816
0.0473
Common for B items
92%
1.4051
0.0363
Higher B items
93%
1.4758
0.0310
Higher B items
94%
1.5548
0.0258
Between B and A targets
95%
1.6449
0.0209
Common default for A items
96%
1.7507
0.0161
Important A items
97%
1.8808
0.0116
Important A items
98%
2.0537
0.0073
Critical items
99%
2.3263
0.0034
Critical or line-down parts
99.5%
2.5758
0.0016
Very critical parts, check cost of buffer
99.7%
2.7478
0.0009
Rarely justified, check carrying cost
99.9%
3.0902
0.0003
Extreme target, buffer grows quickly

Safety stock = z x sigma_L, where sigma_L is the standard deviation of demand over the lead time (or review plus lead time). Expected units short per cycle = sigma_L x L(z). Fill rate = 1 - sigma_L x L(z) / Q for order quantity Q. Values assume normally distributed demand and are rounded to four decimals.

Set service levels by item class

Optional: an expert review of how to tie service targets to ABC and XYZ classes and compare them with your ERP values.

Optional. The tool and every export work without this. No spam.

How to use the table

Search for your target service level and read the z-score. Multiply by the standard deviation of demand over the lead time to get safety stock. To estimate fill rate, take the loss function value L(z) in the same row, multiply by that standard deviation to get expected units short per cycle, divide by order quantity and subtract from one. Use the notes column as a prompt for choosing targets by class, not as a rule.

Cycle service level versus fill rate

Cycle service level is the probability of getting through a replenishment cycle without a stockout. Fill rate is the share of demand served from stock. A 95% cycle service level on an item ordered in large lots can mean a fill rate well above 99%, because stockouts only occur at the end of the cycle and are small relative to the lot. Mixing the two leads to buffers that are too large. State which one your policy uses.

  • Cycle service level uses z
  • Fill rate uses the loss function L(z)
  • Larger order quantities raise fill rate at the same z

Worked example

Demand over the lead time has a standard deviation of 120 units and the order quantity is 1,000. At a 95% cycle service level, z is 1.6449 and safety stock is about 197 units. L(z) is 0.0209, so expected shortage per cycle is 120 x 0.0209, about 2.5 units, and the fill rate is 1 - 2.5 / 1,000, about 99.75%. Moving to 99% adds 77 units of safety stock for a gain of about 0.2 points of fill rate, a figure worth weighing against carrying cost.

Limits of the table

The values assume a normal distribution, which suits steady demand with a reasonably high average. For low volume, intermittent or highly skewed demand, a normal approximation can understate the risk of a long stockout or give negative demand tails. In those cases use a Poisson, negative binomial or empirical method and treat these numbers as a rough starting point only.

Frequently Asked Questions

What z-score do I use for 95% service level?

Use 1.6449 for a one-sided 95% cycle service level, usually rounded to 1.65. This is the value most inventory formulas need, not the 1.96 used for two-sided confidence intervals.

Why does 99.9% cost so much more than 99%?

Safety stock rises with z, and z grows faster as you approach 100%. Going from 99% to 99.9% moves z from 2.33 to 3.09, about 33% more buffer for a tiny gain in service. Weigh it against the cost of a stockout.

What is the loss function used for?

It gives the expected shortage per replenishment cycle in standard deviations. Multiplying by the demand standard deviation yields expected units short, which feeds fill rate and stockout cost estimates.

Can I use these values for monthly forecast error?

Yes, if you use the standard deviation of forecast error over the lead time plus review period, not the standard deviation of demand itself. Make sure the units and time basis match.

If you want service targets set by item class and the resulting safety stock checked against what is loaded in your ERP, Netray can build that review over your ERP data, read-only.