Understanding how much house you can afford is a crucial first step in the home-buying process. This Mortgage Affordability Calculator helps you estimate your maximum loan amount based on your income, debts, and a few other key financial factors. By inputting your details, you can get a clearer picture of your borrowing capacity and start your property search with confidence.
How Mortgage Affordability is Calculated
Lenders use various metrics to determine how much they are willing to lend you. Two common metrics are the Debt-to-Income (DTI) ratio. Generally, lenders prefer a total DTI (including your potential mortgage payment) to be below 43%.
Front-end DTI (Housing Ratio): This looks at your potential mortgage payment (principal, interest, taxes, and insurance – PITI) as a percentage of your gross monthly income. Lenders often prefer this to be no more than 28%.
Back-end DTI (Total Debt Ratio): This includes your potential mortgage payment plus all your other monthly debt obligations, as a percentage of your gross monthly income. Lenders typically want this below 43%.
This calculator primarily focuses on the back-end DTI to estimate your maximum loan amount. It assumes a maximum allowable monthly housing payment that, when added to your existing monthly debt, does not exceed a certain percentage of your gross monthly income. The interest rate and loan term are used to convert this allowable monthly payment into a maximum loan principal.
Important Note: This calculator provides an estimate. Your actual borrowing capacity may vary based on lender-specific policies, credit score, property taxes, homeowner's insurance costs, and other factors.
function calculateAffordability() {
var annualIncome = parseFloat(document.getElementById("annualIncome").value);
var existingMonthlyDebt = parseFloat(document.getElementById("existingMonthlyDebt").value);
var downPayment = parseFloat(document.getElementById("downPayment").value);
var interestRate = parseFloat(document.getElementById("interestRate").value);
var loanTermYears = parseFloat(document.getElementById("loanTermYears").value);
var resultDiv = document.getElementById("result");
resultDiv.innerHTML = ""; // Clear previous results
if (isNaN(annualIncome) || isNaN(existingMonthlyDebt) || isNaN(downPayment) || isNaN(interestRate) || isNaN(loanTermYears) ||
annualIncome < 0 || existingMonthlyDebt < 0 || downPayment < 0 || interestRate < 0 || loanTermYears <= 0) {
resultDiv.innerHTML = "Please enter valid positive numbers for all fields.";
return;
}
// Assuming a maximum allowable total DTI of 43% (common lender guideline)
var maxTotalDTI = 0.43;
var monthlyIncome = annualIncome / 12;
var maxAllowableTotalDebtPayment = monthlyIncome * maxTotalDTI;
var maxAllowableMortgagePayment = maxAllowableTotalDebtPayment – existingMonthlyDebt;
if (maxAllowableMortgagePayment 0) {
var numerator = Math.pow((1 + monthlyInterestRate), loanTermMonths) – 1;
var denominator = monthlyInterestRate * Math.pow((1 + monthlyInterestRate), loanTermMonths);
maximumLoanAmount = maxAllowableMortgagePayment * (numerator / denominator);
} else {
// Handle zero interest rate case (though highly unlikely for mortgages)
maximumLoanAmount = maxAllowableMortgagePayment * loanTermMonths;
}
var estimatedMaxHomePrice = maximumLoanAmount + downPayment;
resultDiv.innerHTML = "