Skip to the calculator

Methodology

Every number Compoundly shows comes from a simulation you can reason about. This page sets out each model, the assumptions behind it, how rounding is handled, and where the model stops being a good description of a real product.

General approach

Compoundly does not use summary formulas where a schedule is what actually determines the answer. Investments are projected event by event; loans and cards are simulated payment by payment. The charts, the tables, the headline figures and the exports are all read from the same run, so they can never disagree with each other.

Money is held as a double-precision number and rounded only where a real product would round. Nothing is rounded repeatedly inside a loop unless the model is explicitly asked to round each period, so currency error does not accumulate over hundreds of iterations.

Rate conventions

Two readings of an annual rate are offered, and they are never used interchangeably.

periodic rate = annual rate ÷ periods per year

Nominal: the quoted annual rate, divided by the number of periods. This is the convention nearly every consumer loan and card uses.

periodic rate = (1 + annual rate)^(1 ÷ periods per year) − 1

Effective: the true annual growth, de-compounded so a full year of compounding reproduces exactly the rate entered.

The effective annual rate implied by your inputs is displayed under every chart, so you can always see what a nominal rate really compounds to.

A note on APR. Depending on the jurisdiction, a quoted APR may incorporate fees and may not be the periodic interest rate at all. Compoundly asks for “the annual interest rate used by this model” and applies it as the interest rate. It does not attempt to reverse-engineer a regulatory APR.

Compound growth

The projection runs on a merged timeline of compounding dates and contribution dates. At each compounding date the balance is multiplied by the periodic rate. At each contribution date the contribution is added. Where both fall on the same instant, interest is credited first — it closes the period that has just elapsed — and the contribution then opens the next one.

  • End-of-period contributions land after the compounding at the same date, giving an ordinary annuity.
  • Start-of-period contributions sit one period earlier on the timeline, giving an annuity due — exactly one extra period of growth.
  • Contributions made more often than compounding earn nothing until the next compounding date.
  • Step-ups follow the contribution’s ordinal, not the clock, so the twelfth monthly payment still belongs to year one.

Ongoing charges

An ongoing annual charge is modelled as a percentage of the balance, taken pro-rata at each compounding date immediately after interest is credited:

balance ← (balance × (1 + i)) × (1 − annual charge ÷ periods per year)

An identical projection is run in parallel with a zero charge, so the reported drag includes both the charges themselves and the growth those charges would have earned.

Inflation

Inflation is applied only to the display. The today's-money series divides the nominal balance by inflation compounded over the elapsed time. It never changes the projection, the interest calculation or any exported schedule, and it is off until you switch it on.

today's-money value = nominal balance ÷ (1 + inflation)^years

Target solving

Future value is affine in both the contribution and the starting amount, so those are solved exactly from two probes rather than by searching. Time and required return are solved by bisection against the same projection engine. Time is reported as the first whole month that clears the target, because compounding is discrete and no real period ends part-way through a month.

A solved “required return” is the return the arithmetic demands. It is not a claim that such a return is available, and the interface says so wherever the figure appears.

Loan amortisation

The scheduled instalment is the standard annuity payment, falling back to straight-line when the rate is zero:

payment = principal × i ÷ (1 − (1 + i)^−n)

Instalments are rounded up to whole cents by default, which is what lenders do so the term is not overshot. Rounding can be switched off to run at full precision.

Each period is then simulated:

  • Interest is charged on the opening balance, then any per-payment fee is added.
  • The payment is the scheduled instalment plus any recurring overpayment plus any one-off payment due, capped at the total owed so the loan never overpays itself.
  • Principal repaid is the payment less interest and fees; the closing balance carries forward.
  • A drawdown fee is added to the balance at the start, so it is borrowed and attracts interest.

A flat simple-interest option is also provided, spreading a fixed total interest charge evenly across the term, as some fixed-fee personal and vehicle loans do. Compound-interest assumptions are not applied universally.

Negative amortisation

When a payment is smaller than the interest and fees charged, the shortfall stays on the balance and is charged interest next period. Compoundly detects this, states the arithmetic plainly, and marks the schedule as not clearing within the modelled period rather than producing a misleading payoff date. Simulations are capped so a pathological input cannot run forever.

Payment frequency

Each frequency is priced as its own amortising schedule: the periodic rate is the annual rate divided by the number of payments in a year, and the term is held constant.

This is a modelling assumption, not a universal truth. Many lenders charge interest monthly regardless of how often you pay, in which case the benefit of paying more often comes from reducing the balance sooner, not from the frequency itself. Compoundly states the assumption alongside the comparison rather than claiming a saving your lender may not give you.

Credit cards

Interest is charged on the opening balance at the periodic rate. The payment is applied, then any new spending is added to the closing balance. Minimum-payment rules are configurable rather than assumed, because issuers word them differently:

minimum due = max( percentage × balance [ + interest ], cash floor )

Capped at the full amount owed. Set the rule to match your own statement.

Real cards commonly compound daily, apply separate rates to purchases, cash advances and balance transfers, and offer interest-free periods on new purchases when the statement balance is cleared in full. This model applies a single rate to the whole balance, which is a simplification.

Snowball and avalanche

Each month, across every account:

  • Interest is charged on each balance at its own rate.
  • The contractual minimum is paid on each account, capped at what is owed.
  • Everything left in the monthly budget goes to one target account — the smallest balance under snowball, the highest rate under avalanche.

Because the monthly budget is fixed, a cleared account automatically frees its minimum into the pot. The rolling effect is a consequence of the budget rather than a separate rule.

Compoundly reports the difference between the two orderings in interest, in months, and in when the first account clears. It does not recommend one over the other.

Rounding

  • Half away from zero, with a magnitude-relative epsilon so binary representation error cannot flip a .005 case the wrong way.
  • Loan and card interest charges and closing balances are rounded to whole cents each period by default, matching a statement.
  • Scheduled instalments are rounded up to whole cents so the contractual term is not overshot.
  • Growth projections are not rounded internally; rounding happens only for display and for exports.

Known limitations

Compoundly deliberately covers two loan shapes well rather than many badly. Version one models:

  • Standard amortising loans
  • Revolving credit-card debt
  • Flat simple-interest loans

It does not claim precise support for:

  • Mortgages with offset or redraw facilities
  • Interest-only mortgages and balloon payments
  • Scheduled variable-rate paths
  • Regulatory APR calculations that fold fees into the rate
  • Tax treatment of any kind, in any jurisdiction

Results are illustrative estimates based on the numbers you enter. Actual investment returns, lender calculations, fees and repayment schedules may differ. Compoundly is not investment, lending, credit, tax or debt advice.