The Capitalization Rate (Cap Rate) is one of the most fundamental metrics in commercial and residential real estate investing. It helps investors measure the potential return on an investment property independent of financing. Essentially, it represents the yield of a property over a one-year time horizon assuming the property is purchased with cash.
Using this Real Estate Cap Rate Calculator allows you to quickly determine if a property's asking price is justified by the income it generates. A higher cap rate generally implies a higher potential return, but often comes with higher risk.
How to Calculate Cap Rate
The formula used in this calculator is straightforward:
Cap Rate = (Net Operating Income / Current Market Value) × 100
To derive the accurate figures:
Gross Income: Total annual rental income if fully occupied.
Vacancy Loss: Income lost due to units sitting empty (typically 5-10%).
Effective Gross Income: Gross Income minus Vacancy Loss.
Operating Expenses: Costs to run the property (Taxes, Insurance, Maintenance, Management, Utilities). Note: Mortgage payments are NOT included in Cap Rate calculations.
Net Operating Income (NOI): Effective Gross Income minus Total Operating Expenses.
What is a Good Cap Rate?
There is no single "good" cap rate, as it depends heavily on the market and the property type. However, general guidelines suggest:
4% – 5%: Often found in low-risk, high-demand areas (e.g., city centers like NYC or San Francisco). Appreciation potential is usually the focus here.
6% – 8%: Considered a balanced return for stable residential or commercial properties in suburban markets.
8% – 12%+: Higher returns typical of riskier assets, older properties requiring renovation, or lower-demand rural areas.
Why Mortgage Payments Are Excluded
Beginner investors often mistake Cash-on-Cash Return for Cap Rate. The Cap Rate focuses purely on the asset's performance, ignoring the debt structure. This allows you to compare two buildings directly, even if one investor pays cash and the other takes out a 90% loan.
If you want to understand your return based on the actual cash you put down (leveraging debt), you should look for a Cash-on-Cash Return calculator instead.
function calculateCapRate() {
// Get Inputs
var propertyValue = parseFloat(document.getElementById('propertyValue').value) || 0;
var grossIncome = parseFloat(document.getElementById('grossIncome').value) || 0;
var vacancyRate = parseFloat(document.getElementById('vacancyRate').value) || 0;
// Expenses
var propTax = parseFloat(document.getElementById('propTax').value) || 0;
var insurance = parseFloat(document.getElementById('insurance').value) || 0;
var maintenance = parseFloat(document.getElementById('maintenance').value) || 0;
var management = parseFloat(document.getElementById('management').value) || 0;
var otherExp = parseFloat(document.getElementById('otherExp').value) || 0;
// Validation
if (propertyValue <= 0) {
alert("Please enter a valid Property Purchase Price greater than zero.");
return;
}
// Calculations
var vacancyAmount = grossIncome * (vacancyRate / 100);
var effectiveIncome = grossIncome – vacancyAmount;
var totalExpenses = propTax + insurance + maintenance + management + otherExp;
var noi = effectiveIncome – totalExpenses;
var capRate = (noi / propertyValue) * 100;
// Formatting Helper
var formatCurrency = function(num) {
return '$' + num.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
};
// Display Results
document.getElementById('resEffectiveIncome').innerText = formatCurrency(effectiveIncome);
document.getElementById('resTotalExpenses').innerText = formatCurrency(totalExpenses);
document.getElementById('resNOI').innerText = formatCurrency(noi);
document.getElementById('resCapRate').innerText = capRate.toFixed(2) + "%";
// Show Results Section
document.getElementById('results').style.display = "block";
// Visual Feedback for Negative NOI
var resCapEl = document.getElementById('resCapRate');
if (noi < 0) {
resCapEl.style.color = "#dc3545"; // Red for loss
} else {
resCapEl.style.color = "#155724"; // Green for profit
}
}