function calculateCashOnCash() {
// 1. Get Input Values
var downPayment = parseFloat(document.getElementById('cocDownPayment').value);
var closingCosts = parseFloat(document.getElementById('cocClosingCosts').value);
var rehabCosts = parseFloat(document.getElementById('cocRehabCosts').value);
var monthlyRent = parseFloat(document.getElementById('cocMonthlyRent').value);
var monthlyMortgage = parseFloat(document.getElementById('cocMonthlyMortgage').value);
var monthlyExpenses = parseFloat(document.getElementById('cocMonthlyExpenses').value);
// 2. Validation: Check if values are valid numbers, treat empty as 0
if (isNaN(downPayment)) downPayment = 0;
if (isNaN(closingCosts)) closingCosts = 0;
if (isNaN(rehabCosts)) rehabCosts = 0;
if (isNaN(monthlyRent)) monthlyRent = 0;
if (isNaN(monthlyMortgage)) monthlyMortgage = 0;
if (isNaN(monthlyExpenses)) monthlyExpenses = 0;
// 3. Logic: Calculate Cash Invested
var totalCashInvested = downPayment + closingCosts + rehabCosts;
// 4. Logic: Calculate Annual Cash Flow
var totalMonthlyExpenses = monthlyMortgage + monthlyExpenses;
var monthlyCashFlow = monthlyRent – totalMonthlyExpenses;
var annualCashFlow = monthlyCashFlow * 12;
// 5. Logic: Calculate CoC Return Percentage
var cocReturn = 0;
if (totalCashInvested > 0) {
cocReturn = (annualCashFlow / totalCashInvested) * 100;
}
// 6. Update UI
document.getElementById('resTotalInvested').innerHTML = "$" + totalCashInvested.toLocaleString('en-US', {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resAnnualFlow').innerHTML = "$" + annualCashFlow.toLocaleString('en-US', {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resMonthlyFlow').innerHTML = "$" + monthlyCashFlow.toLocaleString('en-US', {minimumFractionDigits: 2, maximumFractionDigits: 2});
var cocElement = document.getElementById('resCocPercent');
cocElement.innerHTML = cocReturn.toFixed(2) + "%";
// Dynamic Styling based on result
if (cocReturn = 12) {
cocElement.style.color = "#27ae60"; // Green for great
} else {
cocElement.style.color = "#f39c12"; // Orange for moderate
}
// Analysis Text
var analysisText = document.getElementById('cocAnalysis');
if (totalCashInvested === 0) {
analysisText.innerHTML = "Please enter your investment costs (Down payment, closing costs, etc.) to see your return.";
} else if (cocReturn >= 12) {
analysisText.innerHTML = "Great Investment! A Cash on Cash return above 12% is generally considered excellent in most markets.";
} else if (cocReturn >= 8) {
analysisText.innerHTML = "Solid Investment. A return between 8-12% is considered a healthy standard for rental properties.";
} else if (cocReturn > 0) {
analysisText.innerHTML = "Positive Cash Flow. The property is generating income, but the return is lower than the stock market average (7-8%).";
} else {
analysisText.innerHTML = "Negative Cash Flow. This property costs you money to hold. Review your expenses or negotiate a lower price.";
}
// Show Results
document.getElementById('cocResults').style.display = "block";
}
Understanding Cash on Cash Return in Real Estate
When analyzing rental property investments, relying solely on the potential appreciation of the home is a risky strategy. Savvy investors focus on cash flow and the efficiency of the capital they deploy. The Cash on Cash (CoC) Return is arguably the most important metric for determining exactly how hard your money is working for you immediately after purchasing a property.
Unlike Return on Investment (ROI), which might factor in debt paydown and appreciation, Cash on Cash Return strictly measures the pre-tax cash flow relative to the actual cash you invested to acquire the property.
The Cash on Cash Return Formula
The math behind the calculation is straightforward, but accuracy requires including all relevant costs. The formula is:
Cash on Cash Return = (Annual Pre-Tax Cash Flow / Total Cash Invested) x 100%
Where:
Annual Pre-Tax Cash Flow: (Gross Monthly Rent – All Monthly Expenses) x 12. Expenses include mortgage principal/interest, taxes, insurance, vacancy reserves, and maintenance reserves.
Total Cash Invested: The sum of your down payment, closing costs, and any immediate repair or rehabilitation costs required to get the property rented.
Why This Metric Matters
This metric allows you to compare real estate investments against other asset classes. If you have $50,000 to invest, you could put it in the stock market for an average historic return of 7-8%, or you could use it as a down payment on a rental property. If the calculator above shows a CoC return of 4%, your money might be better utilized elsewhere. If it shows 15%, you are outperforming the market significantly through leverage.
What is a "Good" Cash on Cash Return?
While "good" is subjective and depends on your local market conditions and risk tolerance, general investor benchmarks are as follows:
8% – 12%: This is the target range for most residential real estate investors. It ensures the property outperforms average stock market indices while providing the stability of real estate.
Above 12%: Often considered a "home run." These deals are harder to find and may require more work (fixer-uppers) or investing in riskier neighborhoods.
Below 5%: Unless the property is in a rapidly appreciating "Class A" neighborhood, a CoC return this low implies the property is barely breaking even cash-wise.
Example Calculation
Let's say you buy a property for $200,000.
Down Payment (20%): $40,000
Closing Costs: $5,000
Repairs Needed: $5,000
Total Cash Invested: $50,000
Now, let's look at the income:
Monthly Rent: $2,000
Mortgage + Expenses: $1,500
Monthly Cash Flow: $500
Annual Cash Flow: $6,000
Calculation: ($6,000 / $50,000) = 0.12 or 12%.
This means for every dollar you invested, you are getting 12 cents back annually in pure cash flow, excluding tax benefits or equity gains.
How to Improve Your Cash on Cash Return
If your calculation isn't hitting your target percentage, there are three primary levers you can pull:
Decrease the Purchase Price: Negotiating a lower price reduces your down payment and your monthly mortgage payment, improving both sides of the equation.
Increase Rents: Can you add value through minor cosmetic renovations (paint, flooring) that allow you to charge higher rent?
Reduce Expenses: Shop around for cheaper insurance, appeal your property taxes, or self-manage the property to save on management fees.