Amortization Calculator (Schedule, Extra Payments, Payoff Date)

See your loan’s payment schedule, interest and savings from extra payments. For yearly mortgage overpayments starting later, use the Mortgage Payoff Calculator.

How much you are borrowing before extra payments. You can enter 250000, 250,000, or $250,000.

“Annual contract interest rate (%)” excludes fees. A fee-inclusive APR can give the wrong payment schedule. Interest rate versus APR

Enter the loan’s annual contract interest rate in “Annual contract interest rate (%)”, excluding fees. Enter fees separately in “Upfront fees (optional)” under “Advanced options”.
Note: This calculator divides the contract annual interest rate by payments per year. Some lenders use daily interest or different rounding.
How long the loan lasts if you only make the required payments. For a 36-month loan, enter 3 years.
How often you make payments: Monthly (12/yr), Biweekly (26/yr), or Weekly (52/yr).
The date your first regular payment is due. This sets the schedule dates.
If blank, this calculator will start one period from today.
Advanced options
Extra amount added to every scheduled payment. This goes to principal and can shorten the loan.
A one-time extra payment that goes straight to principal.
When the one-time extra payment happens. Must be on or after the first payment date.
Rule: If the date is between payment dates, it will be applied on the next payment date in the schedule.
If you plan to stop early with a remaining balance, enter the balance you expect to still owe at the balloon date. Leave 0 for a fully paid-off loan.
The date the balloon balance is due (when you stop the schedule).
Schedule stops on this date (or on the next payment date if this is between payment dates).
Fees paid at the start (like origination fees). Choose whether to add them to the loan amount.
If Yes, fees increase the starting balance. If No, fees are tracked as a cost but do not change the balance.
Some schedules round interest and principal to the nearest cent each payment. Others carry extra decimals internally and only round displayed values.
Required payment (without extras)
–
The payment amount needed to pay the loan off by the end of the term, before any optional extra payments.
If you add extra payments, your actual payment can be higher, and you may pay off earlier.
First payment total (with extras, if any)
–
Your first payment including recurring extra payment and any one-time extra that happens on that date.
If your one-time extra is on a different date, it will not show in the first payment.
Payoff date
–
The date the balance reaches $0 (or the balloon date if you set a balloon balance).
Earlier payoff usually means less total interest.
Number of payments
–
How many payments happen until payoff (or balloon).
For monthly it is usually term_years times 12 unless you add extra payments.
Total interest paid
–
Total cost of interest across all payments in the schedule.
Compare this across scenarios to see savings.
Total principal paid
–
Total principal repaid through regular and extra payments (not including any remaining balloon balance).
For a full payoff with no balloon, this should match your starting principal (plus financed fees if selected).
Total fees paid
–
Upfront fees you entered. If you add fees to the loan, they also affect interest.
Fees can raise the true cost even if the interest rate is the same.
Balloon balance due (if used)
–
The remaining balance on the balloon date.
If you set balloon balance to 0, this output should be 0.
Interest saved vs base plan
–
How much interest you save compared to the same loan with no extra payments and no balloon.
If this is negative, your chosen options increased interest (possible with financed fees or balloon settings).
Time saved vs base plan
–
How much sooner you finish compared to the base plan (no extras, no balloon).
Reported in years and months for readability.
Rounding note: You chose rounding each payment. This can differ from lender statements by a few cents depending on their rules.

Balance over time

Start End 0

Payment mix snapshots

These bars use totals for the selected year: interest (gray) plus principal (green).
Year 1
InterestPrincipal
Year 5
InterestPrincipal
Last year
InterestPrincipal
Amortization schedule
Payment = required payment plus extras that apply that period.
Every payment, regardless of table grouping. Amounts use the same two-decimal display as the table. Opens in spreadsheet apps; this is not an offline calculator.
Date Payment Interest Principal Balance
Did we solve your problem today?

How to use this calculator

Need yearly extra payments that begin later? For a current mortgage, use the Mortgage Payoff Calculator. Enter “Extra principal per year (USD/year)”, then set “When do recurring extra payments start?” and “Month for yearly extra payment” in “Advanced options”. That tool works from your current balance; this page retains a loan schedule with your chosen first payment date.

  1. Enter the loan amount (principal), which is the amount you borrowed. Currency fields accept plain digits, conventional three-digit comma grouping, or a leading dollar sign, such as 250000, 250,000, or $250,000.
  2. In "Annual contract interest rate (%)", enter the loan’s contract interest rate, not a fee-inclusive disclosure APR. This schedule divides the entered interest rate by the number of payments per year and handles your entered fees separately.
  3. Enter the loan term in years (how long the loan would last with only the required payments).
  4. Pick a payment frequency: Monthly (12 per year), Biweekly (26 per year), or Weekly (52 per year).
  5. Set the first payment date, or leave it blank to start one period from today (based on the frequency).
  6. Optional: Open Advanced options to add an extra payment each period, a one-time lump sum (and its date), upfront fees (and whether fees are added to the loan), or a balloon balance and balloon date.
  7. Click Calculate to see the required payment (without extras), payoff date, totals, and the full amortization schedule with dates.
  8. Use the comparison outputs (time saved and interest saved vs base plan) to understand how your extra payments or balloon change the total cost.

Methodology

Definitions: Principal is the amount borrowed at the start. Interest is the cost of borrowing. Balance is what you still owe before a payment. Term is how long the loan lasts in years. Payment frequency is how often you pay (monthly, biweekly, weekly). Amortization means each payment includes some interest and some principal, so the balance goes down over time. [1]

Step 1: Set payments per year based on frequency: monthly = 12, biweekly = 26, weekly = 52. Compute the periodic interest rate as rate per period = (contract annual interest rate as a percent / 100) / payments per year.

Step 2: Set the starting balance. If you choose to add upfront fees to the loan, starting balance = loan amount + fees. If not, starting balance = loan amount, and fees are tracked only as a separate cost.

Step 3 (base plan required payment): Let requested payments = loan term in years * payments per year. With "Round interest to cents each payment," all balances, interest, principal, and payments are whole cents. The calculator searches cents and chooses the lowest required payment that reaches a zero balance within the requested term; one cent less must not finish that term. With carry-decimals mode, it uses the standard fixed-payment formula. The chosen required payment is shown as "Required payment (without extras)".

Step 4 (build the schedule, one payment at a time): For each payment date in RoundEach mode, rounded interest cents = round(current balance cents * rate per period), actual payment cents are capped at balance plus interest, principal cents = payment cents - interest cents, and new balance cents = old balance cents - principal cents. Every completed row must satisfy payment = interest + principal and must strictly reduce the balance. Recurring and dated extra payments are included in that period actual payment without allowing the balance to fall below zero.

Step 5 (rounding choice): If "Round interest to cents each payment" is selected, each schedule row is computed in integer cents before the next balance is calculated. If the other rounding option is selected, the calculator keeps full precision internally and rounds only displayed values. Different lender rounding conventions can still produce small differences.

Step 6 (last payment cap): If extras would make the balance go below 0, the last payment is reduced so the ending balance becomes exactly 0. Payoff date is the date of that final payment. Number of payments is how many payment rows were needed.

Step 7 (balloon option): If a balloon date is set, the schedule stops on the first scheduled payment date that is on or after the balloon date. The remaining balance at that stop point is reported as the balloon balance due. If a balloon balance amount is also entered, it is treated as a target and must not be greater than the starting balance; the schedule stops when the computed balance is at or below the target (within normal cent rounding), and that remaining amount is reported as due.

Step 8 (totals and comparison): Total interest paid is the sum of all per-payment interest amounts in the schedule. Total principal paid is the sum of all principal reductions (including extras) and does not include any balloon balance left unpaid. Total fees paid equals the upfront fees entered. Interest saved vs base plan and time saved vs base plan are computed by running a base schedule with the same loan, rate, term, frequency, and first payment date, but with no extras, no balloon, and no fees added to the loan (fees tracked separately), then subtracting your scenario results from the base results.

Safety rules: Currency fields accept plain digits, conventional three-digit comma grouping, or a leading dollar sign and reject malformed grouping or more than two decimal places. Inputs must be non-negative where appropriate, term and loan amount must be greater than 0, a lump sum date is required if the lump sum amount is greater than 0, balloon date cannot be before the first payment date, and the schedule stops with an error if it would exceed 10000 payments to avoid infinite loops.

Sources