The inventory turnover ratio is the number of times a business sells through and replaces its inventory in a period. For Shopify brands, it's calculated as cost of goods sold (COGS) divided by average inventory value. A higher ratio means faster sell-through; a lower ratio means cash is stuck in stock that isn't moving.
Every Shopify operator has heard of inventory turnover. Most calculate it wrong. The textbook formula is simple, but the inputs — what counts as COGS, what counts as inventory, and which SKUs to look at — are where DTC brands lose the plot. This guide walks through how the 100+ Shopify stores Ottit closes books for actually use this ratio to make decisions.
What Is the Inventory Turnover Ratio?
Inventory turnover ratio is a financial metric that measures how efficiently a company converts inventory into sales. It equals cost of goods sold divided by average inventory for the same period. A Shopify brand with $2M in annual COGS and $400K in average inventory has a turnover of 5, meaning it sells through its stock five times per year.
The standard formula
That's the version Investopedia teaches. It's correct, and it's also where most Shopify brands stop. The problem: the two inputs — COGS and average inventory — are almost always wrong in DTC accounting systems unless someone has actively cleaned them up.
A turnover ratio built on dirty COGS and a snapshot inventory balance isn't a metric. It's a number that happens to be a decimal.
Takeaway: Before trusting any turnover figure, confirm two things: COGS includes landed cost, and average inventory uses more than a two-point snapshot.
Why Does Shopify COGS Usually Get This Wrong?
Shopify's native COGS reporting pulls from the unit cost field on each product variant. That field rarely includes freight in, duties, 3PL receiving fees, or inspection costs. The result: Shopify reports understate true COGS by 15–30% for most importing brands, which inflates the inventory turnover ratio and hides margin problems.
What Shopify's unit cost field actually captures
- The invoice price the supplier charges per unit
- Sometimes a manually adjusted figure if the operator remembered to update it
- Nothing else by default — no freight, no duties, no 3PL inbound fees
What true landed cost includes
- Supplier invoice (FOB price)
- International freight (ocean or air)
- Duties and tariffs
- Customs brokerage fees
- Domestic trucking to the 3PL
- Inbound receiving fees at the warehouse
- Inspection or QC costs if applicable
When Ottit rebuilds COGS for a new Shopify client, the landed cost per unit usually comes in 18–28% higher than the Shopify variant cost. That single fix can drop a reported turnover ratio from 8x to 6x — a more honest number that often triggers different decisions about reorder cadence.
We covered the mechanics of capturing all of this in the landed cost playbook. For the turnover ratio to mean anything, that work has to happen first.
Takeaway: Don't pull COGS from Shopify Analytics for turnover math. Pull it from the accounting system, where landed cost has been properly capitalized into inventory and released to COGS at the unit level.
How Do You Calculate Average Inventory for a Shopify Brand?
Average inventory is the mean inventory value across a period. The simple version averages beginning and ending balances. For Shopify brands with seasonal sales, promotional spikes, or container-receipt timing that bunches stock in certain months, a 12-month rolling average is more accurate and produces a turnover ratio that reflects reality.
Three ways to calculate average inventory
| Method | Formula | Best for |
|---|---|---|
| Two-point average | (Beginning + Ending) ÷ 2 | Steady-state brands, year-over-year comparison |
| Quarterly average | Sum of 4 quarter-end balances ÷ 4 | Brands with modest seasonality |
| 12-month rolling average | Sum of 12 month-end balances ÷ 12 | Seasonal apparel, BFCM-heavy brands, brands receiving large container shipments |
A swimwear brand we work with shows the problem with two-point averaging clearly. Their January 1 inventory is $180K (post-holiday low). Their December 31 inventory is $220K (right before peak shipping). The two-point average says $200K. The actual 12-month average is $340K because stock builds heavily from March through July. Using $200K gives a turnover of 9x. Using $340K gives 5.3x. The 5.3x is the real number.
Takeaway: Seasonal Shopify brands should run turnover on a 12-month rolling average. The extra five minutes of math prevents a 70% overstatement of efficiency.
What Counts as Inventory — On-Hand, In-Transit, or Committed?
This is where most Shopify brands get the denominator wrong. Inventory on the balance sheet should include all units the business owns, regardless of physical location. That means on-hand stock at the 3PL plus in-transit units the brand has paid for or holds title to, minus units committed to orders that haven't shipped. Mixing these categories distorts the inventory turnover ratio in both directions.
The three inventory buckets
| Bucket | What it means | On balance sheet? |
|---|---|---|
| On-hand | Physically at the 3PL or warehouse, available to ship | Yes |
| In-transit (FOB origin) | Left the supplier, brand holds title, not yet received | Yes |
| In-transit (FOB destination) | On the water but title doesn't transfer until receipt | No — still the supplier's |
| Committed | Allocated to unshipped customer orders | Yes (until shipment), but flagged separately |
| Consigned out | At an influencer, retailer, or pop-up but unsold | Yes |
| Sold but unshipped (Recharge pre-orders) | Customer paid, goods haven't left | Yes — deferred revenue offsets |
Most Shopify brands count on-hand only. That works fine for a brand with a single 3PL and no container shipments. The moment a brand starts importing, the in-transit balance becomes material. A typical mid-sized DTC brand we work with has $150K–$400K of inventory in-transit at any given moment. Excluding that from average inventory inflates the turnover ratio by 20–40%.
Subscription brands using Recharge have a different wrinkle. Recurring orders create committed inventory that should be reserved against on-hand stock for operations purposes, but the units are still on the balance sheet until they ship and trigger the revenue recognition entry.
A realistic month-end inventory journal entry
When a $42,000 container of finished goods clears customs and the brand takes title at the port (FOB origin terms), the journal entry recognizes the inventory even though the goods haven't reached the 3PL yet.
When the container arrives at the 3PL and is received, the inventory moves from in-transit to on-hand. No P&L impact. Both balances feed into the average inventory calculation that drives turnover.
Takeaway: Break inventory into on-hand, in-transit, and committed in the chart of accounts. The turnover ratio is meaningful only when the denominator reflects everything the business owns, not just what's sitting at the 3PL.
Why SKU-Level Turnover Beats Blended Turnover
Blended turnover is a single ratio across the entire catalog. It hides the difference between bestsellers and dogs. SKU-level turnover calculates the ratio per variant, which is the only view that supports real catalog decisions: what to reorder, what to discount, what to discontinue. A blended turnover of 6x can mask a portfolio where 30% of SKUs turn 12x and 40% turn under 2x.
What SKU-level turnover reveals
Take a hypothetical 50-SKU beauty brand with $3M in annual COGS and $500K in average inventory. Blended turnover is 6x. But the SKU-level breakdown tells a different story:
| SKU tier | % of catalog | % of COGS | % of avg inventory | SKU-level turnover |
|---|---|---|---|---|
| A (hero SKUs) | 10% | 55% | 20% | 16.5x |
| B (steady sellers) | 30% | 32% | 30% | 6.4x |
| C (slow movers) | 40% | 12% | 35% | 2.1x |
| D (dead stock candidates) | 20% | 1% | 15% | 0.4x |
The blended 6x looks fine. The C and D tiers — 60% of the catalog tying up 50% of working capital — are the real story. A typical action plan in this situation: discount C-tier to clear, write off D-tier and reclaim warehouse slotting fees, and double the reorder quantity on A-tier.
How to build SKU-level turnover in practice
- Export 12 months of unit sales per SKU from Shopify Admin or an ERP like Cin7.
- Multiply by landed unit cost (from the accounting system, not Shopify) to get COGS per SKU.
- Pull the month-end on-hand units per SKU for each of the 12 months.
- Multiply by landed unit cost, then average across the 12 months to get average inventory value per SKU.
- Divide COGS per SKU by average inventory value per SKU.
- Sort descending and bucket into A/B/C/D tiers.
For brands running an ERP like Cin7, the unit history is queryable directly. For brands still on Shopify-native inventory, the data lives across Shopify Admin, the 3PL portal, and the accounting system. A2X or Synder payout sync covers the revenue side, but neither builds SKU-level turnover automatically. That's a spreadsheet job, run monthly.
Takeaway: Blended turnover is a board-meeting metric. SKU-level turnover is an operating metric. Brands that run only the first one keep ordering dead stock.
What Are Healthy Inventory Turnover Benchmarks in 2026?
Healthy inventory turnover varies sharply by category. Across the 100+ Shopify brands Ottit closes books for, apparel brands typically run 4–6 turns per year, beauty 6–8, consumables and supplements 8–12, and accessories 5–7. A turnover under 2 in any category usually signals overstock or dying SKUs. Above 15 often means understocking and lost sales.
Category benchmarks across the Ottit book of business
| Category | Healthy range (turns/yr) | Equivalent DIO (days) | Common failure mode |
|---|---|---|---|
| Apparel — seasonal | 4–6 | 61–91 | Carrying out-of-season SKUs too long |
| Apparel — basics | 5–7 | 52–73 | Color/size overstock |
| Beauty & skincare | 6–8 | 46–61 | Expiration dating; LTO overstock |
| Supplements/consumables | 8–12 | 30–46 | Stockouts during ad scaling |
| Accessories & hard goods | 5–7 | 52–73 | Slow-moving variants |
| Food & beverage (shelf-stable) | 10–15 | 24–37 | Expiration write-offs |
| Home goods / furniture | 3–5 | 73–122 | Containers landing during slow months |
These are operating ranges, not targets. A turnover of 4x for a basics apparel brand could be excellent if the brand operates with 90-day air-freight lead times and intentionally holds safety stock. The right benchmark is the brand's own historical turnover plus the financial cost of stockouts.
There's no universal good turnover number. There's only the turnover that lets the brand fund its next purchase order without raising capital.
Turnover connects directly to working capital. A brand running 4x turnover needs three months of inventory funded at all times. At 8x turnover, that drops to six weeks. The difference is enormous for cash flow. We get into the mechanics in the working capital playbook.
Takeaway: Pick benchmarks by category, then compare against the brand's own trailing 12 months. A turnover that's improving quarter over quarter matters more than hitting an industry average.
How Does Inventory Turnover Connect to Cash Flow?
Inventory turnover is the single biggest lever in DTC cash flow. Every dollar of inventory is a dollar that can't be spent on ads, payroll, or product development. Doubling turnover from 4x to 8x on a brand with $400K in average inventory frees roughly $200K of working capital — equivalent to a credit line, with no interest.
The cash conversion link
That $150,000 doesn't appear on the P&L. It shows up on the balance sheet as a reduced inventory balance and a higher cash balance. For brands financing inventory with Wayflyer or a Mercury line of credit, the interest savings alone can pay for the operational work of tightening the catalog.
Where turnover shows up in the cash flow statement
On the indirect-method cash flow statement, an increase in inventory is a use of cash. A decrease is a source. A brand that drops average inventory by $150K shows that as a +$150K line under "changes in operating assets" in the operating activities section. We walk through this in the cash flow statement playbook.
Takeaway: Treat the inventory turnover ratio as a cash flow metric, not just an efficiency metric. Every two turns of improvement on a $2M COGS brand frees roughly six figures of cash.
How Can a Shopify Brand Improve Its Inventory Turnover Ratio?
Improving inventory turnover means either selling existing stock faster or ordering less of what isn't moving. The first is a marketing and merchandising problem. The second is a planning and discipline problem. Most Shopify brands have more room on the second lever than the first.
Levers that actually move turnover
- Cut reorder quantities on B and C tier SKUs by 30–50% — most brands order in round-number cases out of habit, not demand.
- Discount or bundle slow movers before they become dead stock — a 25% markdown that clears stock in 60 days beats holding for full price for 180.
- Discontinue D-tier SKUs entirely — the slotting, accounting, and operational drag isn't worth the revenue.
- Pre-launch with a smaller initial buy — test demand at 500 units before committing to 5,000.
- Move from ocean to air freight on bestsellers — the higher freight cost is recovered by avoiding stockouts and over-ordering safety stock.
- Tighten the demand planning cadence — most brands plan quarterly when they should be planning monthly.
- Use attribution tools like Triple Whale to identify which SKUs are actually driven by paid acquisition versus organic — overstock often follows campaigns that overstate SKU-level lift.
What doesn't work
- Pure forecast accuracy improvements — demand is too lumpy in DTC for forecasts to drive turnover at the SKU level.
- Just-in-time ordering at the supplier — most overseas suppliers have 60–120 day lead times that make true JIT impossible.
- Increasing ad spend to move existing stock — this often produces revenue but lowers contribution margin enough to negate the turnover gain. The contribution margin playbook covers the math.
Takeaway: The fastest turnover improvements come from buying less, not selling faster. Audit the bottom 30% of the catalog by turnover every quarter and cut order quantities aggressively.
What Are the Limitations of the Inventory Turnover Ratio?
The inventory turnover ratio is useful but blunt. It treats all inventory dollars as equivalent, ignores the cost of stockouts, and can be gamed by holding less safety stock at the expense of customer experience. Brands using turnover as their only inventory metric end up with high ratios and angry customers waiting on backorders.
What turnover doesn't measure
- Stockout frequency and lost-sale dollars — a turnover of 15x with 8% of demand unfilled is worse than 8x with 99% fill rate.
- Margin per turn — fast turnover on low-margin SKUs is less valuable than moderate turnover on hero SKUs.
- Carrying cost — storage, insurance, and capital cost of inventory aren't in the ratio.
- Obsolescence risk — a turnover of 6x looks fine until the brand realizes 20% of stock will be obsolete in 90 days due to a packaging refresh.
- Returns and reverse logistics — Shopify brands with 15%+ return rates need to net returns out of both COGS and inventory before calculating.
Takeaway: Pair turnover with fill rate, gross margin per SKU, and weeks of supply. A four-metric dashboard at the SKU level gives a complete operating picture that turnover alone can't.
How Should Ottit Clients Track This Each Month?
Monthly tracking for inventory turnover lives at three levels: brand-level on the management P&L, category-level for merchandising review, and SKU-level for purchasing decisions. The same underlying data feeds all three — landed unit cost, monthly unit sales, and month-end on-hand by SKU.
The monthly close checklist
- Close the books with landed cost properly capitalized — freight, duties, and 3PL inbound fees go into inventory, not into period expense.
- Pull month-end inventory by location (on-hand at each 3PL plus in-transit).
- Calculate trailing-12-month COGS from the accounting system.
- Calculate 12-month rolling average inventory value.
- Compute brand-level turnover and compare to the prior three months.
- Refresh the SKU-level turnover table quarterly and flag A/B/C/D tier movement.
- Review with the purchasing team before the next PO cycle.
For brands on QuickBooks or Xero, the close itself is the bottleneck. Without clean monthly close discipline, the inputs to turnover are stale by the time anyone looks at them. We use the A2X documentation for Shopify accounting as a reference for how payout-level sync works, though for the 100+ Shopify stores Ottit closes books for, we run revenue recognition through Bookkeep, which handles the journal-entry-level sync into QuickBooks more cleanly. The Shopify Help Center guide to payouts covers the underlying payout mechanics if anyone wants to understand what's actually getting reconciled.
Takeaway: Inventory turnover is a monthly close output, not a one-off spreadsheet. Build it into the management reporting package so the purchasing team sees it before every reorder decision.
Sources
- the Shopify Help Center guide to payouts
- the Recharge subscription platform documentation
- Ottit internal benchmarks across 100+ Shopify brand engagements (apparel, beauty, supplements, accessories, home goods), trailing 12 months through 2026-06.