Gross margin %
Profitability per sale
Margin earned on each dollar of sales, with no reference to how much inventory was needed to generate it. Two classes can share a margin rate and still be very different investments.
GMROI = gross margin dollars ÷ average inventory at cost. Gross margin dollars is net sales minus COGS. Take a class doing $400,000 in net sales against $240,000 COGS: gross margin is $400,000 − $240,000 = $160,000, a 40% gross margin rate.
If average inventory at cost across the period was $80,000, GMROI is $160,000 ÷ $80,000 = 2.0. Read that as $2.00 of gross margin returned for every $1.00 invested in inventory — above the roughly break-even 1.0 mark where margin dollars merely equal the cost of the stock carried.
Gross margin dollars ÷ average inventory at cost.
COGS ÷ average inventory at cost.
Guards against zero or negative average inventory: if average inventory at cost is zero, GMROI, margin return per $100, and turnover show a dash instead of dividing by zero.
| Class | Net sales | Gross margin % | Gross margin $ | Avg. inventory at cost | Turnover | GMROI |
|---|---|---|---|---|---|---|
| Class A | $500,000 | 40% | $200,000 | $50,000 | 4.0x | $4.00 |
| Class B | $500,000 | 40% | $200,000 | $100,000 | 2.0x | $2.00 |
Both classes earn the same $200,000 gross margin at 40%, but Class A holds half the average inventory at cost, doubling both turnover and GMROI.
| Scenario | Gross margin % | Avg. inventory at cost | GMROI | Read |
|---|---|---|---|---|
| Hold full price, slow tail | 40% | $100,000 | 2.0x | Margin stays high, but aged stock inflates inventory |
| Take 30% break on 40% of units | 34% | $70,000 | 2.4x | GMROI rises because inventory falls faster than margin |
| Deep 50% clearance on last 20% | 28% | $45,000 | 3.1x | Very high GMROI, but check whether the remaining units hit the exit target |
These are illustrative. The planner lets you enter the actual sell-through lift at each depth and read the real GMROI impact, not just the margin percentage.
Directional planning ranges for orienting a target-setting discussion, not sourced industry benchmarks. Replace them with your own class-level GMROI once you have enough season history.
| Category | Typical GMROI range | Why the range sits there |
|---|---|---|
| Fast fashion / trend apparel | 2.5x – 4.0x | High turns and decent margins compensate for frequent markdowns |
| Boutique apparel | 2.0x – 3.5x | Smaller inventory bases, fewer SKUs, but fewer turns than fast fashion |
| Footwear | 2.0x – 3.0x | Size-run risk can push clearance deeper, lowering GMROI |
| Basics / replenishment | 2.5x – 4.0x | Lower margins but very steady turns and less markdown exposure |
| Home goods / furniture | 1.5x – 2.5x | Slower turns and higher average inventory at cost |
| Fine jewelry / luxury | 1.2x – 2.0x | Very low turns, but high margin per unit carries the ratio |
A GMROI below 1.0x means gross margin dollars do not cover the cost of the inventory carried. Above 1.0x is a floor, not a target — the right target depends on your cost structure and return-on-capital requirement.
Where GMROI sits
Each metric answers something the others don't. Reading them together is what makes a markdown decision defensible.
Profitability per sale
Margin earned on each dollar of sales, with no reference to how much inventory was needed to generate it. Two classes can share a margin rate and still be very different investments.
Velocity of the stock
COGS ÷ average inventory at cost — how many times stock cycles through in a period, with no reference to how profitable each cycle was.
Return on the investment
Combines both: gross margin dollars ÷ average inventory at cost. It's the number that tells you whether the capital tied up in a class is earning its keep, which is the real question behind hold-or-markdown.
A markdown lowers gross margin dollars because each unit sold at the reduced price earns less — that pulls GMROI down. At the same time, the faster sell-off it drives lowers average inventory at cost over the period — that pulls GMROI up. Which effect wins depends on how much velocity the price change actually buys, which is exactly what a sell-through assumption in a markdown plan is trying to estimate.
That's why a deep, well-timed markdown can leave GMROI higher than holding at full price into a slow tail: the margin given up is real, but so is the capital freed from unsold stock sitting at cost.
Isolate the velocity half of the GMROI equation.
See how a price break moves margin dollars and ending inventory together.
The margin-rate half of GMROI, isolated.
GMROI alongside the other core merchandising ratios.
Answers
Model sell-through and price breaks by period and read out ending inventory and margin dollars — the two inputs GMROI actually depends on. Then check the result against the category ranges above.
Free, no sign-up, with CSV export and a shareable link. Pro ($29/mo) saves named season plans, imports inventory CSVs, and prints a decision memo.