A free TValue-style engine: model missed payments, extra principal, lump sums, rate changes, and balloons — then export the schedule to CSV.
| Type | Month # | Amount / New Rate |
|---|
| Payoff date | — |
| Number of payments | — |
| Total paid (payments + extra) | — |
| Total principal repaid | — |
| Final balance | — |
| Month | Date | Payment | Interest | Principal | Extra | Balance |
|---|
Default inputs: $150,000 loan at 7.5% for 360 months, with one event pre-loaded — a $5,000 extra principal payment (curtailment) at month 24.
First, the level payment. Monthly rate i = 7.5% ÷ 12 = 0.625% (0.00625). Payment:
P = 150,000 × 0.00625 ÷ (1 − 1.00625−360) = $1,048.82
Here is the schedule around the curtailment. Going into month 23 the balance is $147,383.30:
| Month | Payment | Interest | Principal | Extra | Balance |
|---|---|---|---|---|---|
| 23 | $1,048.82 | $921.15 | $127.68 | $0.00 | $147,255.62 |
| 24 | $1,048.82 | $920.35 | $128.47 | $5,000.00 | $142,127.15 |
| 25 | $1,048.82 | $888.29 | $160.53 | $0.00 | $141,966.62 |
Walking through month 24: interest is 147,255.62 × 0.00625 = $920.35. The regular payment covers that interest plus $128.47 of scheduled principal, and the $5,000 curtailment comes straight off the balance on top: 147,255.62 − 128.47 − 5,000 = $142,127.15.
In month 25 the effect shows up immediately. Without the curtailment, interest would have been 147,127.15 × 0.00625 = $919.54. Instead it is 142,127.15 × 0.00625 = $888.29 — about $31.25 less every month (that's $5,000 × 0.625%), and because the payment is unchanged, all of that savings goes to principal ($160.53 instead of $128.34).
This generator uses simple periodic (monthly) interest, the standard convention for U.S. mortgage notes and the same method desktop tools like TValue use in their normal amortization mode:
i = annual nominal rate ÷ 12. No daily accrual or compounding tricks — each month charges exactly one period of interest.interest = current balance × i. Interest is always computed on the balance carried into the month, never on the original loan amount.P = UPB × i ÷ (1 − (1 + i)−n), where UPB is the unpaid principal balance and n the term in months. If the rate is 0%, the payment is simply UPB ÷ n. You can override the computed payment with any amount.principal = payment − interest. The balance then steps down by principal plus any extra amounts.The engine builds the schedule one month at a time and processes events in order, exactly the way a loan servicer would post transactions:
Rounding: all intermediate balances are carried at full precision — only the display is rounded. Whatever rounding drift accumulates is absorbed in the final row, whose payment is set to remaining balance + final month's interest, so the ending balance is exactly $0.00.
Assumptions and limitations: payments are assumed on time (except modeled events), monthly periods are equal (no odd-day or per-diem interest), late fees and escrow are excluded, and extra amounts are applied to principal the same month they are received. The schedule is capped at 1,200 months; a payment override too small to ever retire the balance will be flagged.
Add a "Missed payment" event for each month the borrower skipped. In that month the payment is $0, but interest still accrues at balance × monthly rate, and the unpaid interest is added to the loan balance. This is called negative amortization — the balance goes up instead of down — and it extends the payoff date because every later month's interest is computed on the larger balance. Standard spreadsheet amortization formulas can't model this, which is why a schedule engine that processes events month by month (like this tool or desktop software such as TValue) is needed.
A lump sum (curtailment) is applied entirely to principal in the month it is paid, on top of the regular payment. The balance drops immediately, so every subsequent month's interest charge (balance × monthly rate) is smaller. If the payment stays the same, more of each payment goes to principal, the loan pays off early, and total interest falls. The payment amount does not change unless the loan is recast — only the payoff date and interest totals change.
From the effective month forward, interest is computed at the new monthly rate (new annual rate ÷ 12) on the current balance. There are two conventions: (1) re-amortize — recompute the payment so the balance amortizes to zero over the remaining original term, which is how most ARMs adjust; or (2) keep the payment level — the payment stays the same, so a rate increase slows principal reduction (and can cause negative amortization if interest exceeds the payment), while a rate decrease accelerates payoff. This tool supports both via the re-amortize checkbox on the rate change event.
Negative amortization happens when a month's payment is less than the interest due, so the shortfall is added to the loan balance and the debt grows instead of shrinking. Common causes: missed payments, payment-option loans, or a rate increase on a loan with a fixed payment. In a schedule it shows up as negative principal and a rising balance column. It is legal and contractually common in workouts and forbearance plans, but it increases total interest because future interest accrues on the larger balance.
Yes — this page. TValue is desktop software note investors use to build amortization schedules with irregular events (skipped payments, extra principal, rate changes, balloons). This generator uses the same simple periodic interest method (interest = balance × annual rate ÷ 12, applied month by month with events processed in order) and exports the full schedule to CSV. It runs entirely in your browser, free, with no install or account. It does not cover every TValue feature (daily interest, odd-day accruals, exotic compounding), but it handles the event types most note schedules require.
Mathematically nothing — both are amounts applied directly to principal beyond the scheduled payment, and this tool processes them identically. By convention, "extra principal" usually refers to a modest recurring add-on to the monthly payment, while "curtailment" or "lump sum" refers to a one-time large paydown (for example, applying a bonus or sale proceeds). Both reduce the balance immediately, shorten the loan, and cut total interest without changing the required payment.
Because the level payment is rounded to the cent, tiny rounding differences accumulate over hundreds of months, and events like extra principal change the trajectory entirely. A correct schedule absorbs all of that in the last row: the final payment equals the remaining balance plus one month's interest on it, whatever that turns out to be, so the ending balance is exactly $0.00. This tool follows that convention, which is also what servicers and tools like TValue do.