Analyze your real estate investment performance, calculate Cash on Cash Return, and estimate monthly cash flow.
Purchase & Loan Details
Income & Recurring Expenses
Monthly Breakdown
Principal & Interest (Mortgage)$0.00
Operating Expenses (Tax, Ins, HOA, Maint)$0.00
Total Monthly Outflow$0.00
Estimated Monthly Cash Flow$0.00
Investment Returns
Total Initial Cash Invested$0.00
Annual Cash Flow$0.00
Cash on Cash Return (ROI)0.00%
Cap Rate0.00%
function calculateRentalROI() {
// 1. Get Inputs
var price = parseFloat(document.getElementById('rp_price').value) || 0;
var downPercent = parseFloat(document.getElementById('rp_down').value) || 0;
var rate = parseFloat(document.getElementById('rp_rate').value) || 0;
var years = parseFloat(document.getElementById('rp_term').value) || 0;
var closingCosts = parseFloat(document.getElementById('rp_closing').value) || 0;
var rehabCosts = parseFloat(document.getElementById('rp_rehab').value) || 0;
var rent = parseFloat(document.getElementById('rp_rent').value) || 0;
var taxYearly = parseFloat(document.getElementById('rp_tax').value) || 0;
var insYearly = parseFloat(document.getElementById('rp_insurance').value) || 0;
var hoaMonthly = parseFloat(document.getElementById('rp_hoa').value) || 0;
var maintPercent = parseFloat(document.getElementById('rp_maint').value) || 0;
// 2. Calculate Loan Details
var downPayment = price * (downPercent / 100);
var loanAmount = price – downPayment;
var monthlyRate = (rate / 100) / 12;
var totalPayments = years * 12;
// Mortgage Calculation (P&I)
var monthlyMortgage = 0;
if (rate > 0) {
monthlyMortgage = loanAmount * (monthlyRate * Math.pow(1 + monthlyRate, totalPayments)) / (Math.pow(1 + monthlyRate, totalPayments) – 1);
} else {
monthlyMortgage = loanAmount / totalPayments;
}
if (years === 0) monthlyMortgage = 0; // Cash purchase scenario usually implied, but handling div/0
// 3. Calculate Expenses
var monthlyTax = taxYearly / 12;
var monthlyIns = insYearly / 12;
var monthlyMaint = rent * (maintPercent / 100);
var operatingExpenses = monthlyTax + monthlyIns + hoaMonthly + monthlyMaint;
var totalMonthlyOutflow = operatingExpenses + monthlyMortgage;
// 4. Calculate Cash Flow
var monthlyCashFlow = rent – totalMonthlyOutflow;
var annualCashFlow = monthlyCashFlow * 12;
// 5. Calculate Investment Totals
var totalInvested = downPayment + closingCosts + rehabCosts;
// 6. Calculate Returns
var cocReturn = 0;
if (totalInvested > 0) {
cocReturn = (annualCashFlow / totalInvested) * 100;
}
// NOI & Cap Rate
// NOI = Annual Rent – Annual Operating Expenses (excluding Mortgage)
var annualNOI = (rent * 12) – (operatingExpenses * 12);
var capRate = 0;
if (price > 0) {
capRate = (annualNOI / price) * 100;
}
// 7. Update DOM
document.getElementById('out_mortgage').innerText = '$' + monthlyMortgage.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
document.getElementById('out_expenses').innerText = '$' + operatingExpenses.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
document.getElementById('out_total_monthly').innerText = '$' + totalMonthlyOutflow.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
var cashFlowEl = document.getElementById('out_cashflow');
cashFlowEl.innerText = '$' + monthlyCashFlow.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
if(monthlyCashFlow < 0) {
cashFlowEl.className = 'rp-result-value rp-highlight-neg';
} else {
cashFlowEl.className = 'rp-result-value rp-highlight';
}
document.getElementById('out_total_investment').innerText = '$' + totalInvested.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
document.getElementById('out_annual_cashflow').innerText = '$' + annualCashFlow.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
var cocEl = document.getElementById('out_coc');
cocEl.innerText = cocReturn.toFixed(2) + '%';
if(cocReturn < 0) {
cocEl.className = 'rp-result-value rp-highlight-neg';
} else {
cocEl.className = 'rp-result-value rp-highlight';
}
document.getElementById('out_caprate').innerText = capRate.toFixed(2) + '%';
// Show results
document.getElementById('rp_results').style.display = 'block';
}
Understanding Rental Property Cash Flow & ROI
Investing in rental properties is one of the most effective ways to build long-term wealth. However, the difference between a profitable investment and a financial burden often comes down to the numbers. Using a Rental Property Cash Flow Calculator is essential for investors to accurately project their earnings before signing on the dotted line.
What is Cash on Cash Return?
Cash on Cash Return (CoC) is a metric used to calculate the annual return on the actual cash invested in a property. Unlike Cap Rate, which looks at the property's unleveraged performance, Cash on Cash Return takes into account debt service (your mortgage) and your specific cash outlay (down payment, closing costs, rehab).
The formula is:
Annual Pre-Tax Cash Flow / Total Cash Invested = Cash on Cash Return %
Key Metrics Explained
Net Operating Income (NOI): The income generated after all operating expenses are paid, but before the mortgage is paid.
Cap Rate: Measures the natural rate of return of the property as if you bought it with 100% cash. It helps compare different properties regardless of financing.
Cash Flow: The net amount of money moving in or out of the business after all expenses and mortgage payments. Positive cash flow means profit; negative cash flow means you are losing money monthly.
Example Calculation
Imagine you purchase a property for $300,000.
Down Payment (20%): $60,000
Closing & Repairs: $7,000
Total Cash Invested: $67,000
If your rental income is $2,500/month and your total expenses (including mortgage, taxes, insurance, and maintenance) are $2,100/month, your monthly cash flow is $400.
Annual Cash Flow: $400 x 12 = $4,800.
Cash on Cash Return: $4,800 / $67,000 = 7.16%.
This means your cash is earning a 7.16% yield annually, not including principal paydown or property appreciation.
Frequently Asked Questions
What is a good Cash on Cash Return?
While it varies by market and strategy, many investors target a Cash on Cash return between 8% and 12%. In highly appreciative markets, investors might accept lower cash flow (4-6%), while in stable cash-flow markets, they might demand 12%+.
Why include vacancy and maintenance?
Novice investors often ignore these "phantom costs." You won't pay them every month, but eventually, the roof will leak or a tenant will move out. Allocating 5% to 10% of rent for each ensures your calculations are realistic over the long term.
How does the interest rate affect my ROI?
Interest rates directly impact your monthly mortgage payment. A higher rate increases your expenses, reducing your monthly cash flow and your Cash on Cash Return. This calculator allows you to stress-test your investment against different interest rate scenarios.