# Critical Spare Stockout Risk Calculator (Poisson)

> Source: https://netray.co/tools/critical-spare-poisson-stockout-risk-calculator
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Decide how many slow-moving critical spares to hold by comparing stockout risk and cost for each stock level.

## Category

maintenance

## Industry

Manufacturing

## Audience

- Maintenance manager
- Storeroom planner
- Materials planner

## Tool

**Kind:** calculator

**Currency:** $

**Inputs:**

#### Annual demand

**Key:** demand

**Type:** number

**Default:** 3

**Min:** 0

**Step:** 0.5

**Unit:** units/year

**Help:** Average units consumed per year, counting failures and planned use.

#### Replenishment lead time

**Key:** lead

**Type:** slider

**Default:** 60

**Min:** 1

**Max:** 365

**Step:** 1

**Unit:** days

#### Units on the shelf

**Key:** stock

**Type:** select

**Default:** 1

**Options:**

##### 0 units

**Value:** 0

##### 1 unit

**Value:** 1

##### 2 units

**Value:** 2

##### 3 units

**Value:** 3

##### 4 units

**Value:** 4

##### 5 units

**Value:** 5

#### Unit cost

**Key:** unit_cost

**Type:** number

**Default:** 4500

**Min:** 0

**Step:** 100

**Unit:** $

#### Annual holding cost

**Key:** hold

**Type:** slider

**Default:** 20

**Min:** 5

**Max:** 40

**Step:** 1

**Unit:** %

**Help:** Capital, storage, insurance and obsolescence as a share of unit value.

#### Cost of each demand that finds the shelf empty

**Key:** stockout

**Type:** number

**Default:** 25000

**Min:** 0

**Step:** 500

**Unit:** $

**Help:** Downtime and expedite cost when a failure occurs and no spare is on hand.

**Outputs:**

#### Expected demand during lead time

**Key:** lam

**Expr:** demand * lead / 365

**Format:** decimal

**Description:** Poisson mean, lambda.

#### Probability a demand is met from stock

**Key:** fill

**Expr:** if(gte(stock, 1), exp(0 - lam) * (1 + if(gte(stock, 2), lam, 0) + if(gte(stock, 3), lam * lam / 2, 0) + if(gte(stock, 4), pow(lam, 3) / 6, 0) + if(gte(stock, 5), pow(lam, 4) / 24, 0)), 0) * 100

**Format:** percent

**Primary:** true

#### Demands finding the shelf empty per year

**Key:** short

**Expr:** demand * (1 - fill / 100)

**Format:** decimal

#### Annual holding cost

**Key:** hold_cost

**Expr:** stock * unit_cost * hold / 100

**Format:** currency

#### Expected annual stockout cost

**Key:** short_cost

**Expr:** short * stockout

**Format:** currency

#### Total expected annual cost

**Key:** total

**Expr:** hold_cost + short_cost

**Format:** currency

**Primary:** true

**Chart:**

#### Total annual cost vs lead time

**Type:** line

**X:** lead

**From:** 5

**To:** 365

**Steps:** 30

**Series:**

- total

**Disclaimer:** Assumes a one-for-one replenishment policy with random, independent demand. Compare the total cost at each stock level by changing the select input; the lowest total is the economic choice before considering safety rules.

## Content

**Intro:** Critical spares move so slowly that average-based reorder points do not work. With demand of a few units a year, stockout risk follows the Poisson distribution, and this calculator uses it to compare the cost of holding zero to five units.

**Sections:**

#### How to use it

**Body:** Enter annual demand, replenishment lead time and the cost of one unit. Add an annual holding cost percentage and the cost of a demand that finds the shelf empty, such as downtime plus expedited freight. Change the stock level from zero to five and compare the fill probability and total expected annual cost. The chart shows how total cost grows with lead time at the stock level you chose.

**Bullets:**

- Count only demand that actually consumes the part, not transfers or returns.
- Use the supplier's realistic lead time, not the catalog promise.
- Test several stock levels; the cost curve is often U-shaped.

#### The math

**Body:** Demand during lead time follows a Poisson distribution with mean lambda = annual demand x lead time / 365. With one-for-one replenishment and S units on the shelf, a new demand is served from stock when fewer than S orders are outstanding, so the fill probability is P(X <= S - 1), the sum of e^(-lambda) x lambda^k / k! for k up to S - 1. Expected shortage events are demand x (1 - fill). Total cost adds holding to expected stockout cost.

#### Reading the result

**Body:** At low lambda, the first unit usually buys the largest drop in risk, and the second or third unit buys much less. If a unit costs more than the expected stockout loss it prevents, do not stock it and use a contract, a pooled spare across sites or a repair-and-return pool instead. Also check whether the part can be repaired or refurbished, which shortens the effective lead time.

#### Common mistakes

**Body:** Applying a normal-distribution safety stock formula to parts that move a few times a year gives nonsense. Understating the stockout cost, particularly for single points of failure, pushes the answer toward no stock. Finally, set the ERP min and max to match: for a one-for-one policy that means a reorder point of S - 1 and a max of S, or a manual review rule, in SAP, Infor, Epicor or your system of record.

**Cta:** Netray can help rank slow-moving spares in your ERP by criticality and demand so stocking decisions follow the numbers. The calculator itself needs no contact.

**Faq:**

#### Why Poisson instead of a normal distribution?

**Answer:** With only a few events per year, demand is discrete and skewed. The normal distribution can give negative or fractional demand and misstate tail risk, while Poisson handles rare random events correctly.

#### What if demand is not random?

**Answer:** If usage follows a schedule, such as planned overhauls, order for the schedule and use this tool only for the unplanned portion. Mixing scheduled and random demand overstates the stock you need.

#### How do I set the stockout cost?

**Answer:** Include lost production per hour times expected downtime, expedite freight, overtime and any penalty. If a failure idles a bottleneck machine, the figure often dwarfs the part price.

#### Can I use it for several identical machines?

**Answer:** Yes, add demand across all machines using the same part. Pooling demand across assets is a cheap way to improve fill rate without buying more units per machine.

## Search terms

critical spares stockout risk calculator, poisson spare parts stock level, slow moving spare parts how many to stock, insurance spares calculator, spare parts fill rate poisson, how many spares should we keep, base stock policy spare parts, mro critical spares stocking decision

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
