Issue #8 · Decision Framework

The Safety Stock Decision Matrix

When to hold full safety stock, minimal safety stock, or zero safety stock — a 3-dimensional framework using ABC classification, demand variability (XYZ), and sales frequency. 27 product segments, each with a specific policy.

The Problem: One-Size-Fits-All Safety Stock

Most companies apply a blanket 2-week safety stock policy to every SKU. This is catastrophically wasteful. A ₹5 C-class bolt that sells predictably every week does not deserve the same safety stock logic as a ₹50,000 A-class electronic component with erratic demand and 6-week lead times.

The solution is a 3-dimensional segmentation that classifies every product by its revenue importance (ABC), demand predictability (XYZ), and how often it actually sells (Frequency) — then assigns a specific safety stock policy to each combination.

Dimension 1: ABC — Revenue Classification

ABC analysis ranks products by their contribution to total revenue. The Pareto principle applies: a small number of SKUs generate the majority of revenue.

ABC Classification Rules A = Top 80% of cumulative revenue (typically ~20% of SKUs) B = Next 15% of cumulative revenue (typically ~30% of SKUs) C = Bottom 5% of cumulative revenue (typically ~50% of SKUs) Excel: Sort by revenue DESC → CUMSUM → assign class
A
Top 80% Rev · ~20% SKUs
B
Next 15% Rev · ~30% SKUs
C
Bottom 5% Rev · ~50% SKUs

Why it matters for safety stock: An A-class stockout loses far more revenue than a C-class stockout. Safety stock investment must be proportional to this impact.

Dimension 2: XYZ — Demand Variability

XYZ classification uses the Coefficient of Variation (CV) to measure how predictable demand is. This directly determines whether statistical safety stock formulas will work.

Coefficient of Variation CV = σ (Std Dev of Demand) / μ (Mean Demand) X: CV < 0.5 — Stable, highly predictable Y: CV 0.5 – 1.0 — Moderate fluctuation, seasonal or trending Z: CV > 1.0 — Erratic, lumpy, or intermittent demand Excel: =STDEV(demand_range) / AVERAGE(demand_range)

Why it matters: X items are easy to forecast — standard safety stock formulas work well. Z items have demand so erratic that statistical formulas break down; they need different approaches entirely (min-max, order-driven, or no safety stock at all).

Dimension 3: Sales Frequency

How often does the product actually sell? A product might have high annual volume but sell only in 3 out of 12 months (seasonal), or it might sell in tiny quantities every single day.

Frequency Classification High: Sales in > 75% of periods (e.g. >9 out of 12 months) Medium: Sales in 25–75% of periods (e.g. 3–9 months) Low: Sales in < 25% of periods (e.g. <3 months — intermittent) Frequency affects replenishment strategy — high frequency items can rely on regular replenishment cycles; low frequency items sit idle consuming working capital.

The 27-Cell Safety Stock Decision Matrix

Combining all three dimensions creates 27 possible segments (3 × 3 × 3). Each segment gets one of four safety stock policies:

🟢 Full SS

SL 95–99.5%

Statistical formula. Z × √(LT×σd² + d̄²×σLT²). Maximum buffer, auto-calculated.

🟡 Moderate SS

SL 85–95%

Reduced Z-score. Simplified formula. Periodic review, not continuous.

🔵 Minimal SS

SL 80–85%

Rule of thumb: 1–2 weeks of average demand. No statistical calculation.

⚫ Zero SS

Make-to-Order

No buffer. Order-driven replenishment. Accept stockout or manage via lead time.

Full Safety Stock Moderate Safety Stock Minimal Safety Stock Zero Safety Stock

Matrix: High Frequency Items (sales in >75% of periods)

ABC ↓ · XYZ →X (CV < 0.5)Y (CV 0.5–1.0)Z (CV > 1.0)
A — Top 80%🟢 FULL SS
SL 97–99% · Z = 1.88–2.33
🟢 FULL SS
SL 95–97% · Z = 1.65–1.88
🟡 MODERATE SS
SL 90–95% · Capped buffer
B — Next 15%🟡 MODERATE SS
SL 90–95% · Z = 1.28–1.65
🟡 MODERATE SS
SL 90% · Periodic review
🔵 MINIMAL SS
1–2 weeks avg demand
C — Bottom 5%⚫ ZERO SS
Replenishment covers it
🔵 MINIMAL SS
1 week avg demand
🔵 MINIMAL SS
Fixed buffer · accept stockout

Matrix: Medium Frequency Items (sales in 25–75% of periods)

ABC ↓ · XYZ →X (CV < 0.5)Y (CV 0.5–1.0)Z (CV > 1.0)
A — Top 80%🟢 FULL SS
SL 95–97% · Seasonal adj
🟡 MODERATE SS
SL 90–95% · Seasonal buffer
🟡 MODERATE SS
Pre-build before season
B — Next 15%🟡 MODERATE SS
SL 90% · Seasonal review
🔵 MINIMAL SS
Pre-season build only
🔵 MINIMAL SS
Min-max rule
C — Bottom 5%⚫ ZERO SS
Order when needed
⚫ ZERO SS
Order when needed
⚫ ZERO SS
Drop or make-to-order

Matrix: Low Frequency Items (sales in <25% of periods)

ABC ↓ · XYZ →X (CV < 0.5)Y (CV 0.5–1.0)Z (CV > 1.0)
A — Top 80%🟡 MODERATE SS
SL 95% · But review quarterly
🟡 MODERATE SS
Customer-committed stock
🔵 MINIMAL SS
Customer order-driven
B — Next 15%🔵 MINIMAL SS
Small buffer · review quarterly
⚫ ZERO SS
Make-to-order
⚫ ZERO SS
Make-to-order
C — Bottom 5%⚫ ZERO SS
Evaluate for discontinuation
⚫ ZERO SS
Discontinue or special-order
⚫ ZERO SS
DISCONTINUE · Dead stock risk

When to Hold FULL Safety Stock

Full safety stock means applying the statistical formula with a high Z-score (1.65–2.58), covering both demand and lead time variability:

Full Safety Stock Formula SS = Z × √(LT × σd² + d̄² × σLT²) Use for: AX-High, AY-High, AX-Medium combinations These are your revenue drivers + predictable enough to forecast + sell frequently
AX-HIGH FREQUENCY

Paracetamol 500mg (Pharma)

Top revenue SKU. CV = 0.3. Sells every day. Full SS at 99% service level. Stockout = lost patients + regulatory risk.

AY-HIGH FREQUENCY

Premium Basmati Rice 5kg (FMCG)

Top 10 revenue. CV = 0.7 (festival spikes). Sells 11 out of 12 months. Full SS at 95% + seasonal buffer for Diwali/Ramadan.

When to Hold MINIMAL Safety Stock

Minimal safety stock uses a simple rule of thumb — typically 1–2 weeks of average demand — instead of statistical formulas. This applies when either the item isn't important enough (C-class) or demand is too erratic (Z-variability) for formulas to be reliable.

Minimal Safety Stock (Rule of Thumb) SS = 1 to 2 × Average Weekly Demand No Z-score needed. No standard deviation calculation. Just a buffer. Use for: BZ-High, CY-High, CZ-High, BY-Medium, BZ-Medium, AZ-Low
BZ-HIGH FREQUENCY

Decorative Cabinet Handles (Furniture)

B-class revenue. Erratic demand (CV=1.3) driven by project orders. Sells often but in lumpy quantities. Keep 2-week buffer, accept occasional stockout.

AZ-LOW FREQUENCY

Industrial Pump Impeller (MRO)

A-class when it sells. But sells only 2 months/year. CV=1.8. Keep small customer-committed stock. Too erratic for statistical SS.

When to Hold ZERO Safety Stock

Zero safety stock means the product is replenished on-demand with no buffer inventory. This is appropriate when:

Zero Safety Stock Criteria 1. CX-High: Low revenue + stable demand + frequent replenishment = no buffer needed 2. CX-Medium / CY-Medium: Low revenue + infrequent sales = order when needed 3. CZ-Medium / CZ-Low: Low revenue + erratic + infrequent = DISCONTINUE 4. BY-Low / BZ-Low: Moderate revenue but sells so rarely → make-to-order Also: products at end-of-life, items with guaranteed same-day supply, products where stockout cost ≈ $0
CX-HIGH FREQUENCY

M8 Hex Bolts (Hardware)

Bottom 5% revenue. Sells every day. CV = 0.2. Supplier delivers next day. Daily replenishment covers demand. Zero safety stock — the replenishment cycle IS the buffer.

CZ-LOW FREQUENCY

Legacy Printer Cartridge (IT)

Negligible revenue. CV = 2.1. Sells 1 out of 12 months. Discontinue. If a customer orders, special-order from supplier. Holding stock = dead capital.

Implementation: The 5-Step Playbook

Step 1: Classify Run ABC on last 12 months revenue Calculate CV for each SKU → assign XYZ Count periods with >0 sales → assign Frequency (H/M/L)
Step 2: Assign Policy Map each SKU to its 27-cell position (e.g. AY-High) Assign safety stock policy: Full / Moderate / Minimal / Zero
Step 3: Calculate Full SS → statistical formula with assigned Z-score Moderate SS → formula with lower Z-score + cap Minimal SS → 1–2 × weekly avg demand Zero SS → set SS = 0, enable MTO or drop
Step 4: Review Cadence A items → Monthly review B items → Quarterly review C items → Semi-annual review + automatic discontinuation triggers
Step 5: Monitor Migration SKUs migrate between segments as demand patterns change Track: A→B demotion, C→A promotion, frequency shifts Automate reclassification quarterly with Python or Excel macros
The goal is not to minimise safety stock everywhere — it's to invest safety stock where it earns the highest return and remove it where it just ties up capital.

Impact: What This Framework Delivers

15–30%
Inventory Reduction
+2–4pp
Fill Rate Improvement
20–40%
Working Capital Freed

The counter-intuitive result: by removing safety stock from C-class items and increasing it for A-class items, you simultaneously reduce total inventory AND improve fill rates. This is because the freed-up capital is redirected to where it prevents the most costly stockouts.

CERTIFICATION PROGRAM
⚙️ CSCOP — Supply Chain Optimisation Professional
12 weeks · Python · LP, MIP, VRP · Amazon, P&G, DHL case studies · Capstone + certification
Explore CSCOP → ⬇️ Brochure