TFSA methodology

Last verified: Effective for 2026 tax year by Fiscal Moose

Open the TFSA calculator

The Tax-Free Savings Account (TFSA) is a registered account that lets eligible Canadian residents contribute after-tax money and earn tax-free growth, with tax-free withdrawals at any time. This page documents the limits and rules our TFSA calculator relies on, the sources we verify them against, the reference cases that authorise the formula to ship, and the known limitations of our model.

How the calculator works

The calculator computes four things, all from the versioned per-year dollar limits in our data file and the rules in the Income Tax Act:

Opening the account depends on your province: in most provinces you can open a TFSA the year you turn 18, but in British Columbia, New Brunswick, Newfoundland and Labrador, Nova Scotia, and the three territories the age of majority is 19. In those jurisdictions your room still accrues from 18 and carries forward, but you cannot open an account until 19. The calculator surfaces this as a distinct state rather than a silent footnote.

Current limit (2026 tax year)

Annual contribution limit $7,000
Lifetime cap None (room carries forward indefinitely)
Program start year 2009
Over-contribution tax (ITA s.207.02) 1% per month on the highest monthly excess, no grace
Non-resident tax (ITA s.207.03) 1% per month on the full contribution

These values are read directly from our versioned data file (packages/data/src/tfsa/limits.ts). The full year-by-year dollar limit table from 2009 onward is rendered on the calculator page itself, and it is the same table the calculator sums to compute your cumulative room.

Reference cases and verification

The TFSA formula ships only after passing a suite of 35 reference cases, each a known scenario with a known expected output drawn from CRA worked examples and the Income Tax Act. The build fails if any case diverges from its expected value by more than the case’s tolerance (most use exact integer arithmetic). The room and replenishment calculations are checked case-by-case against these expected values, so a contribution-room error cannot pass the build.

Three of the cases reproduce the CRA’s own published worked examples byte for byte:

Our update cadence

The TFSA dollar limit is set each year by indexing the 2009 base of $5,000 to inflation and rounding to the nearest $500 under Income Tax Act s.207.01(1). The CRA confirms the new figure in the autumn for the following year, and we refresh our data file every January when the new limit takes effect. The 1%-per-month penalty rates in ss.207.02 and 207.03 are statutory and change only by amendment to the Act, which we monitor on our as-needed schedule.

Notes from the verification record

The 2026 TFSA dollar limit is $7,000, unchanged since 2024. The limit is the $5,000 (2009) base indexed to CPI and rounded to the nearest $500 under Income Tax Act s.207.01(1), which is why it steps from $6,000 to $6,500 to $7,000 rather than rising smoothly. We cross-check the full year-by-year table (the TFSA_ANNUAL_LIMIT_BY_YEAR dataset) against the CRA registered-plans “MP, RRSP, DPSP, TFSA limits and the YMPE” table. The TFSA has no lifetime cap: cumulative room is computed from the per-year sum, gated by eligibility. We re-verify each January.

If you find an error

If you spot a mistake in the calculator or this page, report it through our contact page. We commit to acknowledging within 24 hours, fixing clear formula or data errors within 7 days, and publishing a changelog entry describing what changed and when.

Sources

Known limitations

Open the TFSA calculator

Back to methodology index