{
  "slug": "rent-roll-grm",
  "title": "Rent Roll Gross Rent Multiplier Calculator",
  "heading": "Rent Roll GRM Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/rent-roll-grm",
  "summary": "Value a multi-unit property off its actual rent roll, not a single average unit.",
  "description": "Gross rent multiplier (price ÷ annual gross rent) is a fast screening tool, but most GRM calculators assume one uniform rent across all units, which misprices any property with a mixed unit mix. This tool sums actual rent roll income across different unit types at their real rents, then computes GRM and an implied value at a target multiplier, so you can screen deals off the real rent roll a broker sends you rather than an averaged number that hides upside from below-market units or risk from above-market ones.",
  "formula": "GRM = purchase price ÷ annual gross rent. Implied value = target GRM × annual gross rent from the rent roll.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=rent-roll-grm",
  "inputs": [
    {
      "id": "unitsA",
      "label": "Unit type A: count",
      "kind": "number",
      "hint": null,
      "default": 4,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "rentA",
      "label": "Unit type A: monthly rent each",
      "kind": "number",
      "hint": null,
      "default": 1200,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "unitsB",
      "label": "Unit type B: count",
      "kind": "number",
      "hint": null,
      "default": 4,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "rentB",
      "label": "Unit type B: monthly rent each",
      "kind": "number",
      "hint": null,
      "default": 1500,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "price",
      "label": "Purchase price",
      "kind": "number",
      "hint": null,
      "default": 950000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "targetGrm",
      "label": "Target / market GRM",
      "kind": "number",
      "hint": null,
      "default": 9,
      "unit": null,
      "min": 1,
      "max": 30
    }
  ],
  "outputs": [
    {
      "id": "grm",
      "label": "Gross rent multiplier at asking price",
      "format": "decimal",
      "hint": null,
      "primary": true
    },
    {
      "id": "impliedValue",
      "label": "Implied value at target GRM",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "annualGross",
      "label": "Actual annual gross rent from roll",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "priceDiff",
      "label": "Asking price above/below implied value",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "avgRentPerUnit",
      "label": "Blended average rent per unit",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Unit type A: count: 4",
      "Unit type A: monthly rent each: 1200 $",
      "Unit type B: count: 4",
      "Unit type B: monthly rent each: 1500 $",
      "Purchase price: 950000 $",
      "Target / market GRM: 9"
    ],
    "outputs": [
      "Gross rent multiplier at asking price: 7.33",
      "Implied value at target GRM: $1,166,400",
      "Actual annual gross rent from roll: $129,600",
      "Asking price above/below implied value: -$216,400",
      "Blended average rent per unit: $1,350"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter unit type a: count.",
      "Enter unit type a: monthly rent each ($).",
      "Enter unit type b: count.",
      "Enter unit type b: monthly rent each ($).",
      "Enter purchase price ($).",
      "Enter target / market grm.",
      "Read your gross rent multiplier at asking price 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": {
        "unitsA": 2,
        "rentA": 725,
        "unitsB": 2,
        "rentB": 900,
        "price": 570000,
        "targetGrm": 5.3999999999999995
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "unitsA": 4,
        "rentA": 1200,
        "unitsB": 4,
        "rentB": 1500,
        "price": 950000,
        "targetGrm": 9
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "unitsA": 6,
        "rentA": 1925,
        "unitsB": 6,
        "rentB": 2400,
        "price": 1520000,
        "targetGrm": 14.4
      }
    }
  ],
  "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": "Why use rent roll GRM instead of a simple average-rent GRM?",
      "a": "A property with six $1,000 units and two $2,000 units has a very different rent roll than eight units averaging $1,250 — even though the average is identical, the composition changes renovation upside and tenant risk profile. Rent roll GRM forces you to actually enter the real unit mix instead of a misleading blended average."
    },
    {
      "q": "What's a good GRM?",
      "a": "It varies hugely by market — GRM of 6-9 is common in cash-flow-oriented Midwest and Southeast markets, while 12-20+ shows up in coastal high-appreciation markets where investors accept lower current yield for growth. Always compare GRM to recent comparable sales in the same submarket, never to a national number."
    },
    {
      "q": "What does GRM leave out that cap rate captures?",
      "a": "GRM ignores operating expenses entirely, so two properties with identical rent rolls but very different expense ratios (older building with high maintenance vs. newer with low) will look identical on GRM but very different on cap rate and cash flow. Use GRM to screen quickly, then underwrite NOI and cap rate before making an offer."
    },
    {
      "q": "Should I use actual or market rents for GRM?",
      "a": "Use actual in-place rents for valuing what you're buying today, and separately calculate a pro forma GRM at market rents to show upside potential. Sellers sometimes market off pro forma rents to make a property look cheaper than it is on today's actual income."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/vacancy-loss-calculator",
    "https://www.revenuelab.fyi/toolbox/capex-reserve-per-door"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Rent Roll Gross Rent Multiplier Calculator (https://www.revenuelab.fyi/toolbox/rent-roll-grm)"
}