Estimate your monthly house payment, including principal and interest.
30 Years Fixed
20 Years Fixed
15 Years Fixed
10 Years Fixed
Estimated Monthly Payment
$0.00
Total Principal: $0
Total Interest: $0
Total Cost of Loan: $0
Number of Payments: 0
How to Use the Mortgage Payment Calculator
Buying a home is one of the most significant financial decisions you will ever make. Our Mortgage Payment Calculator helps you breakdown the costs associated with a home loan so you can determine exactly how much house you can afford. By entering the home price, down payment, loan term, and current interest rates, you can visualize your financial commitment over the next several decades.
Understanding the Calculation Components
Principal: This is the total amount of money you borrow from the lender to purchase the home.
Interest: The cost charged by the lender for borrowing the money, expressed as an annual percentage rate (APR).
Loan Term: The duration of the loan. While 30-year fixed-rate mortgages are the most common, 15-year options often provide lower interest rates and significantly lower total interest costs.
Down Payment: The cash you pay upfront. A higher down payment reduces your loan-to-value (LTV) ratio, which can eliminate the need for Private Mortgage Insurance (PMI).
Real-World Example Calculation
If you purchase a home for $450,000 with a 20% down payment ($90,000), your loan amount (principal) is $360,000. At a 7% interest rate over a 30-year term:
Monthly Principal & Interest: ~$2,395.10
Total Interest Paid over 30 years: ~$502,236
Total Cost of Loan: ~$862,236
Tips for Lowering Your Monthly Payment
If the calculated monthly payment is higher than your budget allows, consider these strategies:
Increase your Down Payment: Even an extra $5,000 upfront can shave thousands off your long-term interest.
Improve your Credit Score: Borrowers with scores above 740 typically secure the lowest available interest rates.
Consider a Longer Term: Moving from a 15-year to a 30-year loan will lower the monthly obligation, though you will pay more in interest over time.
Shop Multiple Lenders: Mortgage rates can vary significantly between banks and credit unions.
function calculateMortgage() {
var homePrice = parseFloat(document.getElementById('homePrice').value);
var downPayment = parseFloat(document.getElementById('downPayment').value);
var loanTermYears = parseFloat(document.getElementById('loanTerm').value);
var annualRate = parseFloat(document.getElementById('interestRate').value);
if (isNaN(homePrice) || isNaN(downPayment) || isNaN(annualRate) || homePrice <= 0) {
alert("Please enter valid positive numbers for all fields.");
return;
}
var principal = homePrice – downPayment;
if (principal <= 0) {
alert("Down payment cannot be greater than or equal to the home price.");
return;
}
var monthlyRate = (annualRate / 100) / 12;
var numberOfPayments = loanTermYears * 12;
var monthlyPayment = 0;
// If interest rate is 0
if (monthlyRate === 0) {
monthlyPayment = principal / numberOfPayments;
} else {
// Formula: M = P [ i(1 + i)^n ] / [ (1 + i)^n – 1 ]
var x = Math.pow(1 + monthlyRate, numberOfPayments);
monthlyPayment = (principal * x * monthlyRate) / (x – 1);
}
var totalCost = monthlyPayment * numberOfPayments;
var totalInterest = totalCost – principal;
// Display results
document.getElementById('mortgageResult').style.display = 'block';
document.getElementById('monthlyPaymentDisplay').innerText = formatCurrency(monthlyPayment);
document.getElementById('totalPrincipalDisplay').innerText = formatCurrency(principal);
document.getElementById('totalInterestDisplay').innerText = formatCurrency(totalInterest);
document.getElementById('totalCostDisplay').innerText = formatCurrency(totalCost);
document.getElementById('totalPaymentsDisplay').innerText = numberOfPayments;
// Scroll to result smoothly
document.getElementById('mortgageResult').scrollIntoView({ behavior: 'smooth', block: 'nearest' });
}
function formatCurrency(num) {
return '$' + num.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
}