The DSCR calculator below is two clicks of arithmetic. Net operating income divided by annual debt service. Five seconds.
The reason I built this with two modes — forward (NOI and debt service → coverage) and reverse (NOI and target coverage → maximum loan size) — is that the second mode is the one analysts actually use during a live deal. Forward DSCR is how you screen. Reverse DSCR is how you size.
I spent 10 years on the buy side at Stockbridge Capital, the last five as Director of Research, closing more than $2B in CRE. Almost every deal I touched involved running both versions of this math — first to check whether the property covered debt at the leverage we wanted, then to back-solve loan proceeds when coverage was the binding constraint instead of LTV. Use the calculator below, then read the rest of the page before you treat the output as a number you can take to a lender.
DSCR Calculator
Calculate DSCR
Enter your forward NOI and annual debt service. DSCR updates automatically.
<div class="grid gap-4 sm:grid-cols-2">
<div>
<label for="dscr-noi" class="mb-2 block text-sm font-medium text-gray-700">Net Operating Income (NOI)</label>
<div class="relative">
<span class="absolute left-3 top-1/2 -translate-y-1/2 text-gray-500">$</span>
<input
id="dscr-noi"
type="text"
inputmode="decimal"
placeholder="750,000"
class="w-full rounded-md border border-gray-300 bg-white py-2 pl-7 pr-3 text-base text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-1 focus:ring-blue-600"
/>
</div>
<p class="mt-1 text-xs text-gray-500">Forward 12-month NOI, normalized for vacancy, market management fee, and reserves.</p>
</div>
<div>
<label for="dscr-debt-service" class="mb-2 block text-sm font-medium text-gray-700">Annual Debt Service</label>
<div class="relative">
<span class="absolute left-3 top-1/2 -translate-y-1/2 text-gray-500">$</span>
<input
id="dscr-debt-service"
type="text"
inputmode="decimal"
placeholder="600,000"
class="w-full rounded-md border border-gray-300 bg-white py-2 pl-7 pr-3 text-base text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-1 focus:ring-blue-600"
/>
</div>
<p class="mt-1 text-xs text-gray-500">Principal + interest over 12 months at the proposed loan terms.</p>
</div>
</div>
<div id="dscr-result-box" class="mt-6 rounded-md border border-blue-100 bg-blue-50 p-4">
<div class="flex items-baseline justify-between">
<span class="text-sm font-medium text-blue-900">Debt Service Coverage Ratio</span>
<span id="dscr-result" class="text-3xl font-semibold text-blue-900">—</span>
</div>
<p id="dscr-interpretation" class="mt-2 text-sm text-blue-800">Enter NOI and debt service to calculate.</p>
</div>
<div class="mt-4 grid gap-3 sm:grid-cols-2">
<div class="rounded-md border border-gray-200 bg-gray-50 p-3">
<div class="text-xs font-medium uppercase tracking-wide text-gray-600">Coverage Cushion</div>
<div id="dscr-cushion" class="mt-1 text-sm text-gray-900">Enter values to see the dollar cushion above breakeven.</div>
</div>
<div class="rounded-md border border-gray-200 bg-gray-50 p-3">
<div class="text-xs font-medium uppercase tracking-wide text-gray-600">NOI Drop to Breakeven</div>
<div id="dscr-breakeven" class="mt-1 text-sm text-gray-900">Enter values to see how much NOI can fall before coverage breaks.</div>
</div>
</div>
Solve for Maximum Loan Size
Given NOI, target DSCR, interest rate, and amortization, calculate maximum supportable debt service and loan amount.
<div class="grid gap-4 sm:grid-cols-2">
<div>
<label for="dscr-rev-noi" class="mb-2 block text-sm font-medium text-gray-700">Net Operating Income (NOI)</label>
<div class="relative">
<span class="absolute left-3 top-1/2 -translate-y-1/2 text-gray-500">$</span>
<input
id="dscr-rev-noi"
type="text"
inputmode="decimal"
placeholder="750,000"
class="w-full rounded-md border border-gray-300 bg-white py-2 pl-7 pr-3 text-base text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-1 focus:ring-blue-600"
/>
</div>
</div>
<div>
<label for="dscr-rev-target" class="mb-2 block text-sm font-medium text-gray-700">Target DSCR</label>
<input
id="dscr-rev-target"
type="text"
inputmode="decimal"
placeholder="1.25"
value="1.25"
class="w-full rounded-md border border-gray-300 bg-white py-2 px-3 text-base text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-1 focus:ring-blue-600"
/>
<p class="mt-1 text-xs text-gray-500">Lender minimum. Typical: 1.20x-1.30x.</p>
</div>
<div>
<label for="dscr-rev-rate" class="mb-2 block text-sm font-medium text-gray-700">Interest Rate (%)</label>
<input
id="dscr-rev-rate"
type="text"
inputmode="decimal"
placeholder="6.50"
value="6.50"
class="w-full rounded-md border border-gray-300 bg-white py-2 px-3 text-base text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-1 focus:ring-blue-600"
/>
</div>
<div>
<label for="dscr-rev-amort" class="mb-2 block text-sm font-medium text-gray-700">Amortization (years)</label>
<input
id="dscr-rev-amort"
type="text"
inputmode="decimal"
placeholder="30"
value="30"
class="w-full rounded-md border border-gray-300 bg-white py-2 px-3 text-base text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-1 focus:ring-blue-600"
/>
<p class="mt-1 text-xs text-gray-500">Use 30 for most CMBS, 25-30 for life co, IO for bridge.</p>
</div>
</div>
<div class="mt-6 grid gap-3 sm:grid-cols-3">
<div class="rounded-md border border-blue-100 bg-blue-50 p-4">
<div class="text-xs font-medium uppercase tracking-wide text-blue-900">Max Annual Debt Service</div>
<div id="dscr-rev-ds" class="mt-1 text-xl font-semibold text-blue-900">—</div>
</div>
<div class="rounded-md border border-blue-100 bg-blue-50 p-4">
<div class="text-xs font-medium uppercase tracking-wide text-blue-900">Max Loan Amount</div>
<div id="dscr-rev-loan" class="mt-1 text-xl font-semibold text-blue-900">—</div>
</div>
<div class="rounded-md border border-blue-100 bg-blue-50 p-4">
<div class="text-xs font-medium uppercase tracking-wide text-blue-900">Loan Constant</div>
<div id="dscr-rev-constant" class="mt-1 text-xl font-semibold text-blue-900">—</div>
</div>
</div>
<p id="dscr-rev-note" class="mt-3 text-xs text-gray-500">Loan size assumes a fully-amortizing loan at the rate and term entered. For interest-only loans, the supportable loan is higher (loan = max debt service / rate).</p>
When DSCR matters most
A DSCR calculation is a screen and a sizing tool. It matters most in four moments:
- Initial deal screen. You see a property at a 6.25% asking cap. Punch in normalized NOI and a quick debt service estimate at current rates. If coverage is below 1.20x at 60% LTV, the deal won’t lever the way you want. Walk away or revise basis assumptions before doing the full underwrite.
- Sizing the loan. Once you know what you’re willing to pay, the reverse calculator tells you how much debt the property supports at the lender’s coverage threshold. If LTV would let you borrow 70% but DSCR caps you at 58%, you’re getting 58%. Equity check changes accordingly.
- Refinance underwriting. A property you’ve owned for three years is up for refi. Run forward DSCR on the next 12 months at current rates against amortizing debt service. If coverage dropped from 1.45x at original close to 1.18x today, you may need to recapitalize before refi.
- Stress testing for IC. Show the IC committee DSCR at base case, +50 bps, +100 bps, and at exit cap. If coverage holds above 1.10x in the stress case, the deal is fundable. If it doesn’t, you have an interest-rate-sensitivity problem the committee will spot.
What NOI to plug in
The single most common mistake: plugging in trailing NOI from the offering memorandum and calling it a day. That NOI was almost certainly assembled by the seller’s broker, who has every incentive to make the property look as profitable as possible.
For a buy-side DSCR screen, use forward stabilized NOI with the same adjustments a lender will eventually apply:
- Vacancy and credit loss: 5-7% for stabilized multifamily, 7-12% for office, 5-8% for industrial, 6-10% for retail. Higher in weak submarkets.
- Market management fee: 3-4% of effective gross income for office and industrial, 3-5% for multifamily, 4-5% for retail. Even if you’ll self-manage.
- Replacement reserves: $250-400/unit for multifamily, $0.15-0.30/SF for industrial, $0.30-0.50/SF for office, $0.20-0.40/SF for retail.
- Reassessed real estate taxes: Estimate based on the purchase price and the jurisdiction’s reassessment policy. On Texas, Florida, and most Northeast states, this can mean 20-60% above trailing taxes.
- Tenant credit haircuts: Apply 70-85% credit to non-investment-grade tenants on office and retail.
If you plug a normalized NOI into the calculator, your DSCR will be close to what the lender computes. If you plug in OM NOI, expect to be 5-15% high.
Typical DSCR thresholds in 2026
A handful of reference points by lender type:
- Non-bank residential DSCR (Kiavi, Visio, RCN, Lima One, CoreVest): 1.00x-1.25x typical, 0.75x with rate buy-ups.
- Agency multifamily (Fannie Mae DUS, Freddie Mac Optigo, HUD): 1.20x-1.30x.
- Bank balance-sheet (JPMorgan, Wells Fargo, BofA, M&T): 1.20x-1.30x stabilized.
- CMBS (Goldman, Morgan Stanley, Citi, Wells Fargo securitization): 1.20x-1.25x; 1.30x+ on retail and office.
- Life companies (MetLife, Prudential, NYL, Northwestern Mutual, MassMutual): 1.25x-1.35x.
- Bridge / value-add (Madison Realty Capital, Mesa West, BRT, Square Mile): Going-in can be sub-1.00x if stabilized DSCR clears 1.25x at takeout.
These move with the rate cycle. In 2026, office and retail underwriters have been pushing thresholds 5-10 basis points higher than they were in 2024.
The reverse mode: sizing loan proceeds
The reverse calculator solves the more practical question on most institutional deals: given the NOI this property produces, what’s the largest loan it can support?
The math:
Maximum annual debt service = NOI / Target DSCR
Then back into loan size using the loan constant — the annual debt service per dollar of principal at a given rate and amortization. A 6.50% / 30-year loan has a constant of about 7.58%, so $1M of debt service supports about $13.2M of principal.
Maximum loan = Maximum debt service / Loan constant
For a $750K NOI, 1.25x target, 6.50% rate, and 30-year amortization, the property supports:
- Maximum debt service: $600,000
- Maximum loan: $7,917,000
That’s your DSCR-constrained loan size. Compare it to your LTV cap. If you’re buying the property at $10M and the lender quotes 70% LTV, the LTV-implied loan is $7M. But DSCR allows $7.9M, so the binding constraint is LTV (not DSCR), and you’re sized at $7M. Flip the numbers — same property but a 1.30x target — and DSCR caps the loan at $7.6M, below 70% LTV, so DSCR is now binding.
This is how lenders actually size deals. They run both tests (and usually debt yield as a third) and size to the most restrictive. The reverse calculator gives you the same answer they will, before you commit to a price.
Common mistakes to avoid
- Trailing NOI on a recent acquisition. The trailing income reflects the prior owner’s tax basis and operating decisions. Use forward.
- Pro forma NOI with no lease-up risk. If you’re underwriting to Year-3 stabilized NOI, your going-in coverage is lower than the calculator shows.
- Interest-only debt service against a long-term DSCR. IO flatters coverage. Run an amortizing scenario in parallel.
- Missing the property tax reassessment. On full-reassessment jurisdictions, taxes can rise 20-60% on transfer. Skipping this can move DSCR by 0.05-0.10x.
- Treating the calculator output as the lender’s answer. Your forward DSCR is what you control. The lender will run their own. Be conservative on inputs.
Where this fits in real diligence
The DSCR calculator above runs the math. The work that produces a DSCR you can defend to an investment committee — reconciling every lease, normalizing every expense line, reassessing taxes at the purchase price, applying tenant credit haircuts, modeling rollover — is exactly the kind of manual reconciliation that should not be done by hand on every deal.
We built DDee.ai because I lived inside that bottleneck on every acquisition in my buy-side career. The platform extracts lease terms with confidence-scored citations, scores tenant credit with default-probability estimates, normalizes operating expenses against market, and produces an IC-ready package with DSCR sensitivity tables and citations back to the source PDF. The calculator on this page handles the last 1% of the analysis. The platform handles the other 99%.