# Loan Amortization Calculator > Annuity, linear or interest-only loans: schedule, extra payments, fixed-rate balance, APR. Calculates the payment and the complete amortization schedule of an annuity, linear (constant principal) or interest-only loan, including one-off and recurring extra payments, the remaining balance at the end of a fixed-rate period, the effective annual rate and the APR with up-front fees. Download the schedule as CSV. Part of usefulweb.site (https://usefulweb.site/). Results are deterministic calculations from the inputs and the listed assumptions; the API returns exactly what the web page shows. ## Use it - Human interface: https://loanamortizationcalculator.usefulweb.site/ (interactive tool at https://loanamortizationcalculator.usefulweb.site/tool) - JSON API: POST https://loanamortizationcalculator.usefulweb.site/api/v1/calculate with a JSON object of inputs (schema: https://loanamortizationcalculator.usefulweb.site/api/v1/tool) - OpenAPI: https://loanamortizationcalculator.usefulweb.site/openapi.json - MCP (Streamable HTTP): https://loanamortizationcalculator.usefulweb.site/mcp - tool `loan_amortization_calculator` ## Inputs - principal (number, required): Loan amount - currency (text): Currency - Shown in results only; no conversion. - ratePercent (number): Nominal interest rate - Borrowing rate (Sollzins). The rate per period is this ÷ payments per year. - loanType (select): Repayment type - termYears (number): Term - initialRepaymentPercent (number): Initial repayment rate (annuity only) - Optional, common in Germany (anfängliche Tilgung): payment per year = loan × (interest rate + this rate). The term then follows from the payment and the Term field is ignored. - frequency (select): Payments - startDate (date): Payout date - Optional. The first payment is due one period later; dates are added to the schedule. - fixedRateYears (number): Fixed-rate period - Optional (Zinsbindung): shows the balance still owed when the fixed rate ends. - upfrontFees (number): Up-front fees - Processing or broker fees paid at payout. They raise the APR, not the nominal rate. - extraPayments (table): One-off extra payments - Paid together with the regular payment number you enter (e.g. 12 = end of the first year for monthly payments). - recurringExtra (number): Recurring extra payment - Optional, e.g. an annual special repayment (Sondertilgung). - recurringEvery (integer): Recurring extra: every - recurringFrom (integer): Recurring extra: first at payment number - recurringUntil (integer): Recurring extra: last at payment number - Optional; empty = until the loan is repaid. ## Method - Rate per period i = nominal annual rate ÷ payments per year (the usual convention for German and most European loans). - Annuity payment A = L·i ÷ (1 − (1 + i)^−n), rounded to the cent; with an initial repayment rate t instead: A = L × (rate + t) ÷ payments per year, and the term follows from A. - Each period: interest = balance × i (rounded to the cent); principal = A − interest (annuity), L ÷ n (linear) or 0 until the last payment (interest-only). The last scheduled payment clears any remaining cents. - Extra payments reduce the balance on top of the regular payment. Annuity loans keep the payment and finish earlier; linear and interest-only loans keep their principal plan and pay less interest. - Remaining balance at the end of the fixed-rate period = balance after the last payment inside that period. - Effective annual rate (no fees) = (1 + i)^m − 1. APR: the rate X solving Σ payment_l × (1 + X)^(−t_l) = loan − up-front fees, with t_l measured in years of 12 standard months, as in the equation of the PAngV annex (EU Consumer Credit Directive). This is an approximation: real offers count exact days, may add account fees or insurance, and lenders round to two decimals.