Why Inventory KPIs Are Different From Revenue Metrics

Revenue and profit are lagging indicators — they tell you what happened. Inventory metrics are leading indicators — they tell you what's about to happen. A store with deteriorating inventory turnover will see declining cash flow before it shows up in P&L. A store with a rising stockout rate will lose ranking in Shopify's search and Google Shopping before the lost revenue is visible in monthly reports.

The six metrics below form a diagnostic system. Each one measures a different dimension of inventory health:

KPI 01
Inventory Turnover Rate
Efficiency
How many times your entire inventory sells through per year. The core measure of capital efficiency.
KPI 02
Days of Supply
Efficiency
How many days of stock you have on hand at the current sales rate. Your early warning system for stockouts.
KPI 03
Stockout Rate
Risk
The percentage of your SKUs that hit zero inventory in a given period. A measure of demand planning failure.
KPI 04
Fill Rate
Risk
The percentage of customer orders shipped complete on the first attempt. Reveals the customer-facing impact of stockouts.
KPI 05
Carrying Cost of Inventory
Cost
The annual cost of holding your inventory: storage, capital, insurance, and shrinkage. Usually 20–30% of inventory value.
KPI 06
Reorder Point Accuracy
Cost
How often your reorder points trigger at the right time — not too late (stockout) and not too early (overstock).

You don't need to track all six from day one. Start with days of supply and stockout rate — they have the most immediate impact on revenue. Add the others as your operations mature.

KPI 1: Inventory Turnover Rate

Efficiency Metric
How many times your inventory sells through per year

Inventory turnover measures how efficiently you convert stock into sales. A high turnover means your capital is working hard — you're buying, selling, and replenishing quickly. A low turnover means capital is sitting in slow-moving stock, generating carrying costs without generating revenue.

Formula

Inventory Turnover = COGS ÷ Average Inventory Value
Average Inventory Value = (Beginning Inventory Value + Ending Inventory Value) ÷ 2
Use cost values (what you paid for the inventory), not retail values. COGS is in your Shopify reports under Finances → Profit by product.

Example: A store with $180,000 COGS over the past 12 months and an average inventory value of $45,000 has a turnover rate of 4.0 — meaning the entire inventory sold through four times.

Turnover RateWhat it typically signalsStatus
Below 2Serious overstock, slow-moving products, or weak demandInvestigate
2–4Acceptable for low-velocity or high-ticket productsMonitor
4–8Good for most consumer product categoriesHealthy
8–12+Excellent; common in fast-moving consumables or apparelStrong

Benchmarks vary significantly by category — a furniture store at 2.5 is fine; a supplement brand at 2.5 has a problem. Compare against your own historical trend first, then against category peers.

What low turnover actually costs: At a 20% annual carrying cost (storage, capital, insurance), $100,000 in slow-moving inventory generates $20,000/year in carrying costs before it sells. Improving turnover from 2x to 4x effectively halves that cost.

To improve turnover, the levers are: faster reorder cycles (smaller, more frequent orders), tighter purchasing (buy only what demand velocity justifies), and aggressive clearance of truly slow-moving SKUs. Increasing order sizes to hit supplier MOQs without the demand to support them is the most common cause of low turnover.

KPI 2: Days of Supply

Efficiency Metric
How many days until you run out at the current sales rate

Days of supply (also called days of stock remaining) is your real-time stockout early warning system. It tells you exactly how long your current inventory will last given recent sales velocity — and whether you need to order now.

Formula

Daily Velocity = Units Sold in Last 30 Days ÷ 30
Days of Supply = Current Stock ÷ Daily Velocity
A 30-day trailing window is standard — recent enough to reflect current trends, long enough to smooth weekly variance.

Example: A product sold 120 units in the last 30 days and has 48 units in stock. Daily velocity is 4 units/day. Days of supply = 48 ÷ 4 = 12 days. If the supplier lead time is 10 days, you have a 2-day ordering window before a guaranteed stockout.

The critical threshold is days of supply minus lead time. When that number hits zero or goes negative, you're already too late — stock will run out before the next shipment arrives. Building a safety buffer (typically 3–7 days depending on demand variance) gives you a realistic reorder trigger.

The asymmetry of acting late vs. acting early: Ordering 3 days too early costs you 3 days of carrying cost on the new shipment. Ordering 3 days too late costs you 3 days of zero revenue on that product, plus potential search ranking damage on Shopify and Google Shopping. The math strongly favors early orders.

Manually calculating days of supply for even 50 SKUs takes 30–45 minutes in a spreadsheet. For 200+ SKUs it's practically impossible to keep current. This is exactly where inventory apps earn their cost — EZStock calculates days of supply per variant from live Shopify sales data and sorts your dashboard by urgency (lowest days remaining first).

KPI 3: Stockout Rate

Risk Metric
What percentage of your SKUs hit zero inventory per period

Stockout rate measures how often your demand planning fails completely. A single stockout event has cascading consequences: lost immediate revenue, Shopify's algorithm treating the out-of-stock product as lower quality, Google Shopping pausing the listing, and customers discovering a competitor — and potentially not coming back.

Formula

Stockout Rate = (SKUs That Hit Zero ÷ Total Active SKUs) × 100
Measure per period (monthly is standard). A SKU that hits zero for even one day counts as a stockout event for that period.

Example: 8 out of 120 active SKUs went to zero inventory at some point in May. Stockout rate = (8 ÷ 120) × 100 = 6.7%.

Stockout RateInterpretationStatus
Below 2%Excellent demand planning; minor gaps in edge-case SKUsTarget
2–5%Acceptable; review which SKUs are consistently stocking outMonitor
5–10%Demand planning has systematic gaps; audit reorder pointsInvestigate
Above 10%Significant revenue and customer experience impactUrgent

When investigating stockouts, segment them. Are they concentrated in a specific supplier (lead time issue)? In seasonal products (forecasting issue)? In your fastest-moving SKUs (reorder point set too low)? The pattern tells you where to fix the process, not just that something is broken.

One nuance: distinguish between planned stockouts (you intentionally discontinued a product or are letting it sell through) and unplanned stockouts (you expected to be in stock but weren't). Only unplanned stockouts count against your rate. Tracking both separately prevents the metric from masking intentional clearance decisions.

KPI 4: Fill Rate

Risk Metric
What percentage of orders ship complete on the first attempt

While stockout rate measures inventory failure from the supply side, fill rate measures it from the customer side. Fill rate answers: when a customer places an order, what percentage of the time can you ship everything they ordered, immediately, in full?

Formula

Fill Rate = (Orders Shipped Complete ÷ Total Orders) × 100
Line Fill Rate = (Order Lines Shipped Complete ÷ Total Order Lines) × 100
Line fill rate is more granular — a single item stockout on a 5-item order counts as one unfilled line, not a failed order. Use both.

Example: 847 orders in a month. 23 orders had at least one item out of stock and were partially shipped or delayed. Order fill rate = ((847 − 23) ÷ 847) × 100 = 97.3%.

Fill rate below 95% typically indicates systemic inventory problems. Fill rate below 90% is operationally serious — customers are regularly receiving partial shipments or waiting for backorder fulfillment, and every interaction like that erodes repeat purchase rates.

The hidden cost of low fill rate: A split shipment on a $60 order costs $8–12 in additional fulfillment. At 500 split shipments per year, that's $4,000–6,000 in direct cost, not counting the customer experience impact. Improving fill rate from 93% to 97% on 2,000 orders/month saves roughly 80 split shipments per month.

Fill rate and stockout rate are related but not identical. You can have a low stockout rate but low fill rate if your multi-item orders are disproportionately affected by the few SKUs that do stock out. Conversely, if your stockouts are mostly slow-moving SKUs that rarely appear in orders, the fill rate impact is small. Track both.

KPI 5: Carrying Cost of Inventory

Cost Metric
What it costs annually just to hold the inventory you have

Inventory carrying cost is the most underestimated cost in product businesses. It's not just warehouse rent — it's the sum of every cost generated by holding stock that hasn't sold yet. For most businesses, carrying cost runs 20–30% of the total inventory value per year.

Components of Carrying Cost

Carrying Cost % = Capital Cost + Storage Cost + Insurance + Shrinkage + Obsolescence
Capital cost: what you could earn if the money tied up in inventory was invested elsewhere (typically 5–10% of inventory value). Storage: rent, utilities, handling per square foot. Insurance: 1–2% of inventory value. Shrinkage/damage: 1–3%. Obsolescence risk: 2–5% for trend-sensitive products.
ComponentTypical RangeNotes
Capital / opportunity cost5–10%Money locked in stock vs. invested at market rates
Storage (warehouse/3PL)2–8%Higher for 3PL per-unit billing; lower for owned space
Insurance1–2%Usually bundled into business insurance policy
Shrinkage and damage1–3%Varies by product category and storage conditions
Obsolescence risk2–5%Higher for fashion, electronics, seasonal items
Total carrying cost11–28%20–25% is the standard planning assumption

Example: A store holding $200,000 in average inventory at 22% carrying cost incurs $44,000/year just to hold that stock. If they could optimize to $150,000 average inventory (through tighter purchasing and faster turnover), carrying cost drops to $33,000 — saving $11,000 annually with no revenue impact.

The lever for reducing carrying cost is turnover rate. Higher turnover means lower average inventory value for the same revenue — fewer dollars sitting in stock, lower carrying cost. This is why turnover and carrying cost should always be analyzed together: a business chasing high fill rates by overstocking is trading fill rate improvement for carrying cost increases.

The overstocking trap: Many merchants respond to stockout problems by ordering more. This improves fill rate but increases average inventory value, which increases carrying cost. The smarter fix is more accurate reorder points (buy at the right time, not just buy more), which keeps average inventory lower while maintaining fill rate.

KPI 6: Reorder Point Accuracy

Cost Metric
How often your reorder points trigger at precisely the right time

Reorder point accuracy is a meta-metric — it measures the quality of your demand planning system itself. A reorder point that triggers too late causes stockouts. A reorder point that triggers too early causes overstock and elevated carrying costs. Accurate reorder points minimize both.

The Reorder Point Formula

Reorder Point = (Daily Velocity × Lead Time) + Safety Stock
Safety Stock = (Max Daily Velocity − Average Daily Velocity) × Lead Time
Max daily velocity can be estimated from peak periods (promotional events, seasonal spikes). Safety stock is the buffer for demand variance during the lead time window.

Example: Average daily velocity: 4 units. Max daily velocity (during last promotion): 7 units. Lead time: 12 days. Safety stock = (7 − 4) × 12 = 36 units. Reorder point = (4 × 12) + 36 = 84 units.

To measure reorder point accuracy retrospectively, review stockouts and overstock events and ask: did the reorder point trigger in time? A reorder point is accurate if the new stock arrived before the existing stock hit zero, and the amount ordered kept average inventory within a reasonable range of the reorder quantity.

Reorder Point Error TypeSymptomFix
Set too lowStockout before new stock arrivesIncrease by adding safety stock buffer or increasing lead time estimate
Set too highNew stock arrives with weeks of old stock still on hand (overstock)Decrease by auditing whether lead time and velocity inputs are current
Not updated after velocity changeWorks in some periods, fails in othersRecalculate from actual 30-day velocity rather than last year's estimates
Same for all suppliersAccurate for one supplier, wrong for othersSet reorder points per supplier, using that supplier's actual lead time

Most manually-managed reorder points are set once and forgotten. Velocity changes — a product gets featured in a promotion, a competitor goes out of stock and you absorb their demand, a seasonal period begins. Reorder points that aren't updated to reflect current velocity gradually lose accuracy, and the error compounds over time.

How to Start Tracking These Metrics Without a Dedicated BI Tool

You don't need a data warehouse to track these six KPIs. A practical starting approach:

1
Stockout rate and days of supply first. Pull a product export from Shopify (Products → Export) and compare current inventory levels against 30-day sales. Calculate days of supply for each SKU. Note which SKUs hit zero in the past 30 days. This takes 1–2 hours the first time, but gives you the most immediately actionable data.
2
Calculate inventory turnover quarterly. Your COGS is in Shopify's Finances reports. Average inventory value requires tracking beginning and ending values — start a simple log. Once you have two data points, you can calculate turnover.
3
Track fill rate from your order fulfillment data. If you're using Shopify's native fulfillment, any order with a "partially fulfilled" status is a fill rate failure. Export orders monthly and filter for partial fulfillments as a percentage of total.
4
Estimate carrying cost once per quarter. Total average inventory value × 22% ÷ 4. You don't need precision on this — even a rough number changes how you think about overstocking decisions.
5
Automate days of supply and reorder point tracking. This is where manual processes break down at scale. Once you're tracking more than 50 SKUs, the calculation overhead for days of supply and reorder points exceeds what's practical to do manually. EZStock pulls 30-day velocity from Shopify's Admin API, calculates days of supply per variant, and flags low-stock items automatically — replacing the manual spreadsheet work entirely.

Setting Targets for Each KPI

Generic benchmarks are a starting point, not a target. Your targets should be set based on your cost structure, customer expectations, and product category. Here's a practical framework:

KPIConservative TargetStrong TargetPrimary Driver
Inventory Turnover4×/year8×/yearPurchasing discipline, reorder frequency
Days of Supply30–45 days on hand14–21 days on handShorter order cycles, more frequent POs
Stockout Rate< 5%< 2%Reorder point accuracy, lead time reliability
Fill Rate> 95%> 98%Stockout rate, safety stock levels
Carrying Cost< 25% of inventory value< 18% of inventory valueTurnover rate, storage cost negotiation
Reorder Point Accuracy< 8% error rate< 3% error rateVelocity data freshness, safety stock buffer

Set targets one KPI at a time. Start with whichever metric is furthest from a reasonable baseline — that's usually where the biggest revenue or cost impact sits. Once you've stabilized one metric, move to the next. Trying to improve all six simultaneously fragments attention and makes it hard to attribute what's working.

The Interdependence Problem

These six KPIs are not independent — they trade off against each other in ways that matter for decision-making:

  • Higher fill rate requires higher safety stock, which increases carrying cost and reduces turnover. The optimal fill rate isn't 100% — it's the point where the cost of stockout equals the cost of carrying the extra safety stock.
  • Higher turnover requires more frequent smaller orders, which can increase supplier transaction costs and may push you below MOQ thresholds. The optimal turnover rate is constrained by supplier minimums.
  • Lower carrying cost favors lean inventory, which increases stockout risk. The right inventory level minimizes the total of carrying cost + stockout cost, not either in isolation.

The practical implication: when you're trying to improve one metric, model what happens to the others. If you're cutting inventory to reduce carrying cost, project the impact on days of supply and fill rate. If you're raising safety stock to improve fill rate, calculate the carrying cost increase. The best inventory decisions optimize across the system, not one metric in isolation.

Making KPIs Actionable, Not Just Informational

The mistake many merchants make is tracking KPIs for reporting rather than for decisions. A KPI is only valuable when it triggers a specific action. Build a decision rule for each metric:

  • Days of supply falls below (lead time + safety days) → create a purchase order today
  • Stockout rate exceeds 5% for two consecutive months → audit reorder points for all affected SKUs
  • Fill rate drops below 95% → investigate which SKUs generated partial shipments and tighten their reorder points
  • Turnover below 3× for a product category → identify slow-moving SKUs and plan clearance or discontinuation
  • Carrying cost exceeds 25% of inventory value → reduce next PO quantities and increase order frequency

Without decision rules attached, KPIs become dashboard decoration. With decision rules, they become a systematic process for catching inventory problems early — before they become revenue problems.