Repository navigation
Model the ISA subscription limits, with per-person ISA subscriptions and balances #2712
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
5aaf6da
d29cc81
3d5e7cc
020f230
677d767
da16986
00adbd1
18aa2a4
1915a91
52b09bc
04895b0
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| Added the 20% Lifetime ISA withdrawal charge for a first-home purchase above the £450,000 property price cap that meets every other condition, for withdrawals from 29 October 2026 (ISA Regulations 1998 Schedule paragraphs 5 and 6A, inserted by SI 2026/1130); the annual model applies it from fiscal 2027-28. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| Added the ISA annual subscription limit (ISA Regulations 1998 reg 4ZA: £15,240 from 2015-16 and £20,000 from 2017-18), a cash ISA limit for people under an age at the end of the tax year that current law leaves unset (Budget 2026 retains £20,000 for cash, so SI 2026/1018's £12,000 for under-65s is a reform setting), per-person cash and stocks-and-shares ISA subscription inputs, and `cash_isa_subscriptions_above_limit` and `isa_subscriptions_above_limit`, the subscriptions a limit leaves out. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| The household `cash_isa` and `stocks_and_shares_isa` now sum new per-person `cash_isa_balance` and `stocks_and_shares_isa_balance` inputs. A dataset or situation that stores a household total keeps it, and stored totals still project with savings, but a household total given for one year no longer carries into later years. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| description: > | ||
| Limit on a person's total subscriptions in the tax year to ISAs other than | ||
| Junior ISAs: cash, stocks-and-shares, innovative finance and new Lifetime ISA | ||
| payments together. It was £15,000 from 1 July 2014 and £15,240 from 6 April | ||
| 2015. The annual model reads it from 2015-16; 2014-15 and earlier years, with | ||
| their lower limits and cash sub-limits, are not modelled. | ||
| values: | ||
| 2014-07-01: 15000 | ||
| 2015-04-06: 15240 | ||
| 2017-04-06: 20000 | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nice to have 3. Core gives this value for every earlier year, so 2014-15 to 2016-17 read £20,000. Consider
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fixed in 1915a91. I checked SI 2015/608 reg 3(1): it substitutes £15,240 for £15,000 in reg 4ZA(1). The two new 2015 and 2016 cases pass locally. |
||
| metadata: | ||
| label: ISA annual subscription limit | ||
| period: year | ||
| unit: currency-GBP | ||
| reference: | ||
| - title: Individual Savings Account Regulations 1998 regulation 4ZA(1) | ||
| href: https://www.legislation.gov.uk/uksi/1998/1870/regulation/4ZA | ||
| - title: Individual Savings Account (Amendment No. 2) Regulations 2014 regulation 6(a)(i) | ||
| href: https://www.legislation.gov.uk/uksi/2014/1450/regulation/6/made | ||
| - title: Individual Savings Account (Amendment) Regulations 2015 regulation 3(1) | ||
| href: https://www.legislation.gov.uk/uksi/2015/608/regulation/3/made | ||
| - title: Individual Savings Account (Amendment) Regulations 2017 regulation 5 | ||
| href: https://www.legislation.gov.uk/uksi/2017/186/regulation/5/made | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| # Cash ISA |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| description: > | ||
| Age a person must have reached by the end of the tax year (5 April) for the | ||
| cash ISA subscription limit not to apply. Their cash subscriptions then count | ||
| only towards the annual subscription limit. It matters only where a cash | ||
| limit is set, as SI 2026/1018 regulation 6 sets one for people aged 64 or | ||
| under. | ||
| values: | ||
| 2027-04-06: 65 | ||
| metadata: | ||
| label: Cash ISA full limit age | ||
| period: year | ||
| unit: year | ||
| reference: | ||
| - title: Individual Savings Account (Amendment) (No. 2) Regulations 2026 regulation 6 | ||
| href: https://www.legislation.gov.uk/uksi/2026/1018/regulation/6/made |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| description: > | ||
| Limit on a person's subscriptions in the tax year to cash ISAs while they are | ||
| under the cash ISA full limit age at the end of the year. Cash has had no | ||
| limit of its own since 1 July 2014, so cash subscriptions count only towards | ||
| the annual subscription limit. SI 2026/1018 regulation 6 sets £12,000 from 6 | ||
| April 2027 for people aged 64 or under, but Budget 2026 retains the £20,000 | ||
| limit for all savers, with secondary legislation to be laid in November | ||
| 2026, so cash keeps no limit of its own here. Set this to 12,000 to model the | ||
| lower limit. | ||
| # From 6 April 2027 this rests on Budget 2026 (OOTLAR para 2.5) until the | ||
| # November 2026 instrument is laid: tracked in | ||
| # https://github.com/PolicyEngine/policyengine-uk/issues/2728. | ||
| values: | ||
| 2014-07-01: .inf | ||
| metadata: | ||
| label: Cash ISA subscription limit | ||
| period: year | ||
| unit: currency-GBP | ||
| reference: | ||
| - title: Individual Savings Account Regulations 1998 regulation 4ZA | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nice to have 4. The description relies on 'no limit of its own since 1 July 2014'. Add SI 2014/1450 reg 6(a)(ii) as a reference: https://www.legislation.gov.uk/uksi/2014/1450/regulation/6/made. It omitted reg 4ZA(1)(a) and (b) (footnote F3 on reg 4ZA).
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fixed in 1915a91. The value now starts on 1 July 2014, and SI 2014/1450 reg 6(a)(ii) is cited. |
||
| href: https://www.legislation.gov.uk/uksi/1998/1870/regulation/4ZA | ||
| - title: Individual Savings Account (Amendment No. 2) Regulations 2014 regulation 6(a)(ii) (omits the cash sub-limits in regulation 4ZA(1)(a) and (b)) | ||
| href: https://www.legislation.gov.uk/uksi/2014/1450/regulation/6/made | ||
| - title: Individual Savings Account (Amendment) (No. 2) Regulations 2026 regulations 1 and 6 | ||
| href: https://www.legislation.gov.uk/uksi/2026/1018/regulation/6/made | ||
| - title: Budget 2026, overview of tax legislation and rates, paragraph 2.5 | ||
| href: https://www.gov.uk/government/publications/budget-2026-overview-of-tax-legislation-and-rates-ootlar/budget-2026-overview-of-tax-legislation-and-rates-ootlar | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| # First-time purchase above the property price cap |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| description: > | ||
| Whether a Lifetime ISA withdrawal towards a first home that meets every | ||
| first-time purchase condition except the property price cap pays the reduced | ||
| above-cap charge, rather than the withdrawal charge. It has effect for | ||
| withdrawals from 29 October 2026. The annual model reads parameters on 30 | ||
| April, so it applies from fiscal 2027-28: in the model, a withdrawal from 29 | ||
| October 2026 to 5 April 2027 pays the withdrawal charge. | ||
| values: | ||
| 2000-01-01: false | ||
| 2026-10-29: true | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nice to have 6. The 30 April read is correct (
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. No change at 1915a91. This is a choice for the human reviewers, so I leave it open for them.
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Decided: we keep the 30 April convention.
The caveat is recorded in 04895b0:
It was already in this parameter's description, the Lifetime ISA section of that page,
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks. Keeping the 30 April convention is consistent with the paragraph 5A case in 2020. 04895b0 states the 2026-27 effect in the variable's docstring and on the assumptions page. I have nothing more on this item. |
||
| metadata: | ||
| label: Lifetime ISA reduced charge above the price cap in effect | ||
| period: year | ||
| unit: bool | ||
| reference: | ||
| - title: Individual Savings Account (Amendment) (No. 3) Regulations 2026 regulation 1 | ||
| href: https://www.legislation.gov.uk/uksi/2026/1130/regulation/1/made | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice to have 9.
cash_isaandstocks_and_shares_isaare also at lines 147 and 152 of this same list (this duplication is on main already). Remove the duplicates while you are here. Note that #2638 and #2723 edit the lines next to the newstocks_and_shares_isa_balanceentry.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed in 1915a91. The second copies are removed.