One Eightx client had $400,000 locked in beanie stock that required $2–3 million in additional sales just to break even on the position. The product wasn't the problem — the catalog was.
Ecommerce SKU rationalization is the process of deciding which products to keep, which to watch, which to fix, and which to cut. Done right, it frees cash, improves margins, and — counterintuitively — often grows revenue. Here's the framework to do it.
Why Most Ecommerce Brands Carry Too Many SKUs
The math is consistent. Internal data across multiple catalog audits shows roughly 20% of SKUs drive 80% of profit — a pattern Shopify's retail research confirms across product-based businesses. The remaining 80% of a typical catalog is either marginally contributing or actively destroying value.
How does it get this bad?
Minimum order quantities. Your supplier's MOQ forces you to buy 1,000 units of a new colorway. You sell 400. The other 600 sit in your 3PL at $0.75/cubic foot per month.
Optimism at launch. The product made sense on the whiteboard. The market disagreed. But you already bought inventory, so you keep it live and hope.
Emotional attachment. The founders love a product — it was the original SKU, a personal passion project, or a key customer mentioned they like it. It stays on the website while it quietly eats working capital.
No visibility. At Bow Wow Labs — a turnaround engagement where revenue had dropped from $300K to $200K per month — there was zero SKU-level profitability analysis. Every budget decision was a guess because nobody knew which products were actually making money.
So what? If you're doing $5M–$20M in revenue and haven't run SKU-level profitability in the last 12 months, you almost certainly don't know which third of your catalog is subsidized by the other two-thirds.
The Real Cost of Carrying Dead SKUs
For a $10M ecommerce brand, carrying costs typically run 20–30% of inventory value annually — covering 3PL storage, insurance, obsolescence risk, capital cost, and the operational overhead of managing more SKUs: more purchase orders, more listings, more customer service load, more stockouts on winners because cash is trapped in losers. Deloitte's supply chain research places total carrying cost for consumer goods brands at the higher end of this range when obsolescence is factored in.
A 30% reduction in slow-moving inventory on a $10M brand can unlock $1M–$3M in working capital. That's not a rounding error — that's a hiring budget, a major ad push, or a year of debt service.
The 2025–2026 tariff environment makes this more urgent. Here's what that means in practice: take a SKU that landed at $12 COGS and retailed at $35, giving you a 66% gross margin before channel fees. Add a 25% tariff and that COGS moves to $15. Same retail price, same channel fees — and your gross margin just fell from 66% to 57%. On Amazon, where you're paying 15% referral fees, 12% FBA, and 10% PPC, that same SKU's contribution margin drops from roughly 29% to 20%. Still marginal. But if the pre-tariff version was already in your Watch bucket at 29% CM, the post-tariff version just became a Fix — and it happened without you touching a thing.
Dead inventory isn't just expensive. Under today's tariff environment, the cost of holding the wrong product has materially increased since 18 months ago.
Every month you hold a slow-moving SKU sourced from China, you're compounding a problem that's already gotten more expensive.
The SKU Rationalization Framework: Keep / Watch / Fix / Cut
Every SKU gets placed in one of four buckets based on a scoring matrix. Here's how to build it.
Step 1: Pull the Data
You need, at minimum, the following for each SKU:
- Revenue (trailing 12 months and trailing 3 months) — both matter; trailing 3M catches trend direction
- Gross margin — revenue minus COGS, no excuses for not having this
- Contribution margin by channel — where most brands undercount; a 50% GM product on Amazon with 15% FBA fees and 12% ad spend is a 23% CM product, not 50%
- Days of inventory on hand (DOH) — current units divided by average daily units sold
- Inventory value at cost — how many dollars are physically tied up
- Sales trend — is trailing 3M above or below trailing 12M run rate?
If you're on Shopify, most of this lives in your reports or in an analytics tool like Triple Whale or Glew. If you're on a 3PL, pull the inventory aging report. If your data is scattered, a two-week audit is the investment — it's the first thing we do in every Eightx fractional CFO engagement.
Step 2: Score Each SKU
| Metric | Keep | Watch | Fix | Cut |
|---|---|---|---|---|
| Days of Inventory on Hand | <45 days | 45–90 days | 90–150 days | >150 days |
| Contribution Margin (post-channel fees) | >25% | 15–25% | 5–15% | <5% or negative |
| Sales Trend (T3M vs T12M) | Accelerating | Flat | Decelerating | Falling off cliff |
| Inventory Value at Cost | Low relative to velocity | Moderate | High relative to velocity | Excessive |
The tiebreaker rule: Contribution margin is the veto metric. A SKU with negative or near-zero CM is always a Cut, regardless of how it scores on DOH or trend. High velocity on a money-losing product doesn't solve the problem — it accelerates it. You cannot reorder your way to profitability on a negative-CM SKU, and strong trend data on a loser is the most dangerous kind of false signal. Everything else in the matrix is context. CM is the floor.
For everything above zero CM: a SKU that scores Keep on three of four metrics is a Keep. Two or more Cut scores means it's a Cut. Watch and Fix require judgment — specifically, the decision tree in Step 3.
These thresholds are calibrated for $5M–$50M ecommerce brands. Enterprise retailers face different dynamics — store resets, vendor relationships, assortment breadth requirements. At your scale, these numbers reflect the actual cash reality of your business.
Step 3: Apply the Decision Rules
Keep: High velocity, positive trend, strong contribution margin. Protect these. Don't let a winning SKU stock out because cash is trapped in losers. These SKUs deserve priority in your inventory financing and reorder planning. See our inventory financing guide for how to fund them correctly.
Watch: Reasonable margins, but slowing trend or elevated DOH. Set a 90-day deadline. If the trend doesn't reverse, these become Cuts.
Fix: This is where most founders stall — and where emotional attachment to inventory does the most damage. A Fix SKU has one job: prove it can become a Keep within a defined window. Before you assign it Fix status, run this filter first.
Ask three questions in order:
- Is there a specific, executable fix available right now? Reprice it, renegotiate COGS with your supplier, or shift it to a higher-margin channel. Not "we could explore" — a concrete action you can complete within 30 days.
- Is the fix cost under $5,000 and under four weeks of your team's time? If the fix requires a supplier renegotiation that takes three months, a product reformulation, or a new Amazon listing strategy that needs a dedicated contractor, the economics rarely pencil out on a marginal SKU.
- Is the volume large enough to matter? Fixing a SKU that generates $8,000 in annual revenue isn't worth the same effort as fixing one that generates $180,000.
If you can answer yes to all three, give it a hard 60-day window with a specific CM target — not "let's see how it performs." If you can't answer yes to all three, it's a Cut. "Give it more time" without a specific trigger condition is how emotionally attached SKUs survive for 18 months past their expiration date.
Cut: High DOH, declining trend, negative or near-zero CM after channel fees. These SKUs need to go. The question isn't whether to cut — it's how to exit the inventory position with the least margin destruction.
Step 4: Exit Cleanly — Don't Destroy Margin on the Way Out
Options, roughly in order of margin preservation:
- Bundle slow-movers with fast-movers. A $40 product not moving might sell as a $65 bundle with a $30 fast-mover. You recover closer to full margin on both.
- Flash sale with a hard end date. Take 20–30% off for a defined window. Permanent markdowns train your customer base to wait.
- B2B or wholesale liquidation. You'll get 20–40 cents on the dollar, but you recover cash and free warehouse space.
- Amazon Outlet or FBA liquidation. Recovery rates are low (~10–15% of retail), but the process is hands-off and the capital comes back.
- Write it off. Sometimes inventory is genuinely worthless and the tax benefit is the best available outcome. Don't avoid this out of pride.
What you don't do: sit on it and hope. Every month you hold it, the carrying cost clock is running.
What Happens to Revenue When You Cut?
The common fear: "If I cut 30% of my SKUs, I'll lose 30% of my revenue."
Here's what it actually looks like at operator scale. At Bow Wow Labs, once SKU-level profitability was built and the catalog was scored, the team identified a cluster of SKUs that were generating revenue but consuming disproportionate cash — high DOH, thin margins, and channel economics that looked fine on gross margin but were negative after Amazon fees and PPC. Cutting and rationalizing those SKUs didn't crater revenue. It concentrated demand on the remaining catalog, reduced the operational noise of managing underperformers, and — critically — freed up the working capital to properly fund reorders on the SKUs that were actually growing. Revenue stabilized and margins improved because the winners finally had inventory behind them.
This is consistent with the pattern we see across catalog audits: removing underperformers simultaneously improves customer experience (fewer confusing choices), sharpens operational focus (fewer POs, fewer listings, fewer stockouts on winners), and reallocates capital to what actually works. McKinsey's research on assortment optimization finds similar outcomes — SKU reduction programs at consumer goods companies typically improve gross margin by 2–4 percentage points while maintaining 90–95% of revenue. The SKUs you cut rarely take revenue with them. The SKUs you keep finally get the resources to grow.
The risk isn't that cutting products costs you revenue. The risk is that keeping the wrong products starves the ones that could.
The Contribution Margin Layer Most Brands Miss
Gross margin is not contribution margin — and confusing the two is where rationalization decisions go wrong.
A product with 52% gross margin looks healthy. But if 60% of its revenue runs through Amazon at 15% referral fees plus 12% FBA fees, and you're spending another 10% on PPC to generate that volume, your actual contribution margin is closer to 15%. That's a Watch/Fix product, not a Keep.
Channel-level contribution margin — revenue minus COGS minus channel fees minus channel-specific ad spend — is the correct metric for every rationalization decision. Full breakdown of how to build this is in our contribution margin by channel post.
How Often Should You Run This Process?
$5M–$20M brand: Quarterly. Pull the data, score every SKU, move things between buckets as conditions change. A Keep in Q1 can become a Watch in Q3 if a competitor launched a substitute and your velocity dropped 35%.
$20M–$50M brand: Monthly on flagged SKUs, new launches, and anything above 90 DOH. Full catalog review quarterly.
The goal isn't perpetual product-cutting mode. It's a systematic, non-emotional process that catches problems before $400K is locked in beanies — or before a SKU you launched six months ago has quietly accumulated 200 days of supply.