Inventory simulator for e-commerce

43% of e-commerce stores go under due to poor inventory management. Simulate your scenarios before it is too late.

  • Instant result
  • No sign-up
  • Visible assumptions
  • Deterministic calculation

In 30 seconds: Simulate real demand for each SKU and pinpoint exactly how much to order and when, freeing up capital locked in dead inventory. Deterministic calculation with auditable formulas. The result is indicative — adjust the assumptions to reflect your real operation.

Online stores tend to over-purchase during peak seasons to avoid stockouts — and end up with capital locked in low-turnover SKUs. This calculator shows you the exact economic order quantity and reorder point for your annual demand and lead time.

Methodology

Average daily demand = Annual demand ÷ 365

EOQ = √((2 × Annual demand × Order cost) ÷ Holding cost per unit/year)

Safety Stock = Z × σ × √Lead time (days)

Reorder Point (ROP) = (Daily demand × Lead time) + Safety Stock

Total annual cost = (Demand ÷ EOQ × Order cost) + (EOQ ÷ 2 × Holding cost) + (Safety Stock × Holding cost)

Variables

Annual Demand
Units sold or consumed in a year for the SKU.
Order Cost
Administrative and logistics cost of placing an order (regardless of size).
Holding Cost
Annual cost of keeping one unit in stock (storage, tied-up capital, insurance, obsolescence).
Lead Time
Days between placing the order and receiving it.
Daily Standard Deviation
Observed variability in daily demand — how much it fluctuates day to day.
Service Level
Target probability of not stocking out during lead time (90%, 95%, 97.5%, 99%).

Practical example

Online accessories store with A-class SKU: annual demand 18,000 units (49/day), holding cost $22/unit/year (storage, capital and obsolescence combined), order cost $1,200 (receiving, counting, palletizing), 14-day lead time with daily standard deviation of 12 units.

EOQ = √(2 × 18,000 × 1,200 ÷ 22) = √1,963,636 = 1,401 units per order. Frequency: 18,000 ÷ 1,401 = 12.8 orders per year, one every 28-29 days.

Safety stock for 95% service level (z = 1.65): 1.65 × 12 × √14 = 74 units. Reorder point = (49 × 14) + 74 = 686 + 74 = 760 units.

Average locked capital in this SKU: (1,401 ÷ 2 + 74) × unit cost. At a $180 cost per unit, that's about 774 × $180 = MXN $139,000 permanently tied up.

If you push service level to 99% (z = 2.33): SS rises to 105 units. New ROP = 791. The extra 31 units cost $31 × $22 = $682 per year in holding for just 4 coverage points — rarely worth it when the unit isn't lost (back-order tolerable).

Operating recommendation: if your marketplace penalizes out-of-stock (Mercado Libre drops your reputation score, Amazon shrinks buy box share), absorbing those $682 has a return; in owned DTC where the customer waits or asks for a refund, 95% is optimal. Measure your real stockout cost per SKU before moving the dial.

Interpretation

EOQ minimizes the total cost between ordering and holding. Orders below EOQ raise ordering cost; above EOQ raise holding cost.

Raising the service level from 95% to 99% usually increases safety stock 30-50%. Only worth it if the cost of a stockout (lost sale + lost customer) exceeds the extra inventory cost.

Long or variable lead time is the main driver of safety stock. Cutting supplier lead time in half can reduce your safety stock by 30%.

If your calculated ROP is above the inventory you usually carry, you're at recurring risk of stockout. If it's much lower, you're over-stocking.

Assumptions and limitations

  • Assumes independent, normally distributed demand (valid for SKUs with a stable history; fails for new or highly seasonal products).
  • Assumes a fixed, known lead time (lead-time variability can also be modeled but needs more data).
  • Assumes constant ordering and holding costs — no volume discounts or warehouse capacity limits.
  • The Wilson EOQ model doesn't consider warehouse capacity constraints or product shelf life (perishables need different models).

When to use this calculator

  • For A-class SKUs (high volume, high rotation): the difference between theoretical EOQ and operating EOQ translates directly into thousands in avoidable cost.

  • When a supplier changes price, lead time or minimum order — recalculate EOQ and ROP to adjust the purchasing policy.

  • Before negotiating annual contracts: EOQ tells you the optimal order size to use as an anchor in negotiations.

  • To set reorder points in WMS or ERP systems: many businesses operate with inherited ROPs with no statistical basis.

  • When evaluating a supplier with a shorter lead time: quantify the safety stock savings that could justify a higher unit cost.

Common mistakes

  • Using average demand without measuring the standard deviation. Without volatility, safety stock is zero and stockout risk is huge.

  • Ignoring the cost of capital when calculating holding cost. In high-rate environments, tied-up capital can represent 60% of holding cost.

  • Applying EOQ to perishables without adjusting for shelf life — you'll end up ordering quantities that expire before selling.

  • Defaulting service level to 99%. Low-contribution products don't justify such expensive safety stock; segment by margin.

Industry use cases

Mass-market e-commerce

For A-class SKUs with stable demand, EOQ typically yields orders every 3-4 weeks. A 95% service level is usually optimal: raising it to 99% multiplies safety stock by 1.4× with marginal gain.

Third-party marketplace (Mercado Libre, Amazon)

Lead times of 7-21 days plus out-of-stock penalties push service levels to 97.5-99%. Real holding cost includes storage fees, not just capital.

Direct-to-consumer (DTC)

Owned inventory reduces marketplace dependence but requires fulfillment. Compute EOQ assuming 30 days of holding before obsolescence for variant products (size/color).

Cross-border / imports

Lead times of 45-90 days drive safety stock up. Often it pays to cut SKU count and raise order frequency via consolidated containers.

Methodology and assumptions

How results are calculated, what we assume when modeling, and where the method loses precision.

Formula

EOQ = √(2·D·S ÷ H) · ROP = d × LT + Safety stock

Assumptions

  • Annual demand D known and reasonably stable.
  • Order cost S and holding cost H expressed in the same currency and time unit.
  • Deterministic lead time LT; safety stock covers variance.

Applicability limits

  • EOQ assumes instant replenishment — for in-house production use the EPQ variant.
  • When demand is seasonal the formula understates peak inventory.
  • Volume discounts are not included: evaluate the quantity discount separately.

Sources

  • Harris, F.W. (1913) — How Many Parts to Make at Once (origin of the EOQ formula).
  • APICS / ASCM — CPIM Body of Knowledge on inventory and demand.

You calculated EOQ and ROP. Now quantify how much capital is locked in inventory month over month in your cash flow. Advanced Cash Flow Simulator

Want to go beyond the quick calculation?

Sign up to access advanced simulators with multiple scenarios, data export, and detailed projections.

No spam. Just early access to the e-commerce excess inventory simulator.

Complete guide

E-commerce excess inventory: when your capital is sleeping in the warehouse

Excess inventory (overstock, dead stock) is one of the three silent killers of an e-commerce operation, alongside stockouts and uncontrolled returns. Unlike stockouts — which hurt because the lost sale is visible — excess inventory is invisible: the units are there, the ERP says stock is available, but capital is frozen, warehouse space is consumed, and every week the product depreciates, becomes obsolete, or loses relevance. An e-commerce with 45% of its inventory turning less than twice per year has a working-capital problem that no margin can offset.

Inventory turnover: the mother metric

The inventory turnover ratio measures how many times stock is sold and replenished in a period:

Inventory turnover = Annual COGS ÷ Average inventory

A healthy retail e-commerce turns 6-12 times per year (one turn every 30-60 days). Premium DTC brands with a broad SKU count turn 4-8 times. Fast-commerce of rapid consumption exceeds 15. The absolute value matters less than the comparison to your category benchmark and to your own historical series. A sustained turnover decline across 2-3 quarters is the early warning; by the time the P&L shows the margin impact, you are already six months late.

The operational inverse — days inventory outstanding (DIO) — is more useful in CFO conversations:

DIO = (Average inventory ÷ COGS) × 365

A DIO of 120 days means capital is trapped four months before converting back to cash. Multiplied by your cost of capital (interest rate or opportunity cost, typically 12-18% in Latin America and 6-10% in the US), the real carrying cost appears: financial interest, insurance, shrinkage, obsolescence, warehouse space, and forced-markdown risk. Aggregate industry benchmarks put total carrying cost at 20-30% of inventory value per year.

ABC classification: not every SKU deserves the same treatment

The ABC analysis — based on the Pareto principle — classifies SKUs by sales contribution:

  • Class A (~20% of SKUs, ~80% of sales): high SKU velocity, fine-grained management, frequent replenishment, tight safety stock.
  • Class B (~30% of SKUs, ~15% of sales): standard management, cyclical replenishment.
  • Class C (~50% of SKUs, ~5% of sales): candidates for discontinuation, bundling with A-items, or make-to-order.

A mature e-commerce reviews this classification quarterly. SKUs drifting from B to C for two consecutive quarters are dead stock in the making; cutting them before they cross the obsolescence threshold avoids the 40-60% forced markdown that the industry applies in end-of-season clearance.

Dead stock and sell-through rate

Dead stock is defined operationally as inventory with no sales in 90-180 days (the threshold varies by category; fashion uses 90, large appliances use 180). Sell-through rate — units sold divided by units received in a period — is the companion metric:

Sell-through = Units sold ÷ Units received × 100

A healthy sell-through in retail e-commerce is 70-85% at the close of a short season (6-8 weeks) and 60-75% in a long season (12-16 weeks). Below 50% signals structural overbuying; above 95% signals structural stockouts — both erode margin, one via markdown and the other via lost sales and marketplace ranking degradation.

SKU velocity, safety stock, and EOQ

SKU velocity (units sold per unit of time) is the direct input for the replenishment model. Combined with supplier lead time and demand variability, it generates safety stock:

Safety stock = Z × σ_demand × √lead time

where Z is the service factor (1.65 for 95%, 2.05 for 98%) and σ is the standard deviation of daily demand. Overestimating safety stock is the #1 cause of silent dead stock: the buffer grows with each review and no one trims it when demand stabilizes.

Economic Order Quantity (EOQ) resolves the trade-off between ordering cost and holding cost:

EOQ = √(2 × annual demand × order cost ÷ holding cost per unit)

In e-commerce with Asian suppliers of 45-90 day lead times, EOQ underestimates the risk of getting stuck long if demand drops. Modern practice combines EOQ with supplier MOQ (minimum order quantity) and a dynamic reorder point (ROP) recomputed weekly using SKU velocity from the last 28 days.

Trapped working capital: the number the board understands

The calculation that translates operations into finance: working capital in inventory = Total inventory × unit cost. A Latin American e-commerce with 18M USD annual revenue and a 110-day DIO has roughly 3.2M USD frozen in inventory; cutting DIO to 75 days frees 1M USD of capital that can fund growth, pay down debt, or expand marketing. The ROI of an inventory optimization project rarely has a competitor at that level.

Markdown cadence: the 10-30-50-70 playbook

Once dead stock is identified, the fastest exit is a structured markdown cadence. The goal is to convert inventory to cash before it reaches zero value. A proven schedule:

  • Week 1-2: 10% off. Tests price sensitivity. No urgency yet.
  • Week 3-4: 30% off. Added to flash-sale and clearance sections. Push via email to past buyers of the category.
  • Week 5-6: 50% off. Full price-anchor visibility on the product page. Run retargeting ads on near-purchasers.
  • Week 7-8: 70% off. B-stock or bulk-lot sale to liquidation partners (B-Stock Solutions, BULQ, Via Trading) if online retail traffic is insufficient.

The accounting treatment: inventory write-downs (under IFRS IAS 2 and US GAAP ASC 330) must reduce inventory to Net Realizable Value (NRV). A 70% markdown means an NRV write-down of 70 cents per dollar of cost — a direct P&L charge. Proactive 8-week markdown cadence generates better cash recovery than waiting for the write-down decision at year-end.

Preventing overstock: the upstream fixes

Better forecasting: move from manual estimates to statistical demand models. SKU velocity from the prior 28-day rolling window is better than a static annual average. For seasonal categories, Holt-Winters exponential smoothing or STL decomposition captures the seasonal pattern and projects forward. Many e-commerce platforms (Shopify, Amazon Seller Central, Linnworks) expose 90-day rolling velocity — use it.

Smaller initial buys: the temptation to overbuy on a first purchase to hit MOQ thresholds or volume discounts creates the dead stock problem. Negotiating a test-order exception (50-100 units) at the standard unit cost — even without the volume discount — is cheaper than owning 500 units of a product that doesn't sell. Quantify: volume discount at 15% on 500 units = USD 375 saved on USD 2,500 cost. If 30% of the units end up dead stock, the write-down is USD 750. The discount evaporated and left a loss.

MOQ negotiation by category: for class A SKUs (20% of SKUs, 80% of sales), MOQs matter less because replenishment is rapid. For class C SKUs (50% of SKUs, 5% of sales), negotiate MOQ equal to 4-8 weeks of demand instead of 3-month blanket orders. Most suppliers will accommodate this for established accounts if asked.

Liquidation channels: the hierarchy

  1. Own clearance section (highest recovery, lowest volume throughput). Good for 10-30 units.
  2. Flash sale to email list (recovery 40-60% of original price, fast). Works within 72-hour window.
  3. B2B bulk sale to resellers or jobbers (recovery 20-40% of cost). B-Stock, BULQ, Via Trading, or direct outreach to flea market resellers for physical goods.
  4. Tax-deductible donation (in Mexico under LISR Art. 27, in the US under IRC 170(e)): donation of inventory to eligible nonprofits yields a deduction equal to cost in Mexico, or up to twice cost in the US for C-corps donating for care of the ill. Recovery equivalent is the tax shield.
  5. Destruction + write-off (last resort, zero cash recovery). Triggered only when shipping + liquidation cost exceeds liquidation value.

Conclusion

Measuring turnover, DIO, ABC mix, sell-through, and dead stock by category — and acting weekly on the outliers — is the difference between an e-commerce that scales with healthy margin and one that grows in revenue but suffocates in working capital. The simulator turns your ERP data into the six metrics that the CFO, the purchasing manager, and the marketplace manager need to see in a single view.

Illustrative case

Composite case for instructional purposes: combines sector dynamics with realistic figures. Names are fictional and do not represent a specific company.

Lunara Home is a DTC brand for home decor and textiles with 18 months in market. 2024 revenue: USD 2.47M, 1,400 active SKUs across pillows, curtains, dinnerware, and kitchen items, operating from a regional distribution center and shipping nationwide. The founder noticed that despite 35% year-over-year revenue growth, cash was getting tighter every quarter and the bank rejected a line-of-credit extension in December.

The simulator analysis revealed three realities. Consolidated DIO of 138 days against a healthy benchmark of 55-70 days for the category (Stackline). Capital frozen in inventory: USD 576K — 23% of annual revenue. ABC classification: 42% of SKUs (class C) contributed only 4.8% of sales; among them, 186 SKUs with zero sales over the previous 180 days and a combined value of USD 124K — absolute dead stock.

Decisions taken in January 2025: (1) forced liquidation of the 186 dead-stock SKUs in a flash sale with an average 55% discount, recovering USD 56K in net cash after marketplace fees; (2) discontinuation of another 220 class C SKUs with low sell-through, plus a supplier reorder block; (3) safety stock recomputed per SKU with the Z × σ × √lead time formula instead of rule-of-thumb; (4) dynamic reorder point recalculated weekly using SKU velocity from the last 28 days instead of monthly reviews.

Six months later, DIO dropped to 82 days, inventory working capital fell to USD 329K, and operating cash improved by USD 188K — more than double the same-half EBITDA. The bank approved the credit extension it had initially denied, using the same financial information reinterpreted and backed by simulator dashboards exported to the credit committee.

From theory to calculation

The calculator on this page runs with your numbers — no forms, no login. Scroll up and try it.

Try the calculator

Sector reference ranges

Indicative ranges based on public sector literature and operational observation. Your business may differ — use the numbers as a starting point, not as a target.

MetricValueSource
Healthy annual inventory turnover — retail e-commerce6-12 timesNRF Retail Inventory Benchmarks 2024
Total carrying cost as % of inventory value20-30% annualAPICS/ASCM Inventory Management Framework 2024
Healthy sell-through rate — short season (6-8 weeks)70-85%Stackline E-commerce Performance Report 2024
Capital trapped in dead stock — average US retailer20-30% of total inventoryIHL Group Retail Inventory Distortion Study 2024
Dead stock — average LatAm e-commerce (no movement 180+ days)15-25%AMVO Online Sales Study Mexico 2024

Frequently asked questions

1What counts as excess inventory in e-commerce?
Operationally, SKUs with no sales in 90-180 days or with an inventory turnover below two turns per year. In aggregate, any inventory above the level needed to cover expected demand plus the safety stock computed with the Z × σ × √lead time formula for your target service level.
2What is a healthy inventory turnover for an e-commerce?
6 to 12 turns per year for generalist retail, equivalent to a DIO of 30-60 days. Premium DTC with a broad SKU count turns 4-8. Fast-commerce of rapid consumption exceeds 15. Compare your turnover against your category benchmark (NRF, Stackline) and against your own quarterly series.
3How do you calculate inventory carrying cost?
Add financial cost (capital rate applied to average inventory), warehousing, insurance, shrinkage, expected obsolescence, and markdown risk. Rough industry rule: 20-30% of inventory value annually. If your WACC is high (Latin America), the range rises to 25-35%.
4What should I do with my dead stock?
First quantify it (SKUs with no sales for 180+ days and their total value). Then ladder the exit: (1) bundle with class A SKUs that do sell; (2) direct flash sale with aggressive 40-60% discount; (3) B2B liquidation with closeout wholesalers; (4) tax-deductible donation if applicable; (5) last resort, write-off and destruction. The most expensive loss is keeping it in the warehouse one more quarter.
5How do I prevent overstock on future purchases?
Implement dynamic reorder point (recomputed weekly with 28-day SKU velocity), safety stock by formula instead of intuition, negotiated MOQ with the supplier that does not force you to buy six months of inventory per SKU, and quarterly ABC reviews to cut class C items before they become dead stock.
6What is the difference between stockout and dead stock?
Stockout is having no inventory when demand exists — you lose the sale and take a marketplace-ranking penalty. Dead stock is having inventory with no demand — frozen capital, accumulated carrying cost, and likely forced markdown. Both are symptoms of the same problem: misalignment between real SKU velocity and the replenishment plan.
7What is sell-through rate and what is healthy?
It is the percentage of received units that were sold in the period: sales ÷ receipts × 100. Healthy: 70-85% at the end of a short season (6-8 weeks) and 60-75% in a long season. Below 50% signals overbuying; above 95% signals structural stockout.

Tools from the same topical cluster. Use them together to close the loop on your analysis.

Last updated: April 30, 2026 · Reviewed by the Simúlalo editorial team. Figures and benchmarks are indicative; verify with your own data before deciding.

View methodology