Please enter valid positive numbers for Price and Rent.
Yield Results
Gross Rental Yield:0.00%
Net Rental Yield:0.00%
Annual Rental Income:$0.00
Total Investment Cost:$0.00
Annual Net Cash Flow:$0.00
How to Calculate Property Yield Rate
Calculating property yield is essential for real estate investors to determine the return on investment (ROI) of a rental property. Unlike simple capital appreciation, yield focuses on the annual income generated relative to the property's cost. It helps investors compare different properties regardless of their price points.
What is Property Yield?
Property yield is expressed as a percentage and represents the annual return likely to be generated from a property. There are two primary types of yield calculations that every investor should understand: Gross Yield and Net Yield.
Gross Yield vs. Net Yield
Gross Yield: This is a quick calculation that looks at rental income relative to the property price. It does not factor in expenses. It is useful for initial screening of potential investments.
Net Yield: This is a more accurate reflection of the actual return. It accounts for purchasing costs (like stamp duty and legal fees) and ongoing operating expenses (like maintenance, insurance, and management fees).
Formulas
Here are the mathematical formulas used in the calculator above:
Step 3: Calculate Net Yield
Net Income = $24,000 – $5,000 = $19,000
Total Investment = $300,000 + $15,000 = $315,000
($19,000 / $315,000) × 100 = 6.03%
What is a Good Yield?
A "good" yield varies by location and property type. Generally, a net yield between 5% and 8% is considered healthy for residential properties. Commercial properties often command higher yields but may carry higher risks. Investors seeking cash flow usually prioritize higher yields, while those seeking capital growth might accept lower yields in prime locations.
function calculatePropertyYield() {
// 1. Get Input Elements
var purchasePriceInput = document.getElementById("purchasePrice");
var purchaseCostsInput = document.getElementById("purchaseCosts");
var monthlyRentInput = document.getElementById("monthlyRent");
var annualExpensesInput = document.getElementById("annualExpenses");
var resultBox = document.getElementById("resultBox");
var errorMsg = document.getElementById("errorMsg");
// 2. Parse Values
var price = parseFloat(purchasePriceInput.value);
var costs = parseFloat(purchaseCostsInput.value) || 0;
var rent = parseFloat(monthlyRentInput.value);
var expenses = parseFloat(annualExpensesInput.value) || 0;
// 3. Validation
if (isNaN(price) || isNaN(rent) || price <= 0 || rent 0) {
grossYield = (annualRent / price) * 100;
}
// Net Yield = (Net Income / Total Investment) * 100
var netYield = 0;
if (totalInvestment > 0) {
netYield = (netIncome / totalInvestment) * 100;
}
// 5. Update HTML with Results
document.getElementById("grossYieldResult").innerText = grossYield.toFixed(2) + "%";
document.getElementById("netYieldResult").innerText = netYield.toFixed(2) + "%";
// Formatting currency with commas
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
});
document.getElementById("annualRentResult").innerText = formatter.format(annualRent);
document.getElementById("totalInvestmentResult").innerText = formatter.format(totalInvestment);
document.getElementById("netCashFlowResult").innerText = formatter.format(netIncome);
// Show results
resultBox.style.display = "block";
}