function calculateRentalCashFlow() {
// 1. Get Inputs
var rent = parseFloat(document.getElementById('rp-rent').value) || 0;
var otherIncome = parseFloat(document.getElementById('rp-other-income').value) || 0;
var mortgage = parseFloat(document.getElementById('rp-mortgage').value) || 0;
var tax = parseFloat(document.getElementById('rp-tax').value) || 0;
var insurance = parseFloat(document.getElementById('rp-insurance').value) || 0;
var hoa = parseFloat(document.getElementById('rp-hoa').value) || 0;
var vacancyRate = parseFloat(document.getElementById('rp-vacancy').value) || 0;
var repairsRate = parseFloat(document.getElementById('rp-repairs').value) || 0;
var capexRate = parseFloat(document.getElementById('rp-capex').value) || 0;
var mgmtRate = parseFloat(document.getElementById('rp-management').value) || 0;
// 2. Calculate Income
var totalIncome = rent + otherIncome;
// 3. Calculate Variable Expenses (based on Rent)
var vacancyCost = rent * (vacancyRate / 100);
var repairsCost = rent * (repairsRate / 100);
var capexCost = rent * (capexRate / 100);
var mgmtCost = rent * (mgmtRate / 100);
var totalVariable = vacancyCost + repairsCost + capexCost + mgmtCost;
// 4. Calculate Total Expenses
var totalFixed = mortgage + tax + insurance + hoa;
var totalExpenses = totalFixed + totalVariable;
// 5. Calculate Metrics
var cashFlow = totalIncome – totalExpenses;
var annualCashFlow = cashFlow * 12;
// NOI = Income – Operating Expenses (Expenses excluding Mortgage P&I)
var operatingExpenses = totalExpenses – mortgage;
var noi = totalIncome – operatingExpenses;
// 6. Display Results
document.getElementById('rp-results').style.display = 'block';
document.getElementById('res-income').innerText = '$' + totalIncome.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('res-expenses').innerText = '$' + totalExpenses.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('res-noi').innerText = '$' + noi.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
var cfEl = document.getElementById('res-cashflow');
cfEl.innerText = '$' + cashFlow.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
if (cashFlow >= 0) {
cfEl.className = 'rp-positive';
} else {
cfEl.className = 'rp-negative';
}
var annualCfEl = document.getElementById('res-annual-cashflow');
annualCfEl.innerText = '$' + annualCashFlow.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
if (annualCashFlow >= 0) {
annualCfEl.className = 'rp-positive';
} else {
annualCfEl.className = 'rp-negative';
}
}
Understanding Rental Property Cash Flow
Investing in real estate is a numbers game. While appreciation is a nice bonus, seasoned investors know that positive cash flow is the lifeline of a sustainable rental portfolio. This Rental Property Cash Flow Calculator helps you analyze a potential deal by accounting for all income sources and, more importantly, the often-overlooked expenses that chip away at your profits.
What is Cash Flow?
Cash flow is the net amount of cash moving in and out of a business. In real estate terms, it is the money left over after all operating expenses and debt service (mortgage payments) have been paid.
The formula is simple:
Cash Flow = Total Income – Total Expenses
If the number is positive, the property is putting money in your pocket every month. If it's negative, you are paying out of pocket to hold the asset.
The Hidden Expenses: Why the "1% Rule" Isn't Enough
Many novice investors look at the mortgage payment and the rent and assume the difference is profit. This is a dangerous mistake. To get an accurate picture, you must account for variable expenses:
Vacancy Rate: Your property won't be occupied 365 days a year. You need to set aside money (typically 5-8% of rent) to cover months between tenants.
Repairs & Maintenance: Toilets break and paint fades. Setting aside 5-10% of monthly rent ensures you have funds for routine fixes.
CapEx (Capital Expenditures): This is saving for "big ticket" items like a new roof, furnace, or water heater. These don't happen every month, but when they do, they are expensive. A 5-10% reserve is prudent.
Property Management: Even if you self-manage now, it is wise to calculate the deal with a management fee (usually 8-10%) to ensure the investment is viable if you decide to outsource later.
How to Use This Calculator
To analyze a deal effectively, input your expected Monthly Rent. Be conservative; check local listings (comps) to see what similar units are renting for. Next, enter your Fixed Expenses like your mortgage P&I (Principal and Interest), property taxes, and insurance.
Finally, adjust the percentage fields for Variable Expenses based on the condition of the property. An older home may require higher Repair and CapEx percentages than a brand-new build.
What is a "Good" Cash Flow?
There is no single answer, but many investors aim for $100 to $200 per door, per month in pure cash flow after all expenses. Others focus on "Cash on Cash Return," aiming for an 8-12% annual return on the actual cash invested (down payment + closing costs + rehab costs).
Use this calculator to run multiple scenarios. What happens if taxes go up? What if vacancy rises to 10%? Stress-testing your numbers is the best way to minimize risk in real estate investing.