Tabellab
Excel formulas

How to build a loan amortization schedule in Excel

An amortization schedule shows, payment by payment, how much of a loan instalment is interest, how much repays the loan, and what you still owe afterwards. You need only one Excel function, PMT, and four simple formulas per row. This guide builds a full schedule for a $12,000 loan at 9% over 12 months. The monthly payment is $1,049.42 and the balance ends at exactly zero.

Updated 19 Oct 2026 5 min read By Tabellab team

Step 1: the payment with PMT

=PMT(rate, nper, pv) returns the level payment that repays a loan of pv over nper periods. Two details matter:

  • Match the periods. For monthly payments, use the monthly rate (annual rate ÷ 12) and the number of months. 9% a year is 0.75% a month.
  • Mind the sign. Excel treats money you receive as positive and money you pay as negative. Enter the loan as -B1 and the payment comes out positive.

So =PMT(B2/12,B3,-B1) gives $1,049.42 a month.

Step 2: one row per payment

Each row of the schedule follows the same four steps:

  1. Interest = opening balance × monthly rate: =B7*$B$2/12
  2. Principal = payment − interest: =C7-D7
  3. Closing balance = opening balance − principal: =B7-E7
  4. The next row's opening balance = this row's closing balance: =F7

Build the first row, then fill it down. The dollar signs in $B$2 and $B$4 keep the rate and the payment fixed while the row references move.

Worked example: $12,000 over 12 months at 9%

Rows 7 to 18 all use the same formulas, filled down from row 7.

Worked example: $12,000 over 12 months at 9%
ABCDEF
1Loan amount ($)12,000.00
2Annual interest rate9.00%
3Number of monthly payments12
4Monthly payment1,049.42
5
6MonthOpening balancePaymentInterestPrincipalClosing balance
7112,000.001,049.4290.00959.4211,040.58
8211,040.581,049.4282.80966.6110,073.97
9310,073.971,049.4275.55973.869,100.11
1049,100.111,049.4268.25981.178,118.94
1158,118.941,049.4260.89988.537,130.41
1267,130.411,049.4253.48995.946,134.47
1376,134.471,049.4246.011,003.415,131.06
1485,131.061,049.4238.481,010.934,120.13
1594,120.131,049.4230.901,018.523,101.61
16103,101.611,049.4223.261,026.162,075.46
17112,075.461,049.4215.571,033.851,041.61
18121,041.611,049.427.811,041.610.00
19Total12,593.01593.0112,000.00
Key formulas
  • B4=PMT(B2/12,B3,-B1)Level monthly payment
  • B8=F7Opening = previous closing
  • D7=B7*$B$2/12Interest on the opening balance
  • E7=C7-D7Principal repaid
  • F7=B7-E7Closing balance
  • E19=SUM(E7:E18)Must equal the loan amount

Step 3: check the schedule

A correct schedule has three built-in checks. The closing balance after the last payment is 0. The principal column adds up to the loan amount ($12,000). And total payments minus the loan equals total interest: $12,593.01 − $12,000 = $593.01. If the last balance is not zero, the rate and the number of periods do not match, usually an annual rate used with monthly periods.

IPMT and PPMT: one payment without the whole table

If you only need the split of one payment, Excel has two shortcuts. =IPMT(B2/12,1,B3,-B1) returns the interest in month 1 ($90.00) and =PPMT(B2/12,1,B3,-B1) the principal ($959.42). Change the second argument to any month number. For the balance still owed after n payments, use =-FV(B2/12,n,-B4,B1). Note the sign here: FV takes the payment as negative and the loan as positive, the opposite of PMT above.

What changes the payment and the total interest

Three inputs drive everything: the amount, the rate and the term. Stretch the same $12,000 loan to 24 months and the payment drops to $548.22, but total interest rises from $593.01 to $1,157.21. Raise the rate to 12% over 12 months and the payment becomes $1,066.19, with $794.23 of interest. Because the inputs sit in their own cells, you can test each case by changing one number. The whole schedule updates, and the last closing balance stays at zero as long as the number of rows matches the number of payments.

If you want the schedule to adapt to any term automatically, wrap each row in an IF that returns an empty string once the month number is greater than the term, for example =IF(A7>$B$3,"",B7*$B$2/12).

Why early payments are mostly interest

Interest is charged on what you still owe, and at the start you owe the most. In this short loan, the interest share falls from $90.00 in month 1 to $7.81 in month 12. On a long mortgage the effect is much stronger: on a $300,000 loan at 6% over 25 years, the payment is $1,932.90 and the first month's interest alone is $1,500.00. That is why extra repayments early in a loan save so much interest.

Common mistakes

  • Annual rate with monthly periods. =PMT(9%,12,-12000) calculates twelve annual payments at 9% a year. Divide the rate by 12.
  • Negative payments everywhere. Forgetting the minus in front of the loan makes PMT negative and flips the sign of every column. Pick one convention and stick to it.
  • Relative references to the inputs. Without $B$2, filling the formulas down shifts the rate reference into empty cells and the interest turns to zero.
  • Rounding the payment in the schedule but not in PMT. If the lender rounds each payment to the cent, the last payment absorbs the difference. Expect a few cents of difference, not dollars.
  • Ignoring fees. The schedule shows the interest rate, not the full cost of the loan. Fees raise the effective rate.
  • Filling the schedule past the last payment. Extra rows keep subtracting the payment and show negative balances. Stop at the final month, or blank the extra rows with IF as shown above.
  • Mixing up interest rate and APR. Lenders often quote an annual percentage rate that already includes fees. The schedule needs the nominal interest rate the lender charges on the balance.

Frequently asked questions

How do I add extra payments to an amortization schedule?

Add an "Extra payment" column and subtract it in the closing balance: closing = opening − principal − extra. The loan then ends early, so wrap the formulas in MIN or IF to stop at zero.

What does PMT return without the minus sign?

A negative number, because Excel treats the loan you receive as positive and the payments you make as negative. The amount is the same, only the sign differs.

How do I calculate the remaining balance after n payments?

Use =-FV(rate/12, n, -payment, loan), or read the closing balance of row n in the schedule. Both give the same answer.

Does this work for a mortgage?

Yes. A fixed-rate mortgage is the same calculation with more rows, for example 300 rows for 25 years of monthly payments.

Practise it in a lab

Related guides

Reading is step one. Doing is step two.

Every guide links to a lab where you build the same calculation in an online spreadsheet and get instant feedback.

Open the lab