Open math, dated rules
Methodology and sources
Every displayed cent starts with full-precision arithmetic. Rounding happens only for display.
Canadian fixed-rate conversion
For a quoted nominal annual fixed rate r, Canadian mortgage convention compounds semi-annually, not in advance. The monthly periodic rate is:
i = (1 + r/2)^(2/12) − 1
The payment for principal P over n payments is:
M = P × i / (1 − (1 + i)^−n)
For $100,000 at 6.00% fixed over 25 years, i is about 0.493862% per month and M is $639.81. This matches the published York University example.
York University mortgage interest calculationsPublished golden cases
These ten fixtures gate the engine test suite.
| Case | Inputs | Expected result |
|---|---|---|
| 1. Formula anchor | $100,000 · 6.00% fixed · 25 years | $639.81 monthly |
| 2. Fixed payment | $500,000 · 5.00% fixed · 25 years | $2,908.02 monthly |
| 3. Case A | $400,000 · 20 years · 1.99% → 4.50% | $2,020.09 → $2,521.62 · +$501.53 · +24.83% |
| 4. Case B | Case A · accelerated bi-weekly | $1,010.04 → $1,260.81; regular old $931.93 |
| 5. Case C | $600,000 · 1.79% · 25 years; 60 payments | $2,480.32; balance $500,380.05; renewal $3,099.10 |
| 6. Case D | $350,000 · 22 years · variable 3.45% → fixed 4.19% | $1,893.74 → $2,024.68 · +6.91% |
| 7. Penalty | $400,000 · 1.99% fixed · three months | $1,981.80 |
| 8. MQR | 4.50% contract; 2.90% contract | 6.50%; 5.25% floor |
| 9. Timeline | Renewal 2027-03-01 · today 2026-07-16 | Hold 2026-11-01; statement 2027-02-08 |
| 10. Invariants | Lump sum, amortization, falling rates | Reject ≥ balance; 1–30 years; negative delta |
Payment-frequency rules
Accelerated bi-weekly is the monthly payment divided by two, paid 26 times a year. Accelerated weekly is monthly divided by four, paid 52 times. Neither is recalculated as an independent amortization schedule.
Regular bi-weekly fixed payments use i = (1 + r/2)2/26 − 1 over years × 26 payments in the engine. Lenders also use annual-total re-timing conventions, so a lender quote can differ slightly.
Variable-rate calculations assume monthly compounding, i = r/12. That is an industry convention rather than the universal fixed-rate rule; confirm the compounding clause in your contract.
Privacy architecture
Mortgage balances, rates, dates, and scenarios stay in React state in the browser. The calculator has no account, storage, analytics event, or network request carrying those values.
Trigger rates
A fixed-payment variable mortgage reaches its trigger rate when the full payment is consumed by interest. Above it, a contract may require a higher payment or add the shortfall to the balance. RenewalReady v1 explains this rule but does not calculate a trigger rate.
Bank of Canada Staff Analytical Note 2022-19Constants and dates
| Constant | Value | As of | Source |
|---|---|---|---|
| Default new rate | 4.29% | 2026-07-16 | Ratehub Big 5 snapshot |
| BoC policy rate | 2.25% | 2026-07-15 | Bank of Canada |
| Prime | 4.45% | 2026-07-16 | WOWA rate tracker |
| MQR | 5.25% floor · +2.00% | 2026-01-29 | OSFI |
| Statement deadline | 21 days | 2026-07-16 | SOR/2021-181 s.45(2) |
| Rate-hold model | 120 days | 2026-04-07 | Ratehub renewal guide (2025) · corroborated by a nesto rate-hold guide (2026-04-07) |
Limitations
- Results exclude taxes, insurance, fees, and creditor insurance.
- Variable compounding and regular-payment conventions can vary by contract.
- IRD penalties require lender-specific posted-rate and discount inputs and are not calculated.
- The MQR display is informational and is never presented as a barrier to an ordinary renewal.
- Prepayment privileges and rate holds vary by lender and product.
Educational estimate, not financial or mortgage advice. Confirm figures with your lender or a licensed mortgage professional.
Changelog
2026-07-16 · v1: frozen formula set, ten golden cases, July 2026 rate snapshot, January 2026 OSFI reaffirmation, and the 21-day disclosure rule and dated rate-hold convention published.