{
  "slug": "gmroi-calculator",
  "title": "GMROI Calculator",
  "heading": "GMROI Calculator (Gross Margin Return on Inventory Investment)",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/gmroi-calculator",
  "summary": "How many gross margin dollars you generate per dollar tied up in inventory.",
  "description": "GMROI answers a question sell-through rate and margin percentage alone can't: how efficiently is a SKU or category using the cash tied up in inventory to generate margin? A product with fat margin but that sits on the shelf for six months can have worse GMROI than a thin-margin product that turns over quickly, because inventory is capital and capital has a cost. This calculator takes annual gross margin dollars generated by a SKU or category and divides it by average inventory cost value (at cost, not retail) to produce a GMROI ratio. Enter annual sales revenue for the SKU or category, gross margin percentage, and average inventory value at cost over the period. A GMROI above 2.0 generally means the category earns back more than double its inventory investment in gross margin annually, while below 1.0 means you're generating less gross margin than the inventory itself costs, a red flag for buying decisions regardless of how good the margin percentage looks on its own.",
  "formula": "Gross margin $ = revenue × margin%; GMROI = gross margin $ ÷ average inventory cost.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=gmroi-calculator",
  "inputs": [
    {
      "id": "revenue",
      "label": "Annual sales revenue",
      "kind": "number",
      "hint": null,
      "default": 240000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "marginPct",
      "label": "Gross margin",
      "kind": "number",
      "hint": null,
      "default": 45,
      "unit": "%",
      "min": 0,
      "max": 100
    },
    {
      "id": "avgInventoryCost",
      "label": "Average inventory value (at cost)",
      "kind": "number",
      "hint": null,
      "default": 60000,
      "unit": "$",
      "min": 1,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "gmroi",
      "label": "GMROI",
      "format": "decimal",
      "hint": null,
      "primary": true
    },
    {
      "id": "grossMarginDollars",
      "label": "Annual gross margin $",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "read",
      "label": "Read",
      "format": "raw",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Annual sales revenue: 240000 $",
      "Gross margin: 45 %",
      "Average inventory value (at cost): 60000 $"
    ],
    "outputs": [
      "GMROI: 1.8",
      "Annual gross margin $: $108,000",
      "Read: Healthy"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter annual sales revenue ($).",
      "Enter gross margin (%).",
      "Enter average inventory value (at cost) ($).",
      "Read your gmroi on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "revenue": 144000,
        "marginPct": 27,
        "avgInventoryCost": 36000
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "revenue": 240000,
        "marginPct": 45,
        "avgInventoryCost": 60000
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "revenue": 384000,
        "marginPct": 72,
        "avgInventoryCost": 96000
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "What GMROI is considered good?",
      "a": "A GMROI of 2.5-3.0 or higher is generally considered strong across most retail categories, meaning you earn back two and a half to three times your average inventory investment in gross margin dollars each year. Below 1.0 means the inventory is a net drag relative to its own cost."
    },
    {
      "q": "Why use inventory at cost rather than retail value?",
      "a": "GMROI measures return on your actual cash investment, which is what you paid for the inventory, not what you hope to sell it for. Using retail value would understate the ratio and make every category look artificially inefficient."
    },
    {
      "q": "How is GMROI different from margin percentage alone?",
      "a": "Margin percentage ignores how long inventory sits before selling. A 60%-margin product that turns twice a year can have worse GMROI than a 30%-margin product that turns eight times a year, because the second product recycles its inventory investment far more often."
    },
    {
      "q": "How do I improve a low GMROI category?",
      "a": "Either increase margin (better pricing or lower cost of goods), increase turnover (better demand forecasting, smaller more frequent orders, faster markdown of slow movers), or both. Categories stuck below 1.0 for multiple periods usually need a buying strategy change, not just a pricing tweak."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/sell-through-rate",
    "https://www.revenuelab.fyi/toolbox/eoq-calculator",
    "https://www.revenuelab.fyi/toolbox/contribution-margin-sku"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — GMROI Calculator (https://www.revenuelab.fyi/toolbox/gmroi-calculator)"
}