GlossaryLineNow brief

GMROI (Gross Margin Return on Investment): Formula, Benchmarks, and the Procurement Connection

GMROI is gross margin divided by average inventory at cost — the single number that tells you how much return you generate per dollar tied up in stock. Formula, dual-driver expansion (GM% × turns), benchmarks by vertical, GMROI by ABC tier, how landed cost affects the denominator, and the procurement decisions that materially move the metric.

In a closed-loop procurement platform — where demand signals, purchase orders, supplier replies, receiving, and inventory updates all feed each other without retyping between steps — GMROI is the metric that captures whether those procurement decisions are generating a return on the capital tied up in stock. Inventory turnover tells you velocity. Gross margin tells you pricing. GMROI multiplies both signals into one number: how many dollars of gross profit did each dollar of average inventory investment produce?

GMROI (Gross Margin Return on Investment, sometimes written GM-ROI) is the ratio of gross margin to average inventory at cost for a given period:

GMROI = Gross Margin ÷ Average Inventory at Cost

Where:

  • Gross Margin = Net Revenue − COGS
  • Average Inventory at Cost = (Opening Stock at Cost + Closing Stock at Cost) ÷ 2

A GMROI of 2.4 means the business generated $2.40 of gross margin for every $1.00 of average inventory cost. A GMROI below 1.0 means gross margin is less than the inventory investment — the business is spending more to hold and cost goods than it earns in margin before operating expenses.

Quick answers

What is a good GMROI? A GMROI above 1.0 means the business is earning more gross margin than its average inventory cost. Most benchmarks consider 2.0–3.2 a solid result for retail. The right target varies by category: grocery turns inventory fast and typically achieves GMROI of 5–10+; specialty retail turns slower and typically reaches 1.5–2.5. Vertical benchmarks are direction, not compliance targets.

How is GMROI different from inventory turnover? Inventory turnover measures velocity only — how many times stock cycles through in a year. GMROI adds the margin dimension: two businesses with identical turns can have very different GMROIs if one earns 45% gross margin and the other earns 25%. GMROI = gross margin % × revenue-based inventory turns, so it rises when either margin or velocity improves.

What causes a low GMROI? Three root causes: margin compression (supplier price increases not offset by retail price adjustments), excess inventory in the denominator (over-ordering, ghost stock, dead stock accumulation), and slow sales of high-cost items (C-tier items sitting on shelf). Procurement decisions directly drive two of the three.

Is GMROI the same as ROI or ROIC? No. GMROI uses gross margin (before operating expenses) and average inventory at cost (before payables, overhead, and debt). It measures the gross return on the specific capital committed to stock — a narrower and more actionable metric for buyers and operators than ROIC, which captures the full capital structure.

The formula unpacked

GMROI = Gross Margin ÷ Average Inventory at Cost

Gross Margin is net revenue minus cost of goods sold:

Gross Margin = Net Revenue − COGS

For procurement purposes, COGS should reflect landed cost — purchase price plus freight, duties, insurance, and handling — not just invoice price. A product with a $10 invoice price and $2 of inbound freight and handling has a $12 landed cost. Using only $10 overstates gross margin and inflates GMROI. See Landed Cost: Formula, What It Includes for the full breakdown.

Average Inventory at Cost is the mean of opening and closing stock values in the period:

Average Inventory = (Opening Stock + Closing Stock) ÷ 2

For businesses with pronounced seasonal swings — holiday peaks, agricultural cycles, back-to-school buying — use the average of monthly closing stock values across the full period rather than just opening and closing. A single-point average for a retailer who triples inventory in November and liquidates in January will materially misstate the capital actually deployed during the year.

The dual-driver expansion:

GMROI can be expanded to expose its two component levers:

GMROI = Gross Margin % × Revenue-based Inventory Turns

Where:

  • Gross Margin % = Gross Margin ÷ Net Revenue
  • Revenue-based Turns = Net Revenue ÷ Average Inventory at Cost

This expansion makes visible what drives GMROI: improving margin %, increasing inventory velocity, or both. Most operators focus on margin % through pricing and supplier negotiation. But inventory turns — which procurement controls directly through ordering discipline, safety stock calibration, and MOQ management — are often the larger lever, because the denominator (average inventory) is more actionable than retail pricing in the short run.

Worked example

A specialty food retailer, full year:

InputValue
Annual Net Revenue$1,200,000
Annual COGS (at landed cost)$780,000
Gross Margin$420,000
Gross Margin %35%
Beginning inventory at cost (Jan 1)$90,000
Ending inventory at cost (Dec 31)$110,000
Average Inventory at Cost$100,000
GMROI = $420,000 ÷ $100,000 = 4.2

Via the dual-driver formula:

Revenue-based Turns = $1,200,000 ÷ $100,000 = 12×
GMROI = 35% × 12 = 4.2

The retailer earns $4.20 of gross margin per dollar of average inventory — a strong result for specialty food, driven by the combination of 35% margin and 12× annual turns.

Now suppose a supplier price increase raises COGS to $840,000 (GM% falls to 30%) without a retail price adjustment:

GMROI = $360,000 ÷ $100,000 = 3.6

A 5-point margin compression drops GMROI by 14%. If the operator simultaneously reduces average inventory to $85,000 through tighter reorder discipline:

GMROI = $360,000 ÷ $85,000 = 4.2

The tighter inventory position fully offsets the margin compression. This is the procurement lever in numerical terms: correct ordering keeps GMROI stable under supplier price pressure that retail pricing cannot immediately absorb.

Benchmarks by vertical

GMROI varies significantly by category, driven by the combination of gross margin structure and inventory velocity:

CategoryTypical GM%Typical Revenue-based TurnsTypical GMROI
Grocery / convenience25–35%15–30×4.0–10.0
Restaurant perishables†65–75%20–35×13–25
Bar / spirits†60–75%6–12×3.6–9.0
Fast-moving CPG retail35–50%6–12×2.1–6.0
Specialty retail (apparel, gifts)45–60%3–6×1.4–3.6
Light manufacturing (stocked components)30–45%6–10×1.8–4.5
Wholesale distribution20–30%6–12×1.2–3.6

†Restaurant and bar GMROI is typically computed against food or beverage cost (not total revenue), so those figures are not directly comparable to retail GMROI without adjusting for the different revenue basis.

A GMROI below 1.5 in specialty retail usually signals excess inventory in slow-moving C-tier items, margin compression from supplier price increases not yet passed through, or both. A GMROI above 5.0 in the same category can signal under-stocking — frequent stockouts mean sales that could have been made were not, which artificially suppresses the inventory denominator relative to the margin numerator.

GMROI by ABC tier

In a properly structured ABC inventory analysis, GMROI is not uniform across tiers. A-items — high annual usage value, typically high velocity — should generate the highest per-dollar return; C-items accumulating as dead stock should generate the lowest.

ABC TierExpected GMROI behavior
A-itemsHighest turns, typically highest GMROI. If A-item GMROI is below the category benchmark, investigate MOQ-driven over-stocking or supplier price increases not yet offset.
B-itemsModerate turns, moderate GMROI. Tighter safety stock calibration and MOQ negotiation are the primary improvement levers.
C-itemsLowest turns, lowest GMROI. Dead stock accumulation in the C-tail drags portfolio GMROI. Periodic write-off review is more effective than stricter replenishment controls at this tier.

The practical implication: computing GMROI by ABC tier surfaces where capital is working and where it is idle. If C-items represent 5% of catalog value but are tied up in $30,000 of slow-moving stock, the GMROI drag from that $30,000 in the denominator is identical to the drag from $30,000 of excess A-item safety stock — the formula does not distinguish slow movers from over-ordered fast movers. The ABC-tiered view separates them.

GMROI and landed cost

The GMROI denominator — average inventory at cost — should use landed cost per unit, not invoice price. The landed cost formula:

LC = P + F + C + I + H

(Purchase price + Freight + Customs/duties + Insurance + Handling)

Using invoice price in place of landed cost understates the actual inventory investment. A $10 item with $2 of inbound costs has a $12 landed cost per unit. If average inventory contains 1,000 units of this item, the denominator should include $12,000 — not $10,000. Using invoice price inflates GMROI by 20% for that item.

At portfolio level, businesses with significant inbound freight, import duties, or cross-dock handling routinely misread GMROI by 10–25% when they use invoice-only cost accounting. The correction is to capture landed cost at receiving — when goods arrive, log freight and handling alongside the supplier invoice and update cost-per-unit for every unit in the receipt. A closed-loop procurement platform that captures landed cost at receiving produces accurate GMROI automatically. One that records only the PO price produces an inflated figure that can lead to systematic over-buying justified by a return metric that isn't real.

GMROI and open-to-buy

Open-to-buy (OTB) sets the buying budget for a period. GMROI is the performance metric that should follow each OTB allocation: did the buying budget deployed in this period generate the expected return per dollar invested?

The connection is disciplined at two points:

Planning. When building a buying budget, GMROI targets by category inform how to allocate capital — more toward categories with historically high GMROI, less toward categories where excess inventory suppresses returns. A category running 1.8 GMROI warrants a tighter OTB allocation than one running 4.5; the capital works harder elsewhere.

Review. At period close, comparing actual GMROI to planned GMROI by category surfaces which buying decisions worked and which suppressed returns. Categories that systematically underperform their GMROI target are candidates for procurement policy review — buying timing, supplier pricing, or catalog mix.

What GMROI cannot tell you

It cannot pinpoint which items are dragging performance. A portfolio GMROI of 2.3 hides the A-item running at 8.0 and the twenty C-items running at 0.4. Per-item days of inventory on hand, ABC tier, and consumption rate give operators the per-SKU signal that GMROI averages away.

It cannot distinguish lean discipline from high-margin inefficiency. A grocery operator running 30% GM% and 12× turns (GMROI = 3.6) may outperform a specialty retailer running 55% GM% and 2× turns (GMROI = 1.1) on capital efficiency even though the specialty retailer earns more margin per unit sold. GMROI is a capital efficiency metric, not a unit-economics metric.

It is retrospective. GMROI reflects what happened during a period. Real-time days of inventory on hand per item — updated from every sale and every receipt — is what operators act on day to day. Use GMROI for trend analysis and capital-efficiency benchmarking by category; use per-item DOH for operational replenishment.

It does not capture cash timing. A business with net-60 payment terms and 30-day inventory turns is cash-flow positive per cycle. A business with prepaid terms and 45-day turns is cash-flow negative per cycle. GMROI and procurement capital forecasting answer different questions: GMROI measures gross margin per dollar of stock; capital forecasting models when cash must leave the account relative to when margin is earned.

How LineNow uses GMROI

LineNow computes portfolio GMROI from the same landed-cost inventory valuations and supplier-confirmed COGS it uses for per-item replenishment math. The metric is available through the analytics chatbot as a portfolio view by category, by location, and by ABC tier.

Two procurement behaviors inside the platform directly improve GMROI:

Reducing the denominator through ordering discipline. LineNow's POS-driven replenishment math — per-item consumption rate, lead-time-aware reorder point, and volatility-calibrated safety stock — reduces excess inventory without increasing stockout risk. Less average inventory in the denominator improves GMROI directly, holding margin constant.

Capturing landed cost at receiving. When freight and handling data is entered at the receiving workflow, LineNow updates cost-per-unit for items in that receipt and reflects the true landed cost in inventory valuation. This keeps the GMROI denominator accurate rather than understated, and prevents procurement decisions justified by an inflated return figure.

The practical arithmetic: an operator who reduces average inventory by 15% through tighter ordering discipline — without changing the product mix or retail pricing — improves GMROI by 17.6% (from $2.40 to $2.82 per dollar of inventory, all else equal). In a business with $200,000 of average inventory, that 15% reduction releases $30,000 of working capital, extends the capital forecast runway, and improves return per dollar deployed — driven entirely by procurement discipline, not pricing or product changes.

Start a 90-day free trial at linenow.co.

Related

Share on XShare on LinkedIn

Turn the article into an operating system.

See how LineNow connects POS demand, purchase orders, supplier replies, receiving, and accounting handoff.

Book a Demo