Estimate how much house you can afford based on your income and debts.
30 Years
15 Years
20 Years
10 Years
Your Estimated Affordability
Recommended Home Price$0
Monthly Mortgage (P&I)$0
Total Monthly Payment$0
*Estimation based on a conservative 36% Debt-to-Income (DTI) ratio.
How to Calculate Home Affordability
Understanding how much house you can afford is the most critical step in the home-buying process. Lenders primarily look at your Debt-to-Income (DTI) ratio. This ratio compares your total monthly debt obligations to your gross monthly income.
The 36% Rule
Most financial experts recommend that your total monthly debt payments (including your new mortgage, taxes, insurance, car loans, and credit cards) should not exceed 36% of your gross monthly income. This calculator uses this conservative threshold to ensure you remain financially stable after purchase.
Key Factors Influencing Your Budget
Gross Annual Income: Your total earnings before taxes. The higher your income, the larger the loan you can support.
Existing Debt: Monthly payments like student loans, car notes, and minimum credit card payments reduce the amount of income available for a mortgage.
Down Payment: The cash you pay upfront. A larger down payment reduces the loan amount and can eliminate the need for Private Mortgage Insurance (PMI).
Interest Rates: Even a 1% change in interest rates can shift your buying power by tens of thousands of dollars.
Example Calculation
If you earn $80,000 per year, your gross monthly income is $6,666. Using the 36% rule:
$6,666 x 0.36 = $2,400 (Maximum allowed for all debt).
If you have $400 in existing car/student debt:
$2,400 – $400 = $2,000 available for Monthly Mortgage, Tax, and Insurance.
function calculateAffordability() {
var annualIncome = parseFloat(document.getElementById('annualIncome').value);
var monthlyDebt = parseFloat(document.getElementById('monthlyDebt').value) || 0;
var downPayment = parseFloat(document.getElementById('downPayment').value) || 0;
var interestRate = parseFloat(document.getElementById('interestRate').value) / 100 / 12;
var loanTermYears = parseFloat(document.getElementById('loanTerm').value);
var taxInsurance = parseFloat(document.getElementById('taxInsurance').value) || 0;
var totalMonths = loanTermYears * 12;
if (!annualIncome || annualIncome <= 0 || !interestRate || interestRate <= 0) {
alert("Please enter valid income and interest rate values.");
return;
}
// Conservative DTI Rule: 36% of gross income
var monthlyGrossIncome = annualIncome / 12;
var maxTotalMonthlyDebt = monthlyGrossIncome * 0.36;
// Amount available for Principle and Interest
var availableForPI = maxTotalMonthlyDebt – monthlyDebt – taxInsurance;
if (availableForPI <= 0) {
alert("Your existing debts and taxes exceed the recommended 36% DTI ratio for this income level.");
return;
}
// Mortgage formula: P = L[c(1 + c)^n] / [(1 + c)^n – 1]
// Reversing it to find Loan Amount (L): L = P / ([c(1 + c)^n] / [(1 + c)^n – 1])
var factor = (interestRate * Math.pow(1 + interestRate, totalMonths)) / (Math.pow(1 + interestRate, totalMonths) – 1);
var loanAmount = availableForPI / factor;
var maxHomePrice = loanAmount + downPayment;
// Formatting
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
maximumFractionDigits: 0
});
document.getElementById('homePriceDisplay').innerText = formatter.format(maxHomePrice);
document.getElementById('monthlyPIDisplay').innerText = formatter.format(availableForPI);
document.getElementById('totalMonthlyDisplay').innerText = formatter.format(availableForPI + taxInsurance);
document.getElementById('resultArea').style.display = 'block';
document.getElementById('resultArea').scrollIntoView({ behavior: 'smooth', block: 'nearest' });
}