Rental Property Yield Calculator
Calculate Gross and Net returns on your real estate investment
Investment Costs
Income & Ongoing Costs
0%
0%
$0
Analysis: Total Investment Cost: . Monthly Expenses: .
How to Calculate Rental Yield: A Guide for Real Estate Investors
Understanding rental yield is crucial for any property investor. It allows you to compare the profitability of different properties regardless of their size or location. This calculator focuses on two primary metrics: Gross Yield and Net Yield.
Gross Rental Yield Formula
Gross rental yield is the simplest calculation. It is the annual rent income divided by the total cost of the property (including closing costs and initial renovations). While helpful for a quick comparison, it does not account for the costs of running the property.
Formula: (Annual Rent / Total Property Cost) x 100
Net Rental Yield Formula
Net rental yield is a much more accurate reflection of your return on investment. It subtracts annual expenses like property taxes, insurance, maintenance, and management fees from your annual rent before dividing by the total cost of the property.
Formula: ((Annual Rent – Annual Expenses) / Total Property Cost) x 100
Example Calculation
Let’s say you buy a property for $300,000. You spend $10,000 on closing costs and $10,000 on a new kitchen. Your total investment is $320,000. If the property rents for $2,000 per month:
- Annual Rent: $24,000
- Gross Yield: ($24,000 / $320,000) = 7.5%
- Monthly Expenses: $400 (Taxes, Insurance, etc.)
- Annual Expenses: $4,800
- Net Yield: ($24,000 – $4,800) / $320,000 = 6.0%
What is a “Good” Rental Yield?
A “good” yield depends heavily on the location and the type of property. Generally, in stable urban markets, a net yield of 4% to 6% is considered solid. In emerging markets or higher-risk areas, investors often look for 8% or more to compensate for the potential volatility.
function calculateRentalYield() {
// Get values from inputs
var price = parseFloat(document.getElementById(‘propPrice’).value) || 0;
var closing = parseFloat(document.getElementById(‘closingCosts’).value) || 0;
var reno = parseFloat(document.getElementById(‘renoCosts’).value) || 0;
var monthlyRent = parseFloat(document.getElementById(‘monthlyRent’).value) || 0;
var monthlyTax = parseFloat(document.getElementById(‘monthlyTax’).value) || 0;
var monthlyIns = parseFloat(document.getElementById(‘monthlyIns’).value) || 0;
// Calculations
var totalInvestment = price + closing + reno;
var annualRent = monthlyRent * 12;
var monthlyTotalExp = monthlyTax + monthlyIns;
var annualExp = monthlyTotalExp * 12;
var annualCashFlow = annualRent – annualExp;
// Safety check for division by zero
if (totalInvestment <= 0) {
alert('Please enter a valid property price.');
return;
}
var grossYield = (annualRent / totalInvestment) * 100;
var netYield = (annualCashFlow / totalInvestment) * 100;
// Formatting results
document.getElementById('resGrossYield').innerHTML = grossYield.toFixed(2) + '%';
document.getElementById('resNetYield').innerHTML = netYield.toFixed(2) + '%';
document.getElementById('resCashFlow').innerHTML = '$' + annualCashFlow.toLocaleString(undefined, {minimumFractionDigits: 0, maximumFractionDigits: 0});
document.getElementById('resTotalCost').innerHTML = '$' + totalInvestment.toLocaleString();
document.getElementById('resMonthlyExp').innerHTML = '$' + monthlyTotalExp.toLocaleString();
// Show results area
document.getElementById('resultsArea').style.display = 'block';
}