Synplex Logo
Synplex
Free calculatorreorder point calculator

Reorder Point Calculator

Know exactly when to place your next purchase order - before you run out. Enter your sales velocity and lead time to get your reorder point instantly.

~85 – 95%average order fill rate achieved by most brands - only 97 – 99% is considered near-perfect (ShipBob, 2023)

Definition: The reorder point (ROP) is the inventory level that triggers a new purchase order, calculated so that stock does not hit zero before the next delivery arrives.

Most stockouts are not caused by surprising demand - they are caused by reordering too late. The reorder point is the number on your inventory dashboard that should trigger an immediate purchase order. Set it correctly and you'll almost never run out. Set it too low and you're constantly placing emergency orders at premium freight rates. Set it too high and you tie up cash in inventory you didn't need yet. This calculator helps you find the right number, whether you have a simple single-supplier setup or a more complex multi-source operation.

Reorder Point Calculator formulas

Standard ROP

Use when: The correct formula for most Shopify brands. Use whenever you have a reasonable estimate of average demand and lead time.

ROP = (D_avg × L) + SS

Reorder Point = (Average daily demand × Lead time in days) + Safety Stock

SymbolVariableDescription
D_avgAverage daily demand(units / day)Mean units sold per day. Pull from Shopify Analytics > Sales by day.
LLead time(days)Days from placing a purchase order to stock arriving at your warehouse.
SSSafety stock(units)Buffer inventory. Use this calculator's companion tool to calculate it, or estimate as 20 – 50% of lead-time demand.

Limitation: Assumes demand is relatively constant during the lead time. For highly seasonal or promotional products, adjust D_avg to reflect expected demand during the reorder period.

Simple ROP (no safety stock)

Use when: Only appropriate if your demand and lead time are very stable and you accept a ~50% risk of running out during the replenishment period.

ROP = D_avg × L

Reorder Point = Average daily demand × Lead time in days

SymbolVariableDescription
D_avgAverage daily demand(units / day)Mean units sold per day.
LLead time(days)Days between order and delivery.

Limitation: No buffer against variability. Any demand spike or late delivery will cause a stockout.

Statistical ROP (with lead-time demand distribution)

Use when: Best when you have enough data to calculate demand variability over the full lead time period. Used in ERP systems and advanced inventory tools.

ROP = μ_L + Z × σ_L

Reorder Point = Expected demand during lead time + (Z-value × Standard deviation of lead-time demand)

SymbolVariableDescription
μ_LExpected demand during lead time(units)D_avg × L - total units expected to sell while waiting for delivery.
ZZ-value( - )Service level factor. Z = 1.65 for 95% service level.
σ_LStandard deviation of lead-time demand(units)How much total demand during a lead-time period varies. Calculate as σ_D × √L, where σ_D is the standard deviation of daily demand.

Limitation: Requires historical demand data - at least 30 – 60 days.

Z-value reference table

Select the Z-value that matches your target service level. Most growing DTC brands use 95% (Z = 1.65).

Service levelZ-value
80%0.84
85%1.04
90%1.28
95%1.65
97%1.88
98%2.05
99%2.33
99.9%3.09

Step-by-step examples

Scenario: “A Shopify furniture brand sells an average of 5 chairs per day. Supplier lead time is 30 days. Desired safety stock: 15 units.

Average daily demand (D_avg): 5 units/day
Lead time (L): 30 days
Safety stock (SS): 15 units
  1. 1Lead-time demand = D_avg × L = 5 × 30 = 150 units
  2. 2ROP = Lead-time demand + Safety stock = 150 + 15 = 165 units
Reorder point = 165 units

Interpretation: Place a new purchase order the moment your stock drops to 165 chairs. At your average sales rate, the new stock will arrive just as your safety buffer is being used.

Scenario: “A DTC supplement brand. Average daily sales: 4 units. Lead time: 35 days. Safety stock (from statistical formula): 20 units.

Average daily demand (D_avg): 4 units/day
Lead time (L): 35 days
Safety stock (SS): 20 units
  1. 1Lead-time demand = 4 × 35 = 140 units
  2. 2ROP = 140 + 20 = 160 units
Reorder point = 160 units

Interpretation: Set a reorder alert at 160 units in your inventory system. If you sell faster than average, the safety stock covers the gap until your order arrives.

Typical reorder point parameters by business type

CategoryBenchmark
Fast-moving consumer goods (FMCG)Lead time 7 – 14 days
Overseas / China-sourced productsLead time 30 – 45 days (sea freight)
Target fill rate (most DTC brands)95 – 97%
Safety stock as % of lead-time demand20 – 50%
Acceptable stock deviation from ROP±5%

Critical pitfalls to avoid

Using stock levels instead of sales velocity for D_avg

Taking 'inventory on hand' from Shopify and dividing by days to estimate daily demand. This is wrong - as inventory falls without sales, it produces artificially low demand figures.

Fix: Use Shopify Analytics > Sales by day, not stock levels, to calculate average daily units sold.

Adding safety stock by multiplying instead of adding

A very common error: ROP = D_avg × L × 1.2 (multiplying a buffer in). This inflates the ROP non-linearly and is not how safety stock works.

Fix: Always add safety stock: ROP = (D_avg × L) + SS.

Using the same lead time regardless of supplier

If you source from multiple suppliers with different lead times, applying a single average lead time will cause stockouts from your slowest supplier.

Fix: Set a separate reorder point per supplier, using that supplier's actual lead time.

Not adjusting for promotions or seasonality

Using average annual demand to set a ROP that's active during Black Friday or peak season. Your 'normal' ROP will be far too low during high-demand periods.

Fix: Temporarily increase D_avg before promotional events by your expected uplift factor (e.g. ×1.3 for a 30% sales increase).

Setting ROP below your MOQ

If your minimum order quantity from a supplier is 500 units but your ROP calculation says 120, you'll often skip ordering until you remember, creating gap periods.

Fix: When ROP < MOQ, set your operational reorder trigger at MOQ level and factor the surplus into your safety stock.

Shopify-specific tips

  • Shopify does not store supplier lead times natively. Track them manually on each purchase order and use your average over the last 6 – 12 months.
  • Use Shopify Analytics > 'Sales by product' filtered by date range and divided by the number of days to calculate D_avg per SKU.
  • Set up low stock notifications in Shopify (Settings > Notifications) at your calculated ROP level. For more automation, use an inventory app that alerts you automatically.
  • For multi-location Shopify stores, calculate ROP per location separately - aggregated stock masks regional stockouts.
  • Shopify POS users can pull daily sales velocity directly from POS reports, which is the most accurate source of D_avg for retail-first brands.

Frequently asked questions

Related resources