Use this calculator to estimate your monthly mortgage payment. Enter the home price, down payment, loan term, and interest rate to see how much you'll pay each month.
function calculateMortgage() {
var price = parseFloat(document.getElementById('homePrice').value);
var down = parseFloat(document.getElementById('downPayment').value);
var term = parseInt(document.getElementById('loanTerm').value);
var rate = parseFloat(document.getElementById('interestRate').value);
var resultDiv = document.getElementById('mortgageResult');
// Validate inputs
if (isNaN(price) || price <= 0) {
resultDiv.innerHTML = 'Please enter a valid Home Price.';
return;
}
if (isNaN(down) || down < 0) {
resultDiv.innerHTML = 'Please enter a valid Down Payment.';
return;
}
if (down >= price) {
resultDiv.innerHTML = 'Down Payment must be less than Home Price.';
return;
}
if (isNaN(term) || term <= 0) {
resultDiv.innerHTML = 'Please enter a valid Loan Term.';
return;
}
if (isNaN(rate) || rate < 0) {
resultDiv.innerHTML = 'Please enter a valid Interest Rate.';
return;
}
var principal = price – down;
var monthlyRate = rate / 100 / 12;
var numberOfPayments = term * 12;
var monthlyPayment;
if (monthlyRate === 0) {
monthlyPayment = principal / numberOfPayments;
} else {
monthlyPayment = principal * monthlyRate * Math.pow(1 + monthlyRate, numberOfPayments) / (Math.pow(1 + monthlyRate, numberOfPayments) – 1);
}
monthlyPayment = monthlyPayment.toFixed(2);
resultDiv.innerHTML = 'Estimated Monthly Payment: $' + monthlyPayment;
}