You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Pension contributions above the Annual Allowance are denied relief and also charged the Annual Allowance charge #2237
pension_contributions_relief caps relief at max(basic_amount, pension_annual_allowance) (variables/gov/hmrc/pensions/pension_contributions_relief.py). Then personal_pension_contributions_tax charges (pension_contributions_for_annual_allowance − pension_annual_allowance) × marginal rate (variables/gov/hmrc/pensions/private_pension_contributions_tax.py), and that charge feeds income tax. The excess over the allowance is therefore taxed twice: it gets no relief, and it is charged.
Under the law, relief is given on contributions up to 100% of relevant UK earnings (Finance Act 2004 s.190). The Annual Allowance charge (s.227) then claws back relief on the excess, once. Carry-forward of unused allowance from the three previous years (s.228A) is also not modelled.
Reproducer
Run at 2.89.2. The formulas are unchanged on main as of 9 October 2026.
One adult, age 45, £150,000 employment income, London, 2024:
personal_pension_contributions
relief
AA charge
income_tax
£60,000
£60,000
£0
£28,460
£80,000
£60,000
£8,000
£36,460
With the correct treatment, the £80,000 case gets relief on £80,000 (taxable income £20,000 lower), and the £8,000 charge then takes back the extra relief. Income tax should be about the same as the £60,000 case, not £8,000 higher.
Impact
Found by the fiscal-event replay in PolicyEngine/policyengine-scorecard#157, reviewed in #156. Spring Budget 2023's Annual Allowance increase to £60,000 costs −£4.3bn to −£6.5bn a year in PolicyEngine, against the OBR's −£0.2bn to −£0.4bn. Some of that gap is construction scope (no carry-forward, and employer contributions counted in the charge base, so defined benefit accrual is treated as a contribution).
Fix
Give relief up to relevant earnings (not the allowance), keep the charge on the excess, and model carry-forward if inputs allow. Add a property test: for contributions at or below relevant earnings, increasing contributions above the allowance never raises income tax by more than the clawed-back relief.
Fix in #2240: relief to the s. 190 limit (relevant earnings or £3,600), the annual allowance charge as a top slice of reduced net income (s. 227(4A)/(4AA)), and an input for s. 228A carry-forward. The issue's reproducer now gives £28,460 of income tax at both £60,000 and £80,000 of contributions.
Activity
MaxGhenis commentedon Oct 10, 2026
Fix in #2240: relief to the s. 190 limit (relevant earnings or £3,600), the annual allowance charge as a top slice of reduced net income (s. 227(4A)/(4AA)), and an input for s. 228A carry-forward. The issue's reproducer now gives £28,460 of income tax at both £60,000 and £80,000 of contributions.