Mortgage calculator with amortization schedule

Work out the monthly payment, total interest and a month-by-month amortization schedule from the loan amount, rate and term. Compare level payment and level principal, and see what extra payments save.

Loan

Only changes the cost labels and the default currency and term. No rates or taxes are filled in.

Changes symbols and rounding (minor unit) only. No exchange rates are applied.

%
Repayment method

Level payment: the same payment every month. Level principal: the same principal every month, so payments start higher and decrease.

Extra repayments (optional)

One-time
Recurring
What the extra repayment does

Other costs (optional, can be left empty)

Added on top of principal and interest: monthly costs and a one-time upfront fee.

How to use

  1. Enter the loan amount, the annual interest rate and the term in years (plus months), and pick a repayment method.
  2. The monthly payment, total interest, total repaid, payoff time and the full monthly schedule appear right away.
  3. For extra payments, enter a one-time amount (after which payment) and/or a recurring amount (every month or every year), then choose "Shorten the term" or "Reduce the payment". A comparison with no extra payments is shown.
  4. Optionally add monthly property tax, insurance and other fees, plus a one-time upfront fee, to see your total outflow. These fields can stay empty.
  5. Use "Download CSV" to open the schedule in a spreadsheet.

Notes and limits

  • The rate is treated as fixed for the whole term. Adjustable-rate resets, interest-only periods, graduated payments, balloon payments and tax deductions are not modeled.
  • Results may differ from your lender's figures because of rounding, day-count conventions and fees. Ask your lender for official numbers.
  • The example country only changes cost labels and the default currency and term. No rates, taxes or exchange rates are fetched.
  • Terms up to 50 years (600 payments) and rates from 0 to 100% are supported.

How it works

Monthly rate = annual rate ÷ 12. One payment is made at the end of each month.

All amounts are kept as whole minor units of the selected currency (cents for USD, yen for JPY). Each month, interest = balance × monthly rate, rounded half up to the minor unit.

Level payment = loan × r ÷ (1 − (1 + r)^−n), rounded half up to the minor unit; at 0% it is loan ÷ n. Level principal pays loan ÷ n of principal (rounded half up) plus that month's interest.

The last payment is adjusted so the final balance is exactly 0, absorbing any rounding differences.

Extra payments are applied to principal right after that month's scheduled payment, never more than the remaining balance. "Shorten the term" keeps the scheduled payment (or principal part) and ends the loan sooner; "Reduce the payment" keeps the end date and recalculates the payment from the new balance over the remaining months.

Monthly costs are counted for every month until payoff; the upfront fee is added once. Prepayment penalties are not included.

FAQ

Is it 1,798.65 for 300,000 at 6% over 30 years?

Yes. With level payments, a 300,000 loan at 6% for 30 years has a monthly principal-and-interest payment of 1,798.65. The last payment is adjusted slightly so the balance ends at exactly 0.

Should I shorten the term or reduce the payment?

Shortening the term usually saves more interest. Reducing the payment keeps the same end date and lowers what you pay each month. The comparison table shows both results for your numbers.

Does the monthly payment include taxes and insurance?

The main figure is principal and interest only. When you enter property tax, insurance or other fees, the monthly and total outflow including those costs are shown separately.

Is what I enter saved or sent anywhere?

No. The calculation runs in your browser and nothing is stored or sent.

Last updated: