Estimate your monthly payments and total interest costs.
%
yrs
Estimated Monthly Payment
$0.00
(Includes Principal, Interest, Tax & Insurance)
Principal & Interest$0.00
Total Interest Paid$0.00
Total Cost of Loan$0.00
Understanding Your Mortgage Amortization
Buying a home is likely the largest financial decision you will make in your lifetime. Understanding how your mortgage works—specifically the concept of amortization—is crucial for financial planning and long-term wealth building. This Mortgage Amortization Calculator helps you break down your monthly payments and visualize exactly where your money is going.
What is Mortgage Amortization?
Amortization refers to the process of spreading out a loan into a series of fixed payments over time. While your total monthly payment remains the same for fixed-rate mortgages, the portion of that payment that goes toward Principal (the loan balance) versus Interest (the bank's profit) changes dramatically over the life of the loan.
In the early years of a mortgage, the majority of your payment goes toward interest. As time passes and the principal balance decreases, less interest accrues, and more of your payment starts chipping away at the principal. This is why it takes so long to build equity in the first 5-10 years of a 30-year mortgage.
Key Inputs for Calculation
Home Price: The total purchase price of the real estate.
Down Payment: The upfront cash you pay. A higher down payment reduces your loan amount, monthly payment, and total interest paid. If you put down less than 20%, you may also owe Private Mortgage Insurance (PMI), though this calculator focuses on standard P&I + Tax/Insurance.
Interest Rate: The annual cost of borrowing money. Even a 0.5% difference can save or cost you tens of thousands of dollars over 30 years.
Loan Term: typically 15 or 30 years. A 15-year term usually has lower interest rates and pays off the house faster, but comes with significantly higher monthly payments.
The Impact of Extra Payments
Because interest is calculated based on your remaining balance, making extra payments directly towards the principal can shave years off your loan term and save you massive amounts in interest. Use the calculator above to see your baseline, and consider how adding just $100 a month to the principal might change your financial future.
PITI: The Full Monthly Cost
While amortization focuses on the loan, your actual monthly bill usually includes PITI: Principal, Interest, Taxes, and Insurance. This calculator includes fields for Property Tax and Homeowner's Insurance to give you a more realistic estimate of the check you will write every month.
Disclaimer: This calculator is for educational purposes only. Actual rates and payments will vary based on your credit score, lender, and specific location.
function calculateMortgage() {
// 1. Get Input Values
var price = parseFloat(document.getElementById('mc-home-price').value);
var downPayment = parseFloat(document.getElementById('mc-down-payment').value);
var interestRate = parseFloat(document.getElementById('mc-interest-rate').value);
var termYears = parseFloat(document.getElementById('mc-loan-term').value);
var yearlyTax = parseFloat(document.getElementById('mc-property-tax').value);
var yearlyInsurance = parseFloat(document.getElementById('mc-insurance').value);
// 2. Validate Inputs
if (isNaN(price) || isNaN(downPayment) || isNaN(interestRate) || isNaN(termYears)) {
alert("Please enter valid numbers for Price, Down Payment, Rate, and Term.");
return;
}
// Handle optional fields if empty
if (isNaN(yearlyTax)) yearlyTax = 0;
if (isNaN(yearlyInsurance)) yearlyInsurance = 0;
// 3. Core Calculations
var principal = price – downPayment;
// Prevent negative principal
if (principal <= 0) {
alert("Down payment cannot be greater than or equal to Home Price.");
return;
}
var monthlyInterestRate = (interestRate / 100) / 12;
var numberOfPayments = termYears * 12;
// Monthly Principal & Interest (PI) Formula: M = P [ i(1 + i)^n ] / [ (1 + i)^n – 1 ]
var x = Math.pow(1 + monthlyInterestRate, numberOfPayments);
var monthlyPI = (principal * x * monthlyInterestRate) / (x – 1);
// Handle edge case of 0% interest
if (interestRate === 0) {
monthlyPI = principal / numberOfPayments;
}
// Calculate Monthly Tax and Insurance
var monthlyTax = yearlyTax / 12;
var monthlyInsurance = yearlyInsurance / 12;
// Total Monthly Payment
var totalMonthlyPayment = monthlyPI + monthlyTax + monthlyInsurance;
// Total Loan Cost
var totalAmountPaidToLoan = monthlyPI * numberOfPayments;
var totalInterestPaid = totalAmountPaidToLoan – principal;
// 4. Formatting Results (Currency)
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2
});
// 5. Update the DOM
document.getElementById('mc-result-monthly').innerHTML = formatter.format(totalMonthlyPayment);
document.getElementById('mc-result-pi').innerHTML = formatter.format(monthlyPI);
document.getElementById('mc-result-interest').innerHTML = formatter.format(totalInterestPaid);
document.getElementById('mc-result-total').innerHTML = formatter.format(totalAmountPaidToLoan + (yearlyTax * termYears) + (yearlyInsurance * termYears));
// Show results container
document.getElementById('mc-results').style.display = 'block';
}