Guide · Fundamentals

How to calculate NOI.

Net operating income is the single most important number in commercial real estate: valuation, debt sizing, and every return metric key off it. The formula is simple. Getting it right is not — because what belongs above the NOI line, and what does not, is where most underwriting goes wrong. Here is the calculation, line by line, with the items people most often get backwards.

7-minute read · by the team at Nivora

The formula

NOI is effective gross income minus operating expenses:

NOI = Effective Gross Income − Operating Expenses
where EGI = gross potential rent − vacancy & loss-to-lease − concessions − bad debt + other income. NOI is measured before debt service, capital expenditures, and income taxes — it’s the property’s operating profit, independent of how it’s financed or who owns it.

Step 1: build effective gross income

Start at the top of the income statement and work down from theoretical to real:

EGI — 104 units, illustrative

Gross potential rentall units at market, full year$1,668,000
Loss to leasein-place below market($132,000)
Vacancy≈5% of GPR($83,000)
Concessions + bad debtfree rent, uncollected($42,000)
Other incomefees, laundry, parking, RUBS$112,000
Effective gross income$1,523,000

The discipline here is to use economic revenue — what actually collects — not the gross potential rent the offering memorandum leads with. (See how to read a rent roll for where these figures come from.)

Step 2: subtract operating expenses

Operating expenses are the costs of running the property: property taxes, insurance, utilities, payroll, repairs & maintenance, management fee, marketing, contract services, and general & admin. Stabilized multifamily typically runs 40–50% of EGI.

NOI — same property

Effective gross income$1,523,000
Operating expenses≈45% of EGI, taxes at your basis($685,000)
Net operating income$838,000

The line that trips everyone: above vs below NOI

The most common NOI errors aren’t arithmetic — they’re putting the wrong items above or below the line:

  • Capital expenditures are BELOW the line. A new roof, HVAC replacements, unit renovations — these are capital items, not operating expenses. Expensing them through R&M understates NOI and the value it supports. (Sellers sometimes do this accidentally; verify against the T-12.)
  • Replacement reserves are a convention, not an expense. Lenders deduct ~$250–$300/unit/yr to get net cash flow; whether reserves sit above or below your NOI line depends on whose definition you’re using. Be explicit. (This is the NOI-vs-NCF distinction that decides DSCR.)
  • Debt service is BELOW the line. NOI is unlevered by definition. Mortgage payments never touch it — that’s what makes NOI comparable across deals with different financing.
  • The management fee is ALWAYS included. Even if the seller self-manages for free, underwrite a market fee (typically 3% of EGI). Omitting it overstates NOI and every ratio downstream.
  • Owner income taxes are BELOW the line. NOI is a property-level number, before the owner’s tax situation.

The biggest single NOI error: seller’s taxes

Most jurisdictions reassess property value at sale, so the seller’s tax line reflects their old (often much lower) basis. Carry it into your NOI and you’ve overstated the property’s real operating income — sometimes by a full year of rent growth. Always re-underwrite taxes on your purchase price and the local millage rate.

Why NOI is worth getting exactly right

Everything downstream multiplies your error. Value is NOI ÷ cap rate, so at a 6% cap, a $50,000 NOI mistake moves valuation by $833,000. Loan proceeds are sized off NOI through DSCR and debt yield. And every return metric — IRR, equity multiple, cash-on-cash — flows from the cash NOI produces. Get NOI wrong and the whole model is confidently wrong.

That leverage is exactly why Nivora computes NOI from your reconciled rent roll and T-12 — reassessing taxes, applying a market management fee, and keeping capital items below the line — and re-runs it on every assumption change. See it on the live sample deal, computed by the real engine.

See it computed, not explained.

Every concept on this page is a number Nivora computes live — the real engine is running on a fictional 104-unit sample deal right now, no login required.