function calculateRentalROI() {
var price = parseFloat(document.getElementById('purchasePrice').value) || 0;
var downPercent = parseFloat(document.getElementById('downPaymentPercent').value) || 0;
var rate = parseFloat(document.getElementById('interestRate').value) || 0;
var term = parseFloat(document.getElementById('loanTerm').value) || 0;
var rent = parseFloat(document.getElementById('monthlyRent').value) || 0;
var tax = parseFloat(document.getElementById('annualTaxes').value) || 0;
var ins = parseFloat(document.getElementById('annualInsurance').value) || 0;
var maint = parseFloat(document.getElementById('maintenancePercent').value) || 0;
// 1. Loan Calculations
var downPayment = price * (downPercent / 100);
var loanAmount = price – downPayment;
var monthlyRate = (rate / 100) / 12;
var numberOfPayments = term * 12;
var monthlyMortgage = 0;
if (rate > 0) {
monthlyMortgage = loanAmount * (monthlyRate * Math.pow(1 + monthlyRate, numberOfPayments)) / (Math.pow(1 + monthlyRate, numberOfPayments) – 1);
} else {
monthlyMortgage = loanAmount / numberOfPayments;
}
// 2. Operating Expenses
var monthlyMaint = rent * (maint / 100);
var monthlyTax = tax / 12;
var monthlyIns = ins / 12;
var totalMonthlyExpenses = monthlyTax + monthlyIns + monthlyMaint;
// 3. Cash Flow & NOI
var monthlyCashFlow = rent – totalMonthlyExpenses – monthlyMortgage;
var annualNOI = (rent – totalMonthlyExpenses) * 12;
// 4. ROI Metrics
var capRate = (annualNOI / price) * 100;
var cashOnCash = ((monthlyCashFlow * 12) / downPayment) * 100;
// Update UI
document.getElementById('results-section').style.display = 'block';
document.getElementById('resMortgage').innerText = '$' + monthlyMortgage.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resCashFlow').innerText = '$' + monthlyCashFlow.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resCapRate').innerText = capRate.toFixed(2) + '%';
document.getElementById('resCoC').innerText = isFinite(cashOnCash) ? cashOnCash.toFixed(2) + '%' : 'N/A';
document.getElementById('resTotalCash').innerText = '$' + downPayment.toLocaleString();
document.getElementById('resNOI').innerText = '$' + annualNOI.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
// Color coding for cash flow
var cashFlowEl = document.getElementById('resCashFlow');
if (monthlyCashFlow > 0) {
cashFlowEl.style.color = '#38a169';
} else {
cashFlowEl.style.color = '#e53e3e';
}
}
Understanding Rental Property Return on Investment (ROI)
Investing in real estate is one of the most proven ways to build long-term wealth, but not every property is a winner. To determine if a rental property is a sound investment, you must look beyond the monthly rent and analyze the technical metrics like Cap Rate and Cash on Cash Return.
Key Real Estate Metrics Explained
Capitalization Rate (Cap Rate): This is the ratio of Net Operating Income (NOI) to the property purchase price. It represents the potential rate of return on an investment property if it were purchased in cash.
Cash on Cash Return (CoC): This measures the annual cash flow relative to the actual amount of cash you invested (usually the down payment). This is often considered the most important metric for investors using financing.
Net Operating Income (NOI): The total income generated by the property minus all necessary operating expenses (excluding mortgage payments).
Monthly Cash Flow: The money left over at the end of the month after paying all operating expenses and the mortgage.
A Realistic Example
Imagine you purchase a duplex for $300,000. You put 20% down ($60,000) and secure a mortgage at 6.5%. Your monthly rent is $2,500.
After factoring in property taxes ($300/mo), insurance ($100/mo), and a 10% reserve for maintenance and vacancy ($250/mo), your operating expenses total $650. If your mortgage is $1,517, your Monthly Cash Flow is $333. This results in a Cash on Cash return of approximately 6.6%, which is a solid starting point for many residential investors.
What is a "Good" ROI for Rental Property?
A "good" return varies by market and risk level. In stable "Class A" neighborhoods, you might see lower Cap Rates (4-5%) but more property appreciation. In higher-risk "Class C" neighborhoods, investors often look for Cap Rates of 8-10% to compensate for the added risk of vacancy or repairs. Most professional investors aim for a Cash on Cash return of 8% to 12%.