Estimate how much home you can comfortably afford based on your income and debts.
Loans, credit cards, etc.
30 Years Fixed
20 Years Fixed
15 Years Fixed
10 Years Fixed
Standard is 36%
Estimated Max Home Price
$0
Monthly P&I Payment$0
Total Loan Amount$0
How Much House Can You Actually Afford?
Understanding your home buying power is the most critical step in the real estate journey. While a bank might pre-approve you for a high amount, true affordability depends on your personal lifestyle, monthly obligations, and financial goals.
The 36% Rule (DTI Ratio)
Lenders typically use the Debt-to-Income (DTI) ratio to measure your ability to manage monthly payments. Most financial experts recommend that your total monthly debt payments—including your future mortgage, property taxes, and insurance—should not exceed 36% of your gross monthly income.
Factors That Impact Affordability
Gross Annual Income: Your total earnings before taxes.
Monthly Debts: These include car loans, student loans, and minimum credit card payments.
Down Payment: The more you put down upfront, the lower your loan amount and monthly interest will be.
Interest Rates: Even a 1% difference in interest rates can change your buying power by tens of thousands of dollars.
Example Calculation
If you earn $80,000 per year, your gross monthly income is $6,667. Using a 36% DTI limit, your total debt should not exceed $2,400. If you already have a $400 car payment, your maximum available mortgage payment (including taxes/insurance) would be approximately $2,000 per month.
function calculateHomeAffordability() {
var annualIncome = parseFloat(document.getElementById('annualIncome').value);
var monthlyDebt = parseFloat(document.getElementById('monthlyDebt').value);
var downPayment = parseFloat(document.getElementById('downPayment').value);
var interestRate = parseFloat(document.getElementById('interestRate').value);
var loanTerm = parseFloat(document.getElementById('loanTerm').value);
var dtiRatio = parseFloat(document.getElementById('dtiRatio').value) / 100;
if (isNaN(annualIncome) || isNaN(monthlyDebt) || isNaN(interestRate) || annualIncome <= 0) {
alert("Please enter valid positive numbers for income and rates.");
return;
}
// Monthly Gross Income
var monthlyGross = annualIncome / 12;
// Max Monthly Debt Allowance
var totalAllowedDebt = monthlyGross * dtiRatio;
// Available for Mortgage (Principal + Interest)
// We subtract existing debt and 15% buffer for Taxes/Insurance
var maxMonthlyPI = (totalAllowedDebt – monthlyDebt) * 0.85;
if (maxMonthlyPI <= 0) {
document.getElementById('maxHomePrice').innerText = "Insufficient Income";
document.getElementById('monthlyPI').innerText = "$0";
document.getElementById('totalLoan').innerText = "$0";
document.getElementById('affordabilityResult').style.display = "block";
return;
}
// Mortgage Amortization Formula: P = r * PV / (1 – (1 + r)^-n)
// We reverse it to find PV: PV = P * (1 – (1 + r)^-n) / r
var r = (interestRate / 100) / 12;
var n = loanTerm * 12;
var maxLoanAmount = maxMonthlyPI * (1 – Math.pow(1 + r, -n)) / r;
var maxHomePrice = maxLoanAmount + downPayment;
// Formatting
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
maximumFractionDigits: 0
});
document.getElementById('maxHomePrice').innerText = formatter.format(maxHomePrice);
document.getElementById('monthlyPI').innerText = formatter.format(maxMonthlyPI);
document.getElementById('totalLoan').innerText = formatter.format(maxLoanAmount);
document.getElementById('affordabilityResult').style.display = "block";
}