Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

An annuity schedule keeps the combined payment level; an equal-principal schedule keeps the principal portion level, so its total payment falls as interest declines. The TypeScript example below builds both schedules for the same principal, periodic rate, and term, making their cash flows directly comparable.

What an amortization schedule shows

An amortization schedule breaks each installment into interest and principal, then tracks the remaining balance. In a typical fixed-rate mortgage, the combined principal-and-interest payment stays substantially equal while the share going to interest falls and the share going to principal rises over time. See the CFPB explanation of how mortgage payments reduce a balance.

This example uses regular periods and a fixed rate. It models principal and interest only: it does not include taxes, insurance, fees, prepayments, or other contract terms.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How the two repayment methods differ

Schedule feature Annuity (equal payment) Equal principal
Principal portion Starts smaller and grows as the interest share shrinks. Same each period.
Total installment Level under fixed-rate, regular-period assumptions. Starts higher and declines as interest falls.
Balance reduction Principal reduction accelerates over time. Balance falls by the same principal amount each period.
Typical tradeoff More predictable installment amount. Higher early installments and faster early balance reduction.
Total interest Generally higher than equal principal for the same principal, positive fixed rate, and term. Generally lower under those matched assumptions.

These are consequences of the stated model, not universal promises about loan contracts. Oracle describes equal-principal repayment as equal principal across installments with variable interest and a varying total payment in its Oracle Loans User Guide.

#1 Best Overall
Sale
BA II Plus Financial Calculator
  • Profitability calculations; cash flow function Calculates NPV and IRR for uneven cash flows
  • Time-value-of-money and Amortization keys solve problems including: pension calculations, loans, mortgages, etc.
  • Ideal calculator for students, managers and statisticians
  • Built-in functionality : List-based one- and two-variable statistics with four regression options: linear, logarithmic, exponential and power
  • The BA II Plus calculator is approved for use on the following professional exams: Chartered Financial Analyst exam. GARP Financial Risk Manager (FRM) exam. Certified Management Accountants exam

Define the inputs and formulas

Let P be starting principal, n the number of payment periods, and r the rate per period. The code expects r as a decimal, so 0.05 means 5% per period; 5 means 500% per period. It does not convert an annual rate. If the input is annual, first choose the payment frequency and whether the quoted rate is nominal or effective, then convert it consistently to a per-period rate.

Annuity payment

For nonzero r, the level payment is P × r / (1 − (1 + r)−n). For zero interest, it is P / n. Each period, interest is opening balance times r; principal is payment minus interest; closing balance is opening balance minus principal.

Rank #2
CATIGA Financial Calculator Business Analyst Master, TVM, IRR, NPV, Cash Flow, Amortization & Break-Even, Perfect for Real Estate, Banking, Accounting & Finance Professionals, 10-Digit LCD, CF-300
  • PROFESSIONAL FINANCIAL CALCULATOR : Built-in TVM, IRR, NPV. Engineered for business analysts, real estate investors, accountants, and finance students.
  • ADVANCED CASH FLOW & AMORTIZATION : Execute time value of money, break-even analysis, depreciation schedules, and bond pricing. Trusted for professional exam prep", MBA coursework, and banking certifications.
  • CATIGA CF-300 : Flip-open hard case with a snap-close design for a secure fit. Compact and portable: designed for daily professional use in office, classroom, or on-site.
  • ALL-IN-ONE FOR PROFESSIONALS : From NPV/IRR for real estate analysis to statistical calculations for business analysts. Handles probability, linear regression, and complex financial formulas.
  • MORTGAGE, LOAN & INVESTMENT CALCULATOR : Covers bond pricing, loan amortization, investment analysis, and exam-level computations. Your go-to accounting calculator, business calculator, and real estate calculator in one device.

Equal-principal payment

Scheduled principal is P / n each period. Interest is opening balance times r, and total payment is scheduled principal plus interest. With a positive fixed rate, the declining opening balance makes the interest and total payment decline.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Build both schedules in TypeScript

This teaching implementation retains unrounded values through the recurrence and rounds only when formatting output. It accepts finite, nonnegative principal, a positive integer term, and a finite, nonnegative periodic rate. Negative rates are deliberately not supported. The last row uses the remaining balance as its principal amount to close the schedule without a floating-point residue.

Rank #3
HP 10bII+ Financial Calculator, 100+ Functions, Statistics & Algebra
  • HP 10BII+ FOR STUDENTS & PROFESSIONALS – This HP calculator is built for business, finance, accounting, and statistics courses. Perfect for learners and professionals who need to solve common financial problems quickly without memorizing formulas or relying on spreadsheets.
  • 100+ FUNCTIONS FOR REAL WORLD MATH – Quickly solve time value of money, interest rates, loan payments, NPV, IRR, cash flows, and more. The 10bII+ also includes probability distributions for statistics courses—a feature not often found in financial calculators.
  • ALGORITHMIC INPUT WITH DEDICATED KEYS – This high-school/college calculator uses algebraic and chain logic with minimal keystrokes. Layout appears the same as standard calculators for easy learning. Dedicated keys give quick access to commonly used financial and statistical functions
  • APPROVED FOR MAJOR EXAMS – The HP 10bII+ algebra calculator is permitted for use on SAT, PSAT/NMSQT, and AP tests. An ideal statistics calculator and business calculator for school finance and accounting students preparing for class, coursework, or standardized exams.
  • INCLUDES TRAVEL CASE, CLEANING CLOTH & BATTERIES– Slim, durable, and easy to keep on hand or store in a backpack or locker. Includes a protective case, cleaning cloth, and batteries so it’s ready out of the box. Large screen with clear contrast (non-backlit) is easy to read during exams or lectures.
type ScheduleRow = {
  period: number;
  openingBalance: number;
  payment: number;
  interest: number;
  principal: number;
  closingBalance: number;
};

type Method = "annuity" | "equalPrincipal";

function buildSchedule(
  principal: number,
  periodicRate: number,
  periods: number,
  method: Method,
): ScheduleRow[] {
  if (!Number.isFinite(principal) || principal < 0) {
    throw new RangeError("principal must be finite and nonnegative");
  }
  if (!Number.isFinite(periodicRate) || periodicRate < 0) {
    throw new RangeError("periodicRate must be finite and nonnegative");
  }
  if (!Number.isInteger(periods) || periods <= 0) {
    throw new RangeError("periods must be a positive integer");
  }

  const levelPayment = periodicRate === 0
    ? principal / periods
    : principal * periodicRate /
      (1 - Math.pow(1 + periodicRate, -periods));
  const scheduledPrincipal = principal / periods;
  let balance = principal;
  const rows: ScheduleRow[] = [];

  for (let period = 1; period <= periods; period++) {
    const openingBalance = balance;
    const interest = openingBalance * periodicRate;
    const isFinal = period === periods;

    let payment: number;
    let principalPaid: number;
    let closingBalance: number;

    if (method === "annuity") {
      // Clear any accumulated floating-point residue in the final period.
      principalPaid = isFinal ? openingBalance : levelPayment - interest;
      payment = principalPaid + interest;
      closingBalance = isFinal ? 0 : openingBalance - principalPaid;
    } else {
      principalPaid = isFinal ? openingBalance : scheduledPrincipal;
      payment = principalPaid + interest;
      closingBalance = isFinal ? 0 : openingBalance - principalPaid;
    }

    rows.push({
      period,
      openingBalance,
      payment,
      interest,
      principal: principalPaid,
      closingBalance,
    });
    balance = closingBalance;
  }

  return rows;
}

const annuity = buildSchedule(1000, 0.01, 3, "annuity");
const equalPrincipal = buildSchedule(1000, 0.01, 3, "equalPrincipal");

// Presentation only: this is not a lender's posting or rounding policy.
const display = (rows: ScheduleRow[]) =>
  rows.map(row => ({
    ...row,
    openingBalance: Number(row.openingBalance.toFixed(2)),
    payment: Number(row.payment.toFixed(2)),
    interest: Number(row.interest.toFixed(2)),
    principal: Number(row.principal.toFixed(2)),
    closingBalance: Number(row.closingBalance.toFixed(2)),
  }));

The checks reject invalid inputs before calculation. A zero principal is allowed and produces zero-valued rows. Since the function takes a rate per period, its term is also a count of those same periods; for example, monthly periods require a monthly rate and a number of months.

Compare the resulting cash flows

With principal 1,000, a rate of 1% per period, and three periods, the unrounded model produces the following values. The table shows currency-style values rounded to two decimals for readability; this display rounding is not applied inside the recurrence.

Rank #4
BA II Plus Professional Financial Calculator Texas Instruments
  • Solves time-value-of-money calculations such as annuities, mortgages, leases, savings, and more
  • Performs cash-flow analysis for up to 32 uneven cash flows with up to 4-digit frequencies
  • Calculates various financial functions: Net Future Value Net present Value Modified Internal Rate of Return Internal Rate of Return Modified Duration Payback Discounted Payback
  • The Texas Instruments BAII Plus Professional features an Automatic Power Down (APD) function for extended battery life
  • Prompted display guides you through financial calculations showing current variable and label. Ten-digit display
Method Period Opening balance Payment Interest Principal Closing balance
Annuity 1 1,000.00 340.02 10.00 330.02 669.98
Annuity 2 669.98 340.02 6.70 333.32 336.66
Annuity 3 336.66 340.03 3.37 336.66 0.00
Equal principal 1 1,000.00 343.33 10.00 333.33 666.67
Equal principal 2 666.67 340.00 6.67 333.33 333.33
Equal principal 3 333.33 336.67 3.33 333.33 0.00

The final annuity installment is adjusted to clear the balance; its displayed value differs by a cent from the earlier installments. Totals computed from unrounded values are about 20.10 in interest for annuity and 20.00 for equal principal. Rounded row values may not sum exactly to an unrounded total.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Choose and document a currency-rounding policy

TypeScript’s number is JavaScript Number behavior, which uses double-precision binary floating point; it is not exact decimal currency arithmetic. The TypeScript Handbook describes the number and bigint types, and the ECMAScript Number specification defines Number representation. Formatting with toFixed(2) is a display choice, not proof that a lender would post those amounts.

Best Value
HP 10bII+ Financial Calculator for College and High School, SAT AP PSAT
  • Brand New in box; The product ships with all relevant accessories
  • Dedicated keys allow easy access to common financial and statistics functions
  • Easy-to-use design provides business, finance and statistical calculations fast
  • Specially designed to meet the mathematical needs

This example does not round each period. A real contract may instead calculate or post rounded amounts period by period and handle the final installment according to its own rules. Production software should follow the applicable contract and jurisdiction; integer minor units or decimal arithmetic may be more suitable than ordinary floating-point calculations. Do not switch to per-period rounding without also specifying how interest, principal, and any final adjustment are posted.

What the example does not model

A mathematically regular schedule may not match a real account statement. Actual loans can use different payment dates, day-count conventions, irregular first or last periods, fees, rate changes, or prepayments. Those details affect calculations; the CFPB notes that odd periods and schedule irregularities can cause minor variations in otherwise substantially equal payments in its 2024 edition of 12 CFR § 1026.43.

The same regulation gives a rounded example of a $200,000, 30-year fixed-rate loan at 7 percent with a substantially equal monthly fully amortizing payment of $1,331, calculated using non-rounded values. It is a regulatory illustration, not a current quote or a general promise of what a borrower will pay.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Quick Recap

SaleBestseller No. 1
BA II Plus Financial Calculator
BA II Plus Financial Calculator
Ideal calculator for students, managers and statisticians
$36.99
Bestseller No. 4
BA II Plus Professional Financial Calculator Texas Instruments
BA II Plus Professional Financial Calculator Texas Instruments
Performs cash-flow analysis for up to 32 uneven cash flows with up to 4-digit frequencies
$51.87
Bestseller No. 5
HP 10bII+ Financial Calculator for College and High School, SAT AP PSAT
HP 10bII+ Financial Calculator for College and High School, SAT AP PSAT
Brand New in box; The product ships with all relevant accessories; Dedicated keys allow easy access to common financial and statistics functions
$31.49

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.