Something in your store isn't selling. You've noticed it for a few weeks now, and the instinct is to discount it — clear the space, free the cash, move on.

Sometimes that's exactly right, and waiting is costing you real money. But quite often the product isn't a price problem at all, and a discount will do nothing except make you poorer on the units you were going to sell anyway.

Three questions tell you which situation you're in. They take about ten minutes per product, and they'll save you from the most expensive reflex in retail.

Question 1: Is it actually slow?

"Slow" only means something relative to what normal looks like for that kind of product. Two units a month is dying for a phone case and perfectly healthy for a sofa.

The useful measure is days of supply: how long your current stock would last at the rate you're currently selling.

Days of supply

Days of supply = units on hand ÷ (units sold per day)

60 units on hand, selling 0.5 a day, gives you 120 days of supply. Whether that's fine or alarming depends entirely on the category.

Typical days-on-hand ranges vary enormously by sector — benchmarks anchored to retailer filings put grocery around 23–30 days, fashion and apparel anywhere from 61 to 183 days, and furniture 91–183 days. A general rule of thumb used across ecommerce is that a SKU which hasn't earned its space in about 90 days needs a decision, but calibrate that to your own category before you act on it.

The point of this step is to filter out the products that merely feel slow. If you're inside the normal range for your category, you don't have a problem to solve yet.

Question 2: Is price the reason?

This is the question almost nobody asks, and it's the one that decides whether a markdown will work at all. A product can stop selling for four quite different reasons, and only one of them responds to a discount.

Your Shopify analytics already has what you need: sessions on the product page, add-to-carts, and completed orders. The pattern tells you the diagnosis.

What you see The actual problem What to do
Almost no page views Nobody knows it exists Merchandising, not price
Good views, few add-to-carts They looked and declined Price is a real suspect
Add-to-carts, few orders Checkout, shipping cost, trust Fix the checkout, not the price
Views but the size they want is gone Broken size or variant curve Restock or delist, don't discount

The second row is the classic markdown signal, and it's genuinely diagnostic: people are finding the product, looking at it, and deciding no. Price is one of the few remaining explanations.

The first row is where merchants waste the most money. Discounting a product that gets 12 views a month doesn't produce sales, because a lower price is only persuasive to someone who sees it. You've cut your margin and changed nothing. Fix the visibility — collections, search, internal links, ads — and you may discover the product sells fine at full price.

One check worth doing first

Look at whether the best-selling variant is in stock. A SKU whose most popular size sold out three weeks ago looks dead in aggregate while actually being starved. Discounting the remaining sizes just sells your odd stock cheaply and leaves you with the same hole.

Question 3: What is waiting actually costing you?

If you've established the product is genuinely slow and price is a plausible cause, the last question is whether to act now or hold. This is where merchants tend to be too optimistic, because the cost of waiting is invisible — nothing appears on a statement.

But it's real, and you can put a number on it. Carrying inventory — warehouse space, capital tied up, insurance, handling, obsolescence — is commonly estimated at 20–30% of inventory value per year. Call it roughly 2% of the product's value every month it sits.

The comparison that decides it

Cost of waiting three months: $6,000 of stock × 2% × 3 = $360, plus $6,000 of cash you can't spend on something that does sell.

Cost of a 15% markdown now: on $10,000 of retail value, about $1,500 of margin.

Here waiting a quarter is cheaper than discounting today — if there's a reason to believe the product sells later. If there isn't, you'll pay the $360, then take the markdown anyway, and the markdown will need to be deeper because you'll have less time.

That last sentence is the trap. Waiting is only rational when something is expected to change: a season arriving, a restock completing, a campaign launching. Waiting because you hope demand appears on its own is just paying rent on the same decision.

The five cases where you should wait

There's a sixth, softer case: products where discounting damages something you care about more than this quarter's turn. If your customers learn that everything eventually goes on sale, some of them will simply wait for it — and you've converted full-price buyers into discount buyers permanently.

The five cases where you should act now

Make it a monthly habit, not a panic

The merchants who handle this well don't agonise over individual products. They run the same short review on a schedule, so decisions happen on time instead of in a crisis.

A workable cadence, widely used in retail: set markdown review triggers at 60, 90 and 120 days of stock age. At each trigger a product gets one of four verdicts — hold, mark down, bundle, or discontinue — and "hold" requires a stated reason with a date attached. Once a month is enough for most catalogs.

The discipline matters more than the exact thresholds, because early decisions are cheap and late ones are expensive. A markdown taken with two months of runway can be shallow and staged. The same product with two weeks left needs a deep cut across all its stock. Same product, same demand — the only variable was how long you took to decide.

Start with what you already have on sale

Before the next review, it's worth knowing your current position. Our free Sale Section Checker reads your public catalog and shows how many products are discounted, the average markdown depth, and the deepest one running. No signup required.

Have this review done for you

PricePulse watches your catalog for exactly these signals — products aging past their normal turn, stock that outlasts its runway, items with traffic but no conversion — and turns each one into a staged plan with the projected revenue impact. It never changes a price itself; every recommendation links to the product in your Shopify admin for you to approve.

Try PricePulse free

The short version

Read next

Sources

  1. AisleStock — Inventory turnover & carrying cost benchmarks 2026 (days-on-hand by sector, carrying cost range)
  2. Shopify Retail — Slow-moving inventory: how to identify and manage it
  3. Onebeat — Markdown effectiveness in retail

Dollar figures in the worked examples are illustrative. Substitute your own stock value, margin and sales rate — the comparison is what matters, not the numbers.

About Matriks.io: We build AI-powered Shopify apps. PricePulse analyzes your sales history to find underpriced products and slow-moving stock, then recommends staged pricing changes with the projected revenue impact — recommendations only, applied by you.