Skip to main content

Methodology

Reorder Point Planner methodology

Set a reorder point from demand, lead time, safety stock and the current inventory position.

Educational only: Business decision support, not accounting, tax or legal advice.

Privacy: Calculations run locally; Margin101 does not receive your commercial inputs.

Update policy: Reviewed when formulas or official dependencies change.

Scope: Market-neutral small-business planning using your own assumptions.

1. Formulas and units

Lead Time Demand
leadTimeDemand = average daily demand × lead time days

Where

averageDailyDemand
Average daily demand (operational units)Source: Business record
leadTimeDays
Supplier lead time (operational units)Source: Business record
leadTimeDemand
Lead Time Demand (units)Source: Calculated output
D
Average daily demand (units per day)Source: Business record
L
Average lead time (days)Source: Business record
Safety Stock
safetyStock = selected safety-stock method

Where

method
Safety-stock method (operational units)Source: Business record
safetyStock
Safety Stock (units)Source: Calculated output
Reorder Point
reorderPoint = lead-time demand + safety stock

Where

leadTimeDemand
Lead Time Demand (units)Source: Calculated output
safetyStock
Safety Stock (units)Source: Calculated output
reorderPoint
Reorder Point (units)Source: Calculated output
Inventory Position
inventoryPosition = stock on hand + on order − backorders

Where

currentStock
Stock on hand (operational units)Source: Business record
onOrder
Stock already on order (operational units)Source: Business record
backorders
Backorders (operational units)Source: Business record
inventoryPosition
Inventory Position (units)Source: Calculated output
Quantity Below Reorder Point
quantityBelowReorderPoint = max(0, reorder point − inventory position)

Where

reorderPoint
Reorder Point (units)Source: Calculated output
inventoryPosition
Inventory Position (units)Source: Calculated output
quantityBelowReorderPoint
Quantity Below Reorder Point (units)Source: Calculated output
Days Cover
daysCover = max(0, inventory position) / average daily demand

Where

averageDailyDemand
Average daily demand (operational units)Source: Business record
inventoryPosition
Inventory Position (units)Source: Calculated output
daysCover
Days Cover (days)Source: Calculated output
D
Average daily demand (units per day)Source: Business record
Order Alert
orderAlert = 1 when inventory position is at or below reorder point; otherwise 0

Where

reorderPoint
Reorder Point (units)Source: Calculated output
inventoryPosition
Inventory Position (units)Source: Calculated output
orderAlert
Order Alert (units)Source: Calculated output
Statistical safety-stock units
SS = z × sqrt(L × sigmaD² + D² × sigmaL²)

Where

sigmaD
Daily demand standard deviation (units per day)Source: Business record
L
Average lead time (days)Source: Business record
sigmaL
Lead-time standard deviation (days)Source: Business record
z
Service factor (z-score)Source: User decision
SS
Statistical safety stock (units)Source: Calculated output
Equivalent safety-stock days
SSdays = SS / D

Where

D
Average daily demand (units per day)Source: Business record
SS
Statistical safety stock (units)Source: Calculated output
SSdays
Equivalent safety-stock days (days)Source: Calculated output
Safety-stock investment
SSinvestment = SS × unit inventory cost

Where

SS
Statistical safety stock (units)Source: Calculated output
SSinvestment
Safety-stock investment (currency units, ex tax)Source: Calculated output

Money inputs and outputs use the currency selected in the scenario without changing the canonical methodology. Rates, margins, utilisation and buffers are entered as percentages and converted to decimal values for calculation.

2. Worked example

Input assumptions

The worked rows below come directly from the exact engine and visible default fixture.

Safety-stock method
0 declared input unit
Average daily demand
40 product units/day
Supplier lead time
10 days
Safety-stock days
5 days
Daily demand standard deviation
8 product units/day
Lead-time standard deviation
2 days
Service factor (z-score)
1.644854 standard deviations above mean demand
Stock on hand
500 whole product units
Stock already on order
100 whole inbound product units
Backorders
20 whole product units

Calculation and outputs

  1. leadTimeDemand

    leadTimeDemand = average daily demand × lead time days
    Average daily demand
    40 product units/day
    Supplier lead time
    10 days
    Safety-stock days
    5 days
    Daily demand standard deviation
    8 product units/day
    Lead-time standard deviation
    2 days
    daysCover
    14.5 days

    Engine result: 400 units

  2. safetyStock

    safetyStock = selected safety-stock method
    Safety-stock method
    0 declared input unit
    Safety-stock days
    5 days
    Stock on hand
    500 whole product units
    Stock already on order
    100 whole inbound product units

    Engine result: 200 units

  3. reorderPoint

    reorderPoint = lead-time demand + safety stock
    Safety-stock method
    0 declared input unit
    Average daily demand
    40 product units/day
    Supplier lead time
    10 days
    Safety-stock days
    5 days
    Daily demand standard deviation
    8 product units/day
    Lead-time standard deviation
    2 days
    Stock on hand
    500 whole product units
    Stock already on order
    100 whole inbound product units
    leadTimeDemand
    400 units
    safetyStock
    200 units

    Engine result: 600 units

  4. inventoryPosition

    inventoryPosition = stock on hand + on order − backorders
    Safety-stock method
    0 declared input unit
    Safety-stock days
    5 days
    Stock on hand
    500 whole product units
    Stock already on order
    100 whole inbound product units
    Backorders
    20 whole product units
    safetyStock
    200 units
    orderAlert
    1 units

    Engine result: 580 units

  5. quantityBelowReorderPoint

    quantityBelowReorderPoint = max(0, reorder point − inventory position)
    reorderPoint
    600 units
    inventoryPosition
    580 units

    Engine result: 20 units

  6. daysCover

    daysCover = max(0, inventory position) / average daily demand
    Average daily demand
    40 product units/day
    Daily demand standard deviation
    8 product units/day
    leadTimeDemand
    400 units
    inventoryPosition
    580 units

    Engine result: 14.5 days

  7. orderAlert

    orderAlert = 1 when inventory position is at or below reorder point; otherwise 0
    reorderPoint
    600 units
    inventoryPosition
    580 units
    quantityBelowReorderPoint
    20 units

    Engine result: 1 units

Example

The worked rows below come directly from the exact engine and visible default fixture.

Lead Time Demand
400
Safety Stock
200
Reorder Point
600
Inventory Position
580
Order Alert
1
Quantity Below Reorder Point
20
Days Cover
14.5 days
Statistical safety-stock units
10.77 units
Equivalent safety-stock days
1.08 days
Safety-stock investment
53.85 currency units

The exact engine-derived outputs are shown in the labelled rows below.

Interpretation

Treat the reorder point as an operating trigger based on the entered demand, lead time and protection level.

3. Validation and boundary checks

  • All values must be finite and inside the visible validation boundaries.
  • Rates are entered as percentages and calculations retain decimal precision.
  • Money and operational records use one consistent period and basis.
  • The statistical safety-stock method rejects a service factor above five. It reports raw expected units; apply any whole-unit purchasing rounding separately and disclose that operational choice.
Safety-stock method minimum
method ≥ 0A lower value is rejected before calculation.
Safety-stock method maximum
method ≤ 1A higher value is rejected before calculation.
Average daily demand minimum
averageDailyDemand ≥ 0 product units/dayA lower value is rejected before calculation.
Average daily demand maximum
averageDailyDemand ≤ 100,000,000 product units/dayA higher value is rejected before calculation.
Supplier lead time minimum
leadTimeDays ≥ 0 daysA lower value is rejected before calculation.
Supplier lead time maximum
leadTimeDays ≤ 3,660 daysA higher value is rejected before calculation.
Safety-stock days minimum
safetyStockDays ≥ 0 daysA lower value is rejected before calculation.
Safety-stock days maximum
safetyStockDays ≤ 3,660 daysA higher value is rejected before calculation.
Daily demand standard deviation minimum
demandStandardDeviationPerDay ≥ 0 product units/dayA lower value is rejected before calculation.
Daily demand standard deviation maximum
demandStandardDeviationPerDay ≤ 100,000,000 product units/dayA higher value is rejected before calculation.
Lead-time standard deviation minimum
leadTimeStandardDeviationDays ≥ 0 daysA lower value is rejected before calculation.
Lead-time standard deviation maximum
leadTimeStandardDeviationDays ≤ 3,660 daysA higher value is rejected before calculation.
Service factor (z-score) minimum
serviceFactorZScore ≥ 0 standard deviations above mean demandA lower value is rejected before calculation.
Service factor (z-score) maximum
serviceFactorZScore ≤ 5 standard deviations above mean demandA higher value is rejected before calculation.
Stock on hand minimum
currentStock ≥ 0 whole product unitsA lower value is rejected before calculation.
Stock on hand maximum
currentStock ≤ 100,000,000 whole product unitsA higher value is rejected before calculation.
Stock already on order minimum
onOrder ≥ 0 whole inbound product unitsA lower value is rejected before calculation.
Stock already on order maximum
onOrder ≤ 100,000,000 whole inbound product unitsA higher value is rejected before calculation.
Backorders minimum
backorders ≥ 0 whole product unitsA lower value is rejected before calculation.
Backorders maximum
backorders ≤ 100,000,000 whole product unitsA higher value is rejected before calculation.

4. Assumptions and source classification

  • Demand, lead times, costs, tax and targets are supplied by the user.
  • No jurisdiction, supplier service level, industry benchmark or forecast is embedded.
  • The engine retains full precision and display formatting never feeds back into calculation.
  • The statistical method assumes the entered demand and lead-time variability are representative and does not guarantee a service level.

This planner has no current policy-data dependency. Its commercial assumptions are user supplied. Registered family-level regression suites exercise the shared business-logic engine and worked-result reconciliation.

5. Limitations

  • Results depend on the quality and timing alignment of entered records.
  • The model does not replace inventory, accounting, tax, legal or financial advice.

This is educational decision support, not tax, accounting, legal or financial advice. Check the treatment of your actual transactions under the rules that apply to your business and seek qualified advice where appropriate.

6. Update and evidence policy

Registered family-level suites test formula invariants and example reconciliation; the release ledger records that coverage without claiming a separate oracle for every line of public copy. There is no official threshold or benchmark to refresh for this planner. Commercial inputs remain user-supplied because they vary by business and contract.

Change history

  1. : Initial public release of the Reorder Point planner and methodology.

Guides to interpret the decision and its assumptions.

Return to the planner