← The Journal · Inventory Health
Deep Dive

Dead stock is cash you already spent. Here's how to find it.

It never announces itself. It just sits there, at full cost, until a markdown does the announcing. A field guide to catching dead stock by sell-through, not by guesswork.

Field Notes8 min readJul 2026
Inventory Pulse dashboard: four health bands (Fast 1,135, Medium 9,557, Slow 25,787, Dead Stock 7,358), a sell-through distribution donut with a 17% red slice, and top-moving SKUs
Inventory Pulse: this season's SKUs sorted into four sell-through bands. In the distribution, the red slice (17%) has flatlined at zero.

Dead stock is the least dramatic problem in retail. There's no stockout, no empty peg, no angry customer at the counter. A few thousand SKUs simply stop selling, and because nothing visibly breaks, nobody goes looking. By the time someone does, the only lever left is the markdown pen. And by then you're not managing inventory anymore. You're managing loss.

In the chart above, 17% of everything launched this season has gone to zero. That is not clutter or a tidiness problem. It's working capital you already converted into product, now sitting on a shelf, earning nothing and quietly aging toward a discount. The good news: dead stock is one of the few inventory problems you can see coming, provided you measure the right thing.

"Old" is the wrong test for dead stock

The instinct is to hunt dead stock by age. Aging reports bucket inventory into 30-, 60-, 90-, and 180-day piles and flag whatever's oldest. It's a reasonable starting point, and it's how most teams still do it. But age on its own misleads in both directions.

A year-round basic that's sat on the floor 200 days and still turns steadily isn't dead; it's a workhorse. A fashion launch that's 40 days old at zero sell-through is already dead. It just hasn't aged far enough to trip your report yet. Time tells you how long something has been sitting. It doesn't tell you whether it's moving.

Sell-through rate = units sold ÷ units received. In apparel a healthy full-price rate lands around 60–80%; fast fashion pushes past 85%, basics run 65–70%. Anything sliding under ~40% is overstock warning territory. It's the cleanest single read on whether a buy is working.

That's why the view we're using, Inventory Pulse, doesn't sort by age at all. It sorts every SKU into four bands by sell-through velocity:

The real cost is cash, not clutter

It's tempting to file dead stock under housekeeping: crowded backrooms, messy shelves. The real cost sits on the balance sheet, and it compounds every month it goes unaddressed.

None of this ever shows up as a crisis. It shows up as a slightly worse margin, every single month, that no one person is on the hook for.

Finding every dead SKU in one click

A percentage is a headline, not a to-do list. The reason banding by sell-through matters is that the headline is also a filter. Click the Dead Stock band and those 7,358 abstract SKUs become a working list: barcode, product, division, MRP, launch date, the store and warehouse units still sitting, and the revenue riding on each.

Filtered table of 7,358 Dead Stock SKUs, each at 0% sell-through, named to the barcode with revenue and units on hand
One click on the Dead Stock band lists all 7,358 SKUs: every one at 0% sell-through, named to the barcode, with the stock and revenue tied up in each.

Sort that list by units on hand to see where the cash is trapped. Filter by region or store to learn whether something is dead everywhere or just in the wrong doors. Group by division to see whether the problem is a whole category or a one-off. That last distinction is the one that changes the decision:

From a list to a plan

Once the dead SKUs are named, the moves are boring in the best possible way:

None of this needs a data-science team. It needs the dead list sitting in front of the person who buys and the person who allocates, every week, before the markdown clock runs down.

You can't discount your way out of a buying problem. But you can see it early enough to stop repeating it.

Dead stock is the one inventory problem you can almost always catch in time, provided you're measuring the right thing. Age tells you what's old. Sell-through tells you what's dead. And the gap between those two, caught in week six instead of at end-of-season review, is the gap between a quiet transfer and a painful write-down.

What is dead stock?

Inventory that has effectively stopped selling and is unlikely to move at full price, tying up cash, space and attention. In sell-through terms, it's stock sitting at or near 0% well into its selling window.

How is dead stock different from slow-moving stock?

Slow-moving stock is still selling, just under target (here, 1–29% sell-through) and often recoverable with a nudge. Dead stock has flatlined at 0%. The question is no longer how to accelerate it, but how to exit it cleanly.

What sell-through rate counts as "dead"?

There's no universal line, but a practical rule: healthy is ~60%+, warning is under ~40%, and 0% deep into the season is dead. Set the threshold by category, since basics and fashion behave very differently.

How often should you review dead stock?

Monthly at a minimum, weekly in-season. The cost compounds quietly, so the value is entirely in catching it early. The markdown needed in week six is a fraction of the one at end-of-season.

About Retalp

Embedded AI agents for retail operations.

Retalp builds AI agents that run real supply-chain and retail workflows (demand forecasting, replenishment, allocation and inventory health) on top of the systems you already use. The Journal is where we write about the operational problems underneath the software. The screens in this piece are from Inventory Pulse, our sell-through and inventory-health module.

See this on your assortment.

Inventory Pulse runs on your own SKUs, stores and sell-through. Book a walkthrough and we'll show you your dead-stock list on your data.