Skip to content

Give Scotland and Wales working-age council tax reduction their own rules (UC routes, passport, child amounts) - #1966

Draft
MaxGhenis wants to merge 13 commits into
mainfrom
ctr-working-age-shortfall
Draft

MaxGhenis wants to merge 13 commits into
mainfrom
ctr-working-age-shortfall

Conversation

@MaxGhenis

@MaxGhenis MaxGhenis commented Sep 30, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes #1962. Also closes #1935 for Scotland and Wales.

Reproducer: policyengine_uk/tests/policy/baseline/gov/local_authorities/council_tax_reduction/council_tax_reduction_devolved_working_age.yaml; policyengine_uk/tests/test_council_tax_reduction_devolved_working_age_properties.py::test_devolved_working_age_award_properties

axiom: SSI 2021/249 regs 13(11), 35, 42, 49(6), 50(3), 51(9), 57(1)(p), Sch 1 para 6(1), Sch 3 para 4(3); SSI 2012/303 reg 38; WSI 2013/3029 Sch 6 paras 3, 9, 15(3), 25, Sch 7 paras 1-4 and 14, Sch 9 para 4, Sch 9 and 10 para 8 | TheAxiomFoundation/rulespec-uk#393 queued (the signed encoder is not yet available for rulespec-uk; scope extended in the issue's comments)

What was wrong

Working-age households in Scotland and Wales ran through the pension-age means test, built on Housing Benefit parameters. On main (76cfc9e) in 2026, on the certified Enhanced FRS 1.58.1, CTR for working-age households was:

  • Scotland: £0.058bn (0.059m households), against £0.097bn (0.306m) reported in the survey;
  • Wales: £0.004bn (0.011m), against £0.061bn (0.087m) reported.

Four legal defects caused it:

  1. Universal Credit. The whole UC award, including the housing costs element, counted as income against a Housing Benefit personal allowance with no children in it. The law is different in each country:
    • Wales (WSI 2013/3029 Sch 6 paras 3 and 9) compares the Secretary of State's UC income plus the award with the UC maximum amount. The housing and child elements cancel, and a UC claimant with no earnings gets the maximum reduction.
    • Scotland (SSI 2021/249 regs 35, 42, 57(1)(p) and (2)(d)) keeps its own applicable amount. It counts as income only the UC child element (with disabled-child additions) plus the childcare costs element, capped at the award. Earnings are measured on the UC basis with the CTR earnings disregards and no work allowance.
  2. No passport. Claimants on Income Support, income-based JSA or income-related ESA were means-tested. The law gives them the maximum reduction: SSI 2021/249 reg 13(11); WSI 2013/3029 Sch 9 para 8 and Sch 10 para 8.
  3. Applicable amounts.
    • There were no child amounts: Scotland's child premium is £109.85 per child (25% above Housing Benefit since 2017), Wales's child amount £87.88.
    • There was no family premium: £20.22 in Wales, and in Scotland until it closed to new claims on 1 May 2016.
    • There was no disabled child premium or child enhanced disability premium.
    • Welsh personal allowances were Housing Benefit's (£95.55 / £75.65 / £150.15) instead of Wales's own (£101.85 / £80.60 / £159.85).
    • The adult premiums were the projected DWP amounts, not the devolved ones, which differ in most years (2025-26 disability premium: £47.48 projected against £43.20 in law).
    • The carer premium was paid once for a couple even when both qualify.
  4. Income.
    • Child Benefit was counted; both countries disregard it.
    • There were no earnings disregards (£5, £10, £20 or £25, plus £17.10), no childcare deduction and no tariff income from capital.
    • Actual interest, dividends and rent were counted, where the law treats them as capital.

What this changes

simulated_council_tax_reduction_benunit sends a claim down a new working-age route when the household is in Scotland or Wales and council_tax_reduction_pensioner (main's per-claim scheme flag) is false.

Who is assessed follows main's applicant identity (#2078) through working_age/_applicant.py:

  • The applicant and partner are is_council_tax_reduction_applicant_or_partner.
  • Where the household head applies alone (council_tax_reduction_head_applies_alone), she is a single person. The benefit unit's partner, children, UC, income-related benefits and tax credits are its claimant's, not hers, and her premium conditions are her own, as in council_tax_reduction_premiums.
  • Children and lone parents follow each scheme's own young person (Use the Universal Credit young person in Scotland's working-age Council Tax Reduction #2288): is_child_or_young_person_for_council_tax_reduction and is_council_tax_reduction_lone_parent. That is the Universal Credit one in Scotland's working-age scheme from 2022-23, and Child Benefit's in Wales.

The new variables are in council_tax_reduction/working_age/:

Variable Rule
council_tax_reduction_devolved_working_age Scotland or Wales, not a CTR pensioner. Mixed-age UC couples take this route (WSI 2013/3029 reg 3; SSI 2021/249 reg 3).
council_tax_reduction_working_age_applicable_amount Wales with UC: uc_maximum_amount. Otherwise: personal allowance, child amounts, and the devolved adult premiums (council_tax_reduction_working_age_adult_premiums).
council_tax_reduction_working_age_personal_allowance Couple / lone parent / single 25+ / single under 25. The higher single rate also applies on main-phase ESA and, in Scotland, on UC with LCW.
council_tax_reduction_working_age_child_amounts Per-child amount, family premium, disabled child premium, child enhanced disability premium.
council_tax_reduction_working_age_adult_premiums, _carers Disability, severe disability, enhanced disability premiums at the devolved amounts (who qualifies follows the legacy premium variables, with CTR's own severe disability premium family test, council_tax_reduction_severe_disability_premium), and a carer premium for each applicant or partner entitled to Carer's Allowance or Carer Support Payment, including an entitlement an overlapping benefit reduces to nil (WSI 2013/3029 Sch 7 para 14(1); SSI 2021/249 Sch 1 para 6(1)(a)-(b)). Scotland also counts an award of UC that includes the carer element (para 6(1)(c)), as one carer when no one in the family is entitled to a carer benefit.
council_tax_reduction_working_age_applicable_income Passported: 0. Wales with UC: UC earnings before the work allowance + UC unearned income + the award. Otherwise: net earnings − disregards − childcare + unearned income + tariff income (+ relevant UC payments in Scotland).
council_tax_reduction_working_age_person_earned_income, _earned_income, _employed_earned_income Per applicant or partner. Wales with UC: the UC model's own earned income before the work allowance, after the minimum income floor (uc_individual_earned_income): the Secretary of State's figure (Sch 6 para 9). Scotland with UC: the UC measure without the floor (uc_individual_earned_income_before_mif), since SSI 2021/249 regs 49 and 51(2) have none, less miscellaneous income (net of its tax share), which is unearned here. It includes SSP/SMP/SPP and deducts only the tax and NI paid in respect of the employment or trade. Without UC: pay and SSP/SMP/SPP less the income tax and primary Class 1 on the employment (reg 50(3)(a); WSI 2013/3029 Sch 6 para 15(3)(a)). The tax is the UC model's split, earnings as the lowest slice and pay before trade (uc_income_tax_on_earnings less uc_income_tax_on_trade), shared pro rata with miscellaneous income, which is unearned; primary Class 1 comes off pay in full. Self-employed profit takes the prescribed notional deductions, not the tax paid (SSI 2012/303 reg 38 via SSI 2021/249 reg 51(9); WSI 2013/3029 Sch 6 para 25): basic-rate tax on the profit less the personal allowance (in Wales also the blind person's allowance), Class 4 at the main rate between the profits limits, and Class 2 before April 2024. Half of pension contributions comes off. Never Class 3, tax on pensions or tax on dividends. Employed earnings feed Scotland's £17.10 test.
council_tax_reduction_working_age_unearned_income_tax Income tax on the counted taxable unearned income. earned_income_tax (non-savings tax other than on property income) less the tax on earnings is the tax on pensions and taxable benefits, shared pro rata with those the schemes do not count (the Scottish Carer Supplement). Wales without UC disregards it (Sch 9 para 4); Scotland counts unearned income gross (reg 57).
council_tax_reduction_working_age_earnings_disregard £25 lone parent; else £20 with a disability premium, or in Scotland for a UC applicant with LCW or LCWRA where the applicant or partner is under pensionable age and one of them (not necessarily the same one) is in employment (Sch 3 para 4(3)); else, for a carer, £20 of the carers' own earnings plus up to £10 of a non-carer partner's (paras 6-7; carers identified by a carer benefit in payment); else £10 couple, £5 single. Plus £17.10 on the work conditions (not with UC): a couple's disabled member must be the one in work, and in Scotland from April 2022 only employed earnings qualify. Never more than earnings.
council_tax_reduction_working_age_unearned_income Scotland's closed list in reg 57(1); in Wales, gross income other than earnings less the Sch 9 disregards (Sch 6 para 17). The model counts pensions, contributory ESA and JSA, carer's allowance, the Carer Support Payment component before the overlapping-benefit reduction (as the pension-age route counts it; not the Scottish Carer Supplement), MA, IIB, IB, SDA, Part 5 miscellaneous income and tax credits.
council_tax_reduction_relevant_universal_credit_payments Scotland: min(child element + disabled-child additions + childcare element, award).
council_tax_reduction_working_age_childcare_deduction Legacy: charges up to £175 / £300 a week when the lone parent, or both of a couple, work 16 hours or more, taken off earnings after the disregards. Scotland with UC: childcare element ÷ 0.85, up to £290 / £497, taken off income.
council_tax_reduction_working_age_capital, _tariff_income Wales with UC: UC capital. Wales passported: 0. Otherwise household savings. £1 a week per £250 or part above £6,000.
council_tax_reduction_working_age_passported, _has_universal_credit, _universal_credit_award IS / JSA(IB) / ESA(IR) without UC (council_tax_reduction_relevant_income_based_benefit); UC entitlement, not a household head's who applies alone; the award after the benefit cap and before deductions from payment.

The new parameters are under gov.local_authorities.{scotland,wales}.council_tax_reduction.working_age. Every uprated amount has its full history from 2013-14 to 2026-27, and each change cites the amending instrument and provision. The history was compiled from legislation.gov.uk and chain-checked: each year's "for £X" equals the previous year's value. Welsh 2013-14 values, including the fixed disregards, tariff income and childcare caps (from 1 April 2013), come from the revoked WSI 2012/3144, which then applied.

Pension-age CTR, the English schemes and the Housing Benefit parameters are unchanged. Outside the new working_age/ folders, the model code touched is the Scotland/Wales hook in simulated_council_tax_reduction_benunit.py, one docstring in council_tax_reduction_pensioner.py, and the CTR notes in programs.yaml.

council_tax_reduction_pensioner.py is main's file with one documentation sentence changed: Welsh and Scottish claims that fail the test now take the working-age rules.

Composition with main

The PR is based on main; it was last merged at 76cfc9e (2026-10-20).

Impact (certified Enhanced FRS 2024-25 1.58.1, real microsimulation runs)

At aed6724. The round-4 fixes in 779f5dc move the working-age route: Class 1 now comes off pay in full, Part 5 miscellaneous income counts as unearned income, and partners caring for the same person get one premium. The branch side is being rerun at 779f5dc and will replace the table below. The Aggregate impact check reruns on each push.

CTR in £bn (recipient households, millions). Base = main 76cfc9e; this PR = aed6724. certified Enhanced FRS 2024-25 (release 1.58.1), real microsimulation runs. A household's group follows its CTR claimant benefit unit's scheme (council_tax_reduction_pensioner).

Group 2025 base → PR 2026 base → PR 2027 base → PR 2029 base → PR
Scotland, working age 0.056 (0.059) → 0.149 (0.190) 0.058 (0.059) → 0.155 (0.191) 0.061 (0.058) → 0.161 (0.192) 0.066 (0.058) → 0.176 (0.193)
Wales, working age 0.002 (0.008) → 0.016 (0.017) 0.004 (0.011) → 0.017 (0.017) 0.005 (0.011) → 0.018 (0.017) 0.007 (0.011) → 0.022 (0.018)
Scotland, pension age 0.103 (0.134) → 0.103 (0.134) 0.107 (0.135) → 0.107 (0.135) 0.111 (0.135) → 0.111 (0.135) 0.121 (0.136) → 0.121 (0.136)
Wales, pension age 0.008 (0.009) → 0.008 (0.009) 0.009 (0.009) → 0.009 (0.009) 0.010 (0.010) → 0.010 (0.010) 0.012 (0.010) → 0.012 (0.010)
England, pension age 0.468 (0.452) → 0.468 (0.452) 0.495 (0.455) → 0.495 (0.455) 0.524 (0.455) → 0.524 (0.455) 0.585 (0.456) → 0.585 (0.456)
England, working age (reported) 1.349 (2.514) → 1.349 (2.514) 1.358 (2.534) → 1.358 (2.534) 1.366 (2.548) → 1.366 (2.548) 1.387 (2.582) → 1.387 (2.582)
Northern Ireland 0.000 (0.001) → 0.000 (0.001) 0.000 (0.001) → 0.000 (0.001) 0.000 (0.001) → 0.000 (0.001) 0.000 (0.001) → 0.000 (0.001)
UK total CTR 1.987 (3.178) → 2.093 (3.318) 2.032 (3.204) → 2.141 (3.342) 2.076 (3.217) → 2.190 (3.357) 2.177 (3.255) → 2.302 (3.396)
  • Change in CTR by year:

    • 2025: £+0.106bn; 0.172m households gain (mean £614 a year); fewer than 10 survey records lose (figures suppressed); net income change £+0.106bn
    • 2026: £+0.110bn; 0.169m households gain (mean £649 a year); fewer than 10 survey records lose (figures suppressed); net income change £+0.110bn
    • 2027: £+0.114bn; 0.170m households gain (mean £674 a year); fewer than 10 survey records lose (figures suppressed); net income change £+0.114bn
    • 2029: £+0.125bn; 0.171m households gain (mean £731 a year); fewer than 10 survey records lose (figures suppressed); net income change £+0.125bn
  • Household net income rises by the same amount as CTR.

  • Pension-age CTR is unchanged. It is identical to main in every year run (2025, 2026, 2027 and 2029), in England, Scotland and Wales, and so are English working-age CTR and Northern Ireland. That holds household by household as well as in total: no pension-age benefit unit's simulated reduction changes in 2026 or 2029.

  • Losers. Fewer than 10 survey records lose in each year, all Scottish working-age claimants without UC and without earnings. Their pensions or taxable benefits bear income tax. SSI 2021/249 reg 57 counts unearned income gross, whereas the shared formula deducted all income tax. The figures are suppressed under aggregate_impact/privacy.py's small-cell rule.

  • Earlier years. The base Enhanced FRS has no weights before 2024. Three YAML cases check the 2015, 2016 and 2018 amounts instead.

  • The Aggregate impact check agrees. Base 60b09a4 is the test merge's first parent. CTR spending is +£105.8m in 2025-26, +£109.7m in 2026-27 and +£114.3m in 2027-28, matching the runs above, with 138-143k more recipients each year.

  • Flagged pensioner poverty move. Its one flagged pensioner move is relative poverty before housing costs, +0.22pp in 2027-28. No pension-age benefit unit's reduction changes, and households that mix a pension-age and a gaining working-age family only gain income. So the move comes through the relative poverty line, which rises with median income, not through any pensioner's income falling.

  • Scripts: impact_v2.py and impact_table.py. The pension grouping maps benefit units to households through their members.

Why the gap to reported and official figures remains (data, not law)

Filed as PolicyEngine/policyengine-uk-data#496 and #497; the fix, policyengine-uk-data#499, lands with a later data release.

  • council_tax is the FRS bill net of CTR. DWP defines the FRS 2024-25 CTANNUAL as "Annual CT amount after discounts/reduction", derived from CTREB and CTREBAMT. The model treats it as the gross liability, so each reported recipient's liability is already reduced by its own CTR.
    • In release 1.58.1, 22.3% of Welsh FRS-original reported recipients (all ages, base-year weights) have a £0 bill. Scotland's bill includes water charges, so none are £0 there.
    • A diagnostic copy of 1.58.1 (not a release) adds reported CTR back to FRS-original rows. With this PR on that copy, 2026 CTR is:
      • Scotland working-age: £0.200bn (0.197m households);
      • Wales working-age: £0.045bn (0.039m).
    • On the same copy, main gives £0.071bn and £0.010bn.
  • SPI-synthetic rows carry imputed "reported" CTR from the stage-2 QRF (Add UC metadata #497).
  • Take-up. Only survey reporters claim CTR in survey runs (Evaluate claims_all_entitled_benefits per benefit unit #1831, d046). Wales has 0.049m FRS-original working-age reporters, against 157k working-age CTR households in March 2026.
Group, 2026 This PR, release 1.58.1 This PR, gross-bill diagnostic copy Survey reported Official
Scotland, working age £0.155bn (0.191m) £0.200bn (0.197m) £0.097bn (0.306m) about £0.276bn and 306,740 recipients (March 2026)¹
Wales, working age £0.017bn (0.017m) £0.045bn (0.039m) £0.061bn (0.087m) 157,021 households (March 2026); all ages £347.4m (2025-26), £336.0m budgeted (2026-27)²
England, pension age £0.495bn (0.455m) £0.782bn (0.610m) £0.562bn (0.999m) £1.816bn forgone (2025-26), 1,349,524 claimants (31 March 2026)³
  1. Council Tax Reduction in Scotland, 2025-26 (gov.scot):
    • £425.1m provisional income forgone in 2025-26; 458,950 recipients in March 2026.
    • Working-age recipients = the total less pension-age recipients (sheet 2.6).
    • £0.276bn is the under-65 share of the £425.1m, derived from the average weekly awards by age (sheet 3.3). No split by age is published.
  2. Welsh Government, Council Tax Reduction Scheme annual report 2025 to 2026; StatsWales revenue budget (CTRS) 2026-27.
  3. MHCLG Council Taxbase 2025, CT Support sheet; Local Council Tax Support claimants live table, Q1 2026-27.

Not modelled (documented in the variables)

  • Components and premium conditions. The ESA work-related activity and support components are not modelled, and the disability premium's LCW/LCWRA exclusion is not applied. Who qualifies for the adult premiums follows the model's legacy premium variables (Give pension-age HB and CTR the severe disability premium Pension Credit uses #1938 and Give the legacy severe disability premium its statutory conditions (stacked on #1896) #1946 are revising their conditions); the amounts are the devolved ones.
  • Tax credits. The childcare deduction's extension to earnings plus WTC/CTC, and the up-to-£17.10 WTC disregard, are not modelled; tax credits ended in April 2025.
  • Mid-year changes. Amounts that change mid-year (for example the Scottish UC childcare caps from 28 June 2023) apply from the next model year, because the model samples one value a year.
  • Scottish fixed amounts before SSI 2021/249. Scotland's disregards, tariff income, childcare caps and hours parameters cite SSI 2021/249 from 2013; the predecessor SSI 2012/303 is not separately cited, and Scotland's April-September 2013 tariff-income threshold for applicants aged 60 or over is not modelled. (Wales's fixed amounts cite WSI 2012/3144 for 2013-14.)
  • Tax on pay without UC. The law deducts the tax actually deducted from pay. The model uses the UC model's split, which takes earnings as the lowest slice of non-savings income and pay before trade. It does not see a PAYE code that collects tax on other income through the pay.
  • Notional self-employed tax. The personal allowance taper and the married couple's and marriage allowances are not applied.
  • Welsh unearned income. Wales counts all gross income other than earnings less the Sch 9 disregards. The model counts the sources listed above; others it holds, such as maintenance received, are not counted.
  • Scottish carer premium with no carer benefit in payment. The carer earnings disregard identifies carers by a carer benefit in payment (Sch 3 para 6(1)(a)). Where a Scottish family has the carer premium but no one receives Carer's Allowance or Carer Support Payment (an award of UC with the carer element, or a carer benefit overlapped to nil), the £20 is approximated against the family's earnings. That can exceed Sch 3 para 7's £10 limit on a non-carer partner's earnings.
  • Transitional family premium. Scotland's is not modelled, because the model cannot see an unbroken claim since May 2016.
  • Scotland-only routes. The band E-H alternative maximum (reg 14) and the second adult rebate are not modelled.
  • Scotland before April 2022. Its UC rules under SSI 2012/303 are approximated with the 2021 scheme's structure. The UC childcare caps before 2022 take the 2022 value (£175 / £300), the same as the non-UC caps.
  • Exclusions. Students and persons from abroad are not excluded.
  • Non-dependant deductions use main's national CTR deductions (National council tax reduction: non-dependant deductions use Housing Benefit amounts and skip exemptions; pensioner gate ignores benefit exclusions #1934; Apply Housing Benefit and national Council Tax Reduction non-dependant deductions as legislated #2007 open).
  • Capital is household savings, except UC capital on the Welsh UC route (Pensioners without Pension Credit are tested on household savings only for the council tax reduction capital limit #1936). Treat income derived from capital as capital in the legacy means tests #1995 adds property capital; see above.

Tests

  • YAML. council_tax_reduction_devolved_working_age.yaml has 41 cases. Expected values are worked by hand from the law's amounts:

    • Wales UC with no earnings: full award;
    • Wales UC excess income = 0.45 × earnings with no work allowance;
    • the Wales UC award is the same at double the rent;
    • a Welsh couple with a child and no UC (Sch 7 amounts, disregards, Child Benefit ignored);
    • a Scottish UC lone parent counting only the child element;
    • a Scottish UC single earner (the £5 disregard, and no UC counted);
    • the Scottish under-25 allowance;
    • the ESA passport in both countries;
    • Scotland's capital limit for a passported claimant;
    • tariff income;
    • a mixed-age UC couple in Wales on the working-age route;
    • 2015-16, 2016-17 and 2018-19 amounts;
    • regressions for the first review round: the carer disregard, the £17.10 conditions, Welsh tax on unearned income, the CSP component, a carer premium per partner, SMP on the Scottish UC route, the 2025 Scottish disability premium;
    • regressions for the second review round: tax on a pension or on dividends never comes off wages (three Welsh cases, one Scottish), a Welsh carer premium on entitlement when contributory ESA overlaps Carer's Allowance to nil, no Scottish carer premium from a potential UC carer element, the Scottish UC LCWRA £20 disregard, and voluntary Class 3 NI;
    • regressions for the third review round: property income does not dilute the Welsh pension-tax disregard; the Scottish LCWRA £20 where the younger partner has LCWRA and the older one works; the Welsh notional self-employed tax (pay 12,570 and profit 5,000 give earnings 17,570, not 16,570); the Scottish self-employed lone parent at the basic rate (£1,322.52, not the starter-rate £1,317.66);
    • regressions for the fourth review round:
      • Welsh pay and miscellaneous income (Class 1 off pay in full; the miscellaneous income counted as unearned, with its tax share disregarded);
      • Scottish Part 5 miscellaneous income as unearned income (reg 57(1)(o));
      • one carer premium for partners caring for the same person, with a different-person control.
    • Means-test the Council Tax Reduction applicant and partner, not the benefit unit's claimant #2078: a Scottish working-age head who applies alone has her own pension counted; a 22-year-old head who applies alone keeps the under-25 allowance although the young couple in her benefit unit are on income-related ESA.
  • Property and differential tests. test_council_tax_reduction_devolved_working_age_properties.py runs many households in one simulation:

    • Hypothesis: 0 ≤ award ≤ liability; the Wales UC award does not depend on rent where both variants have a housing costs element (uncapped awards); the UC award never rises with earnings; IS/JSA/ESA passported claimants get the full liability.
    • Hypothesis found that the rent property fails when one variant has no housing costs element. Gaining one lowers the UC work allowance (UC Regs 2013 reg 22), so the award changes by more than the element. That is the law, so the property now requires the element in both variants, and test_welsh_universal_credit_rent_cancels_only_given_housing_costs executes the boundary.
    • Means-test the Council Tax Reduction applicant and partner, not the benefit unit's claimant #2078's differential (test_head_applying_alone_matches_her_own_benefit_unit) also compares the working-age route's scheme flag, income, applicable amount, passport and UC flag.
    • Differential: on the Welsh UC route, CTR earnings equal the UC model's uc_individual_earned_income, income equals earnings + uc_unearned_income + the award, and the applicable amount equals uc_maximum_amount, with and without SMP.
    • A targeted partial Welsh UC award (£246.36) that is the same at £6,000 and £13,000 rent.
    • Wales's fixed amounts start on 1 April 2013 with the WSI 2012/3144 values.
  • Mutation checks, each run against these tests:

    • Removing the Welsh UC income route fails the differential test and the targeted partial-award test. The 20 derandomised Hypothesis examples alone do not catch it, which is why the targeted case was added.
    • Removing the passport fails the passport property.
    • Reverting each second-round fix fails its regression: all tax off wages (4 cases fail), Class 3 off wages, the carer premium on receipt, the potential UC carer element, dropping the LCWRA limb, and adding statutory pay to Welsh UC earnings (the differential test fails).
    • At aed6724, each of these fails at least one YAML case:
  • Outsider income. test_means_test_income_properties.py now also checks that the new working-age income never counts income from people outside the family.

  • Suites. Local runs:

    • the CTR YAML directory, 272 cases at fae2f38, and the devolved file, 37 of 37 at 3667413;
    • test_council_tax_reduction_applicant_properties.py and test_means_test_income_properties.py, which pass at fae2f38;
    • the devolved property file, which passes at 3667413.

    CI runs the full suite.

Invariants

  • 0 ≤ award ≤ liability.
  • The award is non-increasing in earnings on the UC route.
  • A Welsh UC award is independent of the size of the housing costs element when there is one and no benefit cap.
  • A passported claimant gets the full liability less non-dependant deductions.
  • On the Welsh UC route, CTR earnings equal the UC model's earned income, so CTR and UC never disagree on earnings.
  • Pension-age CTR is identical to main's in every year run, benefit unit by benefit unit.

Effect on pensioner CTR (uk-triple-lock)

None. Pension-age CTR in England, Scotland and Wales is identical to main (76cfc9e) in every year run (2025, 2026, 2027 and 2029), in total and benefit unit by benefit unit, so uk-triple-lock's pensioner offsets are unaffected.

The one legal change on the pension side is that a mixed-age couple on UC in Scotland or Wales takes the working-age route, keyed on main's per-claim council_tax_reduction_pensioner (WSI 2013/3029 reg 3; SSI 2021/249 reg 3). The pension-age totals above are unchanged with it.

🤖 Generated with Claude Code

Working-age families in Scotland and Wales went through the pension-age
means test built on Housing Benefit parameters. The whole Universal Credit
award counted as income against an HB personal allowance with no children,
so UC claimants almost never got CTR.

Scotland's working-age scheme (SSI 2021/249) and the Welsh rules for
persons who are not pensioners (WSI 2013/3029) now have their own route:
- Wales, UC: applicable amount is the UC maximum amount and income is the
  Secretary of State's UC income plus the award (Sch 6 paras 3, 9).
- Scotland, UC: own applicable amount; only the child and childcare
  elements of UC count as income (regs 35, 42, 57(1)(p), (2)(d)).
- IS, income-based JSA and income-related ESA passport to the maximum
  reduction (SSI 2021/249 reg 13(11); WSI 2013/3029 Sch 9/10 para 8).
- Applicable amounts: each country's personal allowances, child amounts,
  family premium and disabled child premiums, 2013-14 to 2026-27.
- Income: Child Benefit disregarded, earnings disregards, childcare
  charges, closed unearned-income lists and tariff income from capital.

Pension-age CTR is unchanged. Carries a byte-identical copy of #1944's
council_tax_reduction_pensioner.

Fixes #1962

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… review

- Adult premiums: Scotland's and Wales's own disability, severe disability,
  enhanced disability and carer premium amounts (2013-14 to 2026-27), with a
  carer premium for each qualifying claimant or partner (SSI 2021/249 Sch 1
  paras 5, 17; WSI 2013/3029 Sch 7 paras 14, 17).
- Carer earnings disregard: £20 of the carers' own earnings plus up to £10
  of a non-carer partner's, within £20 (Sch 8 / Sch 3 paras 6-7).
- £17.10: a couple's disabled member must be the one in remunerative work;
  in Scotland from April 2022 only employed earnings qualify (Sch 3 para 15).
- Wales: tax on unearned income is disregarded (Sch 9 para 4).
- Scotland: only the Carer Support Payment component counts, not the Carer
  Supplement (reg 4(1), reg 57(1)).
- Statutory sick, maternity and paternity pay count as earnings on the UC
  route too; childcare comes off earnings after the disregards.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Coordination note from #1992 (Scottish CTR counts Carer Support Payment, stacked on #1952).

council_tax_reduction_working_age_unearned_income here subtracts carer_support_payment × supplement / (rate + supplement). That assumes carer_support_payment includes the Scottish Carer Supplement, which is true on main today. #1952 makes carer_support_payment the CSP component only (csp.rate × 52) and adds a separate scottish_carer_supplement.

Once #1952 is in, this subtraction would remove £535.88 a year of genuine CSP in 2026 (4,495.40 × 11.70 / 98.15), understating income for every Scottish working-age carer. Whichever of #1952 and this PR merges second should drop the subtraction and count carer_support_payment as it stands.

The carers overlapping-benefits work (#1953) will also make carer_support_payment the amount payable after CSP Regs reg 16(2). SSI 2021/249 reg 57(1)(b) counts benefits "subject to any adjustment … under section 73 of the Social Security Administration Act 1992"; whether that covers a reg 16(2) reduction is being checked in #1992.

🤖 Generated with Claude Code

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Composition note: #2015 (stacked on #2009 → #2006) adds council_tax_reduction_pensioner (BenUnit) with the same name, entity and meaning as this PR, but only the age test, and deletes council_tax_reduction_household_has_pensioner. Every CTR scheme now reads the per-family flag: national, the four _legacy councils, Oxford and council_tax_reduction_scheme_supported. Whichever lands second: keep this PR's formula for council_tax_reduction_pensioner.py (add/add), delete council_tax_reduction_household_has_pensioner.py (modify/delete), and change any remaining benunit.household("council_tax_reduction_household_has_pensioner", period) to benunit("council_tax_reduction_pensioner", period).

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Composition note from #2078 (stacked on #2009), which makes the CTR means test assess the applicant and partner rather than the benefit unit's claimant and partner.

#2078 adds is_council_tax_reduction_applicant_or_partner (Person): the benefit unit's claimant and partner where the liable person is one of them, and the household head alone where the head is liable but is not the benefit unit's claimant or partner (council_tax_reduction_head_applies_alone; for example, a grandmother head sharing a benefit unit with a young couple who are its claimant and partner).

council_tax_reduction_pensioner here reads the generic claimant identity. Whichever of the two PRs lands second should make it read is_council_tax_reduction_applicant_or_partner. Otherwise the 80-year-old grandmother above, whose benefit unit's claimant and partner are 17, is not a pensioner and goes on a working-age scheme. SI 2012/2885 reg 3(1)(a)(i): "he has attained the qualifying age for state pension credit", where "he" is the applicant. #2078 already does this for council_tax_reduction_household_has_pensioner; its YAML case "A pensioner who is not the applicant or partner does not make a young couple's claim a pensioner's" pins it.

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Correction to my earlier note, from #2078's review r1. A pensioner-flag swap is not enough for #1966, because it adds its own working-age assessment.

#2078 (now stacked on #2015) makes the CTR means test assess the applicant and partner (is_council_tax_reduction_applicant_or_partner), not the benefit unit's claimant and partner. Where the household head is liable but is not the benefit unit's claimant or partner (council_tax_reduction_head_applies_alone; for example a grandmother sharing a benefit unit with a young couple), the head applies alone: a single person, with the benefit unit's awards and children belonging to the couple.

#1966's working-age assessment has its own person masks and family tests. Whichever of #1966 and #2078 lands second must move all of them onto the applicant identity:

  • unearned income (council_tax_reduction_working_age_unearned_income) and earned income;
  • family status and children;
  • premiums;
  • the passport;
  • the Universal Credit route.

Then run #2078's differential property (test_head_applying_alone_matches_her_own_benefit_unit) on the composed tree, plus one case: Scotland 2026, a 40-year-old head with a £100,000 private pension, sharing a benefit unit with two 17-year-old parents and their baby, £1,800 council tax. SSI 2021/249 reg 36 counts her pension, so she gets no reduction. With only the pensioner swap, #1966's reader would leave it out and pay £1,800.

MaxGhenis and others added 3 commits October 3, 2026 22:02
Resolve conflicts with #1909 (capital routing), #1944 (council_tax_reduction_pensioner;
keep main's file with the Welsh/Scottish sentence updated) and programs.yaml.
After #1952 carer_support_payment is the CSP component only, so drop the
supplement subtraction. Route every working-age person mask through one
helper (working_age_applicant_or_partner) so #2078 can swap the applicant
identity in one place.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- #1909's Welsh working-age earner now gets the Welsh allowance and the £5
  earnings disregard (1,111.24, not the HB-based 993.72).
- #1944's capped mixed-age UC couple in Wales gets the maximum reduction
  under WSI 2013/3029 Sch 6 paras 3 and 9; give it a UC maximum amount
  consistent with its award.
- The Scottish self-employed £17.10 case now pays Class 4 NI on its profits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Keep main's joint-liability share on the liability, and route the Scottish
and Welsh working-age rules on council_tax_reduction_claim_pensioner, the
per-claim scheme flag the national formula uses.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

Status, paused by Fleet ops (overnight session cap): head a5e5a73 is based on main, MERGEABLE, CI running. CTR YAML 129 passed; property tests pass.

Pending:

  • Review. Hard-tier review, subfleet run 20261003-221336-ctr1966-review-r2. Output goes to ~/reviews/uk-ctr-shortfall-2026-09-30/out/review_r2_a5e5a73.md.
  • Impact. The rerun against main 7fee075 is impact/branch_a5e5a73.json beside impact/base_main_2efc8d8.json.

Next: read the review and fix anything it finds, update the PR's impact table, mark ready, and merge on gates or hand off to the UK hub.

🤖 Generated with Claude Code

MaxGhenis and others added 4 commits October 4, 2026 06:29
- Take off earnings only the tax and NI in respect of the employment or
  trade (the UC split of income tax; Class 1, 2 and 4, not Class 3), and
  disregard tax on counted unearned income in Wales.
- Count the carer premium on entitlement to a carer benefit; give the
  Scottish UC carer fallback only with an award of UC.
- Scotland: the £20 disregard for a UC worker with LCW or LCWRA.
- Wales UC: the UC model's own earned income, as the Secretary of State's
  figure.
- Welsh fixed amounts from 1 April 2013 (W.S.I. 2012/3144).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Count Carer Support Payment before the overlap reduction, as the
  pension-age route does, in income and in tax on unearned income.
- Update main's Carer Support Payment tests for the devolved amounts.
- Regression tests: tax on pensions and dividends stays off wages (Wales
  and Scotland), carer premium on entitlement, no UC carer premium without
  an award, Scottish UC LCWRA £20 disregard, Class 3 NI, the Welsh UC
  income figure (differential against the UC variables), a partial Welsh
  UC award independent of rent, and the Welsh 2013 first dates.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tory-pay inheritance

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
vahid-ahmadi pushed a commit that referenced this pull request Oct 8, 2026
… and exemption (#2015)

* Assess each Council Tax Reduction claim under its own family's scheme and exemption

In a shared-rent household every family liable for the rent claims, but the
pensioner scheme and the non-dependant exemption were picked once per
household from the head's family. SI 2012/2885 reg 3 (and SI 2012/2886 Sch
para 3, SI 2013/3029 reg 3, SSI 2021/249 reg 3, SSI 2012/319 reg 12) define
"pensioner" per person and partner, and the exemption applies where "the
applicant or his partner" is blind or gets a listed benefit (SI 2012/2885 Sch 1
para 8(6) and equivalents).

- council_tax_reduction_pensioner (BenUnit) replaces the household flag; the
  name and entity match #1944 and #1966, which extend the same definition.
- council_tax_reduction_applicant_has_non_dep_exemption (BenUnit) replaces
  the household exemption; the councils' schemes apply it per claim.
- council_tax_reduction_scheme_supported is per family, so each family falls
  back to its reported reduction only where its own scheme is unmodelled.
- Councils' person-level non-dependant deductions no longer depend on the
  head's family; each claimant's own scheme decides whether to use them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Reconcile reported and simulated reductions within a household

With the scheme chosen per family, one household can hold a simulated claim
and a family whose scheme is not simulated. Review r1 found that a family
that cannot claim then kept its reported reduction beside a head whose
simulated award already covered the whole bill: £3,000 against £1,800.

- A family that cannot claim keeps a reported reduction only where no claim
  in its household is simulated (new household flag
  council_tax_reduction_household_has_simulated_claim). Without sharers this
  is the base behaviour.
- A jointly liable claimant's reported reduction is limited to its own share
  of the council tax (SI 2012/2885 Sch 1 para 7(3)-(4)), the most any scheme
  could give it.

Tests: three YAML cases; the property tests now generate reported
reductions, check the fallback and the household bound, and toggle one
claimant's exempting benefit to show it leaves the other claim unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Set a claim's scheme and exemption from the applicant and their partner

#2009 now names the liable people directly. A household head can be liable
without being the claimant or partner of their family (a grandparent heading
a family formed around a young couple), so "the applicant or his partner"
(SI 2012/2885 reg 3, Sch 1 para 8(6)) is not always the family's claimant and
partner. New person-level council_tax_reduction_applicant_or_partner: the
liable member, and the other member of the couple where the liable member is
the claimant or partner, whatever the partner's age; in a family that cannot
claim, its claimant and partner. The pensioner flag and the applicant
exemption read it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Use #2078's CTR applicant-or-partner variable

#2078 (also stacked on #2009) adds
is_council_tax_reduction_applicant_or_partner and
council_tax_reduction_head_applies_alone for the CTR means test. They define
the same people as this PR's council_tax_reduction_applicant_or_partner: the
claimant and partner where the liable person is one of them, the liable head
alone otherwise, and the claimant and partner in a family that cannot claim.
Take #2078's two files byte for byte, so whichever PR lands second merges
without conflict, and point the pensioner flag and the applicant exemption
at it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Cap a reported reduction at the claimant's share only beside a simulated claim

Review r2 found that capping every jointly liable claimant's reported
reduction at its share could discard a lawful report: the model's divisor
(#2006's joint-liability share) counts students that SI 2012/2885 Sch 1
para 7(5) leaves out. The cap exists to stop a reported claim and a simulated
claim together exceeding the bill, so it now applies only where another claim
in the household is simulated, on the share that claim uses. Where nothing is
simulated, reports are kept as reported, as on the base.

Tests:
- YAML: a jointly liable claimant keeps its whole report where nothing is
  simulated; a pension-age grandmother in working-age applicants' family does
  not make their claim a pensioner's (an intended change under reg 3(1): the
  base paid £1,800 on the pensioner scheme).
- Properties: the fallback oracle follows the narrowed cap, and property 4
  compares council_tax_benefit wherever the household's reconciliation is
  unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Apply the reported-reduction cap only beside a simulated claim that pays

On the payer build, the only remaining change came from heads whose reported
reduction was capped beside a sharer whose simulated claim paid nothing. With
no simulated reduction competing for the bill there is nothing to reconcile,
so the cap now applies only where the simulated claims in the household pay
something. The household bound still holds: each simulated award is within
its share, and a capped report within its own.

Tests: a YAML case where the simulated claim beside a report pays nothing;
the fallback oracle, the bound and property 4's comparison follow the paid
condition.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Test the per-family pensioner flag against #1944's reg 3 conditions

council_tax_reduction_pensioner is now #1944's SI 2012/2885 reg 3 test
on this PR's members: the qualifying age for State Pension Credit, and no
Income Support, income-based JSA, income-related ESA or Universal Credit
award. Property 1's oracle computes that directly. A family's own Universal
Credit award depends on the rent it pays, which changes when it lives
alone, so property 2 compares the families whose own awards are the same
either way (and checks there are some).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Address the after-merge review: student share, head's own awards, P5

- council_tax_benefit: the share leaves out only people in higher
  education, so where a jointly liable person it counts is in other
  education (who may be a student SI 2012/2885 Sch 1 para 7(5) leaves out),
  the share may be too small; a report is then kept rather than capped.
- council_tax_reduction_pensioner: where the household head applies alone,
  the benefit unit's Income Support, income-based JSA, income-related ESA
  and Universal Credit are its claimant and partner's, not the applicant's
  (as #2078 does for council_tax_reduction_relevant_income_based_benefit).
- Two YAML regressions: a report beside a paying simulated claim where a
  further-education student is counted in the share, and a grandmother
  head who stays a pensioner when the young parents get Income Support.
- Property test: the alone simulation is given each family's own awards
  instead of filtering; some generated adults are further-education
  students, and properties 5 and 6 follow the new rule.
- test_benefit_cap_and_ctr_pension_age_properties P5 compares against a
  reform of the cap exception alone, so the CTR pensioner test (which also
  sets the applicable amount) is held fixed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Hold the means test fixed in property 4

CI found that swapping the other claiming families' ages and disability
benefits can move a family's simulated award through its applicable
amount: the model's severe disability premium counts the other adults in
the household (has_non_dependant_for_severe_disability_premium), joint
occupiers included. That is main's means test, not the scheme or the
exemption, so the perturbed run is given each family's applicable amount
and income from the unperturbed one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Read the student test and in_FE for the cap's student guard

The re-review of 38364ca found that the guard missed in_FE, and that
current_education's age default (tertiary at 18 and 19) turns it on with
no education input. The guard now uses the model's student test for
non-dependants (_legacy.is_full_time_student_non_dep) or in_FE, for a
jointly liable person the share counts. The age default is kept
deliberately: in the enhanced FRS current_education is an observed input,
and the same test already treats an 18- or 19-year-old non-dependant as a
student. The documentation says so, including that part-time students and
students para 75(2) brings back in are treated the same way.

Regressions: the student shown by in_FE (fails on 38364ca), and a
jointly liable sharer with no education input at 19 (report kept) and 20
(capped). The property generator makes students by current_education or
by in_FE.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Hold each family's own awards fixed in property 4

CI on d988725 (run 37383946508) failed property 4 on a Newham household:
a working-age head (47) claiming Universal Credit, a sharer couple aged 100
and 63 with earnings, and a non-dependant. Perturbing the head to 85 moves
the non-dependant into the sharer's claim (uc_non_dependants_counted: the
household's non-dependants count in one claim only, UC Regs 2013 Sch 4 para
9(2), the head family's where it claims). The sharer's size criteria rise
from one bedroom to two, its LHA cap from 9,000 to 10,860 and its award
from 0 to 1,288.29, and reg 3(1)(a)(ii) then makes it not a pensioner.

That is the family's own award, which the pensioner test is meant to follow,
so the change is intended. Property 4 now holds each family's own UC, IS,
JSA and ESA awards fixed, as property 2 already does, along with its means
test. The same population fails on a9466b8, so this predates the merge
of main; CI on a9466b8 did not generate it. With the awards held, a
household-level pensioner flag still fails property 4.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Hold the household allocations, not the awards, in property 4

The review of 94041e9 found that holding every family's own awards still
let property 4 fail through the same channel, and hid cross-family reads of
awards:
- In Newham, when the head's family stops claiming Universal Credit, the
  non-dependant moves into the sharer's claim and raises its
  uc_maximum_amount, which the four _legacy councils use as a UC family's
  applicable amount. The sharer's council award moved from 241.67 to 417.02
  with its awards held.
- Holding every family's awards also gives a perturbed 85-year-old head the
  award of the 47-year-old it replaced, and a mutant that read another
  family's UC survived.

Property 4 now holds, with each family's CTR means test, the two household
allocations through which other families reach a family's own awards:
uc_non_dependants_counted (UC Regs 2013 Sch 4 para 9(2)) and
has_non_dependant_for_severe_disability_premium. Each family's awards are
computed. The body passes on CI's population, its minimal household and
the reviewer's counterexample, and catches all five mutants the reviewer
and author built.

The generator also sets is_claimant_or_partner on every family's adults, so
wide-gap couples stay couples once #2082 presumes a member 20 or more years
younger to be a child. build() keeps each held value's own type.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Hold the CTR capital in property 4 and pin its counterexamples

Pension Credit's guarantee credit sets a family's CTR capital to nil, and
the model lets other families reach that guarantee credit twice: the
severe disability addition's residence condition counts every other adult
in the household, and pension_credit_assessable_capital divides the
household's savings among its pension-age adults. Property 4 held the CTR
applicable amount and income but not the capital, so a head reaching
pension age, or gaining Attendance Allowance, could move a pension-age
sharer's award from nil to its £900 share of an £1,800 bill (review r5,
finding 1).

Hold council_tax_reduction_assessable_capital with the rest of the means
test, name the two Pension Credit routes in the docstring, and pin as
Hypothesis examples the four populations that broke earlier versions of
the property: CI's Universal Credit non-dependant move, the
uc_maximum_amount move, and the two Pension Credit routes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

A note from #2288, which gives Scotland's working-age Council Tax Reduction scheme its own "young person" (SSI 2021/249 reg. 6(1): the Universal Credit qualifying young person, UC Regs 2013 reg. 5) and leaves England, Wales and Scotland's pension-age scheme on the Child Benefit one.

When this PR is rebased after #2288 lands, five reads in the new working-age variables use the legacy flags, which follow the Child Benefit definition:

File (at this PR's head) Line Reads
working_age/council_tax_reduction_working_age_child_amounts.py 44 is_child_or_young_person_for_legacy_benefits
working_age/council_tax_reduction_working_age_childcare_deduction.py 47 is_child_or_young_person_for_legacy_benefits
working_age/council_tax_reduction_working_age_earnings_disregard.py 66 is_lone_parent
working_age/council_tax_reduction_working_age_earnings_disregard.py 153 is_child_or_young_person_for_legacy_benefits
working_age/council_tax_reduction_working_age_personal_allowance.py 38 is_lone_parent

For Scotland these should read is_child_or_young_person_for_council_tax_reduction and is_council_tax_reduction_lone_parent from #2288. Those already choose the definition by scheme (Universal Credit for Scottish working-age families from 2022-23, Child Benefit everywhere else), so Wales is unaffected by switching to them. The two definitions differ for a 19-year-old on a course begun before 19 who is past the 1 September after their 19th birthday: a Child Benefit young person until 20, not a Universal Credit one.

#2288 also edits council_tax_reduction_applicable_amount (lines 25 to 27 here) and the income mask in council_tax_reduction_applicable_income (line 43 here), so those two files will conflict. The severe disability premium has the same issue through a shared helper: #2295.

@MaxGhenis

Copy link
Copy Markdown
Collaborator Author

UK hub, coordination with #1995 (income derived from capital in the legacy means tests; owner session local_4c20f06a; head 3727eb8).

#1995 adds council_tax_reduction_assessable_capital (property at 90% less secured debt, the UC award route, and passported-applicant capital disregards by scheme) and council_tax_reduction_universal_credit_award (paid, or claimed and entitled before the cap and deductions; not the applicant's when the head applies alone).

When this PR's working-age route (council_tax_reduction_working_age_capital, tariff, passport) is next rebased, it should reuse those two variables. Otherwise the working-age route would drop property capital again. Whichever of #1966 and #1995 lands second does the substitution.

🤖 Generated with Claude Code

… fix review r3

Conflicts:
- council_tax_reduction_pensioner.py: main's per-claim flag (#2078);
  its docstring now says Welsh and Scottish claims that fail it take
  the working-age route.
- CSP and pensioner tests: keep main's statutory 2025-26 amounts
  (#2110) and the working-age route's outputs; the capped Welsh
  mixed-age UC couple gets the maximum reduction under Sch 6 paras 3, 9.

Composition:
- Route on council_tax_reduction_pensioner (claim_pensioner is gone).
- #2078: every person mask reads is_council_tax_reduction_applicant_or_partner;
  where the head applies alone she is single, and the benefit unit's
  UC, income-related benefits, tax credits and children are not hers
  (working_age/_applicant.py helpers). Premium conditions follow
  council_tax_reduction_premiums for a head alone, and the severe
  disability premium uses CTR's own family test.
- #2288: children and lone parents follow the scheme's own young
  person (is_child_or_young_person_for_council_tax_reduction,
  is_council_tax_reduction_lone_parent).
- UC now counts statutory pay itself, so Scotland's UC route uses
  uc_individual_earned_income_before_mif (no minimum income floor in
  SSI 2021/249 regs 49-51) without adding it again.
- Main's tests that pinned Scottish and Welsh working-age awards under
  the shared formula are re-derived under the devolved rules.

Review r3:
- R3-1: tax disregarded from Welsh unearned income is shared only with
  taxable non-earnings the schemes do not count; property income is
  outside earned_income_tax already.
- R3-2: the Scottish LCW/LCWRA £20 tests "under pensionable age" and
  "in employment" separately (Sch 3 para 4(3)).
- R3-3: without UC, self-employed profit takes the prescribed notional
  basic-rate tax and Class 4 (Class 2 before April 2024), not the tax
  paid (SSI 2012/303 reg 38 via SSI 2021/249 reg 51(9); WSI 2013/3029
  Sch 6 para 25). Employed earnings deduct the tax and Class 1 on the
  employment only.
- R3-4: the CSP test header's tax note is pension-age only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Aggregate impact on certified data: pass

Base 69903500ea against head 4fa309d415, both on enhanced_frs_2024_25.h5 (policyengine-uk-data 1.58.1, sha256 056e80fd8e91), fiscal years 2025-26 to 2031-32. Each year is a full microsimulation run on each side.

Checks: 0 broken by this change, 1 failing on both sides, 0 fixed. Moves flagged for review: 27 (thresholds in report_spec.yaml; a flag does not fail the job).

Workflow run and full report

Notes

  • In the years a figure from fewer than 10 records is suppressed (spending.disabled_students_allowance), every total containing it, and the decile incomes, are rebuilt from their other components, so no published total includes it. Those totals are marked †. A change is withheld where the two sides leave out different figures and can't be lined up.

Moves flagged for review

Measure Year Base Head Change
Council Tax Reduction 2025-26 3,185k 3,325k +140.3k
Council Tax Reduction 2027-28 3,223k 3,363k +140.2k
Council Tax Reduction 2028-29 3,244k 3,385k +140.8k
Council Tax Reduction 2031-32 3,293k 3,436k +142.8k
Council Tax Reduction 2029-30 3,262k 3,403k +141.4k
Council Tax Reduction 2030-31 3,280k 3,422k +142.1k
Council Tax Reduction 2026-27 3,210k 3,348k +138.0k
Decile 2: mean household_net_income per household 2031-32 £30,329 £30,422 +£93
Relative poverty, before housing costs: pensioners 2027-28 1,625k 1,650k +24.9k
Decile 2: mean household_net_income per household 2029-30 £29,373 £29,455 +£82
Decile 4: mean household_net_income per household 2026-27 £40,908 £41,009 +£101
Decile 2: mean household_net_income per household 2028-29 £29,013 £29,081 +£68
Relative poverty, before housing costs: pensioners 2027-28 14.1% 14.3% +0.22pp
Decile 1: mean household_net_income per household 2028-29 £17,992 £18,025 +£33
Decile 3: mean household_net_income per household 2026-27 £35,901 £35,838 -£64
Council Tax Reduction 2031-32 £2.28bn £2.42bn +£137.6m
Absolute poverty, after housing costs: children 2025-26 32.1% 31.9% -0.13pp
Council Tax Reduction 2030-31 £2.23bn £2.36bn +£130.3m
Decile 3: mean household_net_income per household 2030-31 £37,825 £37,874 +£49
Council Tax Reduction 2029-30 £2.18bn £2.30bn +£124.9m
Decile 3: mean household_net_income per household 2028-29 £37,008 £36,963 -£45
Relative poverty, after housing costs: children 2025-26 33.0% 32.9% -0.12pp
Council Tax Reduction 2028-29 £2.13bn £2.25bn +£119.4m
Council Tax Reduction 2027-28 £2.08bn £2.19bn +£114.3m
Decile 1: mean household_net_income per household 2026-27 £17,997 £17,977 -£20
Council Tax Reduction 2026-27 £2.03bn £2.14bn +£109.7m
Council Tax Reduction 2025-26 £1.99bn £2.09bn +£105.8m

Spending by benefit and service

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Council Tax Reduction +£105.8m +£109.7m +£114.3m +£119.4m +£124.9m +£130.3m +£137.6m
Disabled Students' Allowance suppressed suppressed suppressed suppressed suppressed suppressed suppressed

Caseloads

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Council Tax Reduction +140.3k +138.0k +140.2k +140.8k +141.4k +142.1k +142.8k
Disabled Students' Allowance suppressed suppressed suppressed suppressed suppressed suppressed suppressed

Government balance, each component counted once

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Government spending +£105.8m † +£109.7m † +£114.3m † +£119.4m † +£124.9m † +£130.3m † +£137.6m †
Government balance, each receipt once -£105.8m † -£109.7m † -£114.3m † -£119.4m † -£124.9m † -£130.3m † -£137.6m †

Model totals

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
gov_spending +£105.8m † +£109.7m † +£114.3m † +£119.4m † +£124.9m † +£130.3m † +£137.6m †
household_benefits +£105.8m † +£109.7m † +£114.3m † +£119.4m † +£124.9m † +£130.3m † +£137.6m †
gov_balance -£105.8m † -£109.7m † -£114.3m † -£119.4m † -£124.9m † -£130.3m † -£137.6m †

Household income totals

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Household net income +£105.8m † +£109.7m † +£114.3m † +£119.4m † +£124.9m † +£130.3m † +£137.6m †
Household net income (HBAI definition) +£105.8m +£109.7m +£114.3m +£119.4m +£124.9m +£130.3m +£137.6m

Poverty rates

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Absolute poverty, before housing costs: everyone -0.01pp -0.02pp -0.02pp -0.02pp -0.02pp -0.02pp -0.02pp
Absolute poverty, before housing costs: children -0.02pp -0.04pp -0.04pp -0.03pp -0.03pp -0.03pp -0.04pp
Absolute poverty, before housing costs: working-age adults -0.01pp -0.02pp -0.02pp -0.02pp -0.02pp -0.02pp -0.02pp
Absolute poverty, after housing costs: everyone -0.06pp -0.02pp -0.02pp -0.03pp -0.03pp -0.03pp -0.03pp
Absolute poverty, after housing costs: children -0.13pp -0.03pp -0.06pp -0.08pp -0.07pp -0.07pp -0.07pp
Absolute poverty, after housing costs: working-age adults -0.05pp -0.02pp -0.01pp -0.03pp -0.03pp -0.03pp -0.03pp
Relative poverty, before housing costs: everyone -0.01pp -0.01pp +0.02pp -0.01pp -0.01pp -0.01pp -0.01pp
Relative poverty, before housing costs: children -0.01pp -0.01pp -0.03pp -0.02pp -0.02pp -0.02pp -0.03pp
Relative poverty, before housing costs: working-age adults -0.00pp -0.00pp -0.01pp -0.01pp -0.01pp -0.01pp -0.01pp
Relative poverty, before housing costs: pensioners 0 0 +0.22pp 0 +0.01pp 0 0
Relative poverty, after housing costs: everyone -0.05pp -0.03pp -0.03pp -0.03pp -0.03pp -0.03pp -0.03pp
Relative poverty, after housing costs: children -0.12pp -0.08pp -0.07pp -0.08pp -0.06pp -0.06pp -0.07pp
Relative poverty, after housing costs: working-age adults -0.04pp -0.03pp -0.03pp -0.03pp -0.02pp -0.02pp -0.03pp
Relative poverty, after housing costs: pensioners 0 0 +0.00pp 0 0 0 0

People in poverty

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Absolute poverty, before housing costs: everyone -6.7k -15.3k -15.1k -12.3k -12.7k -12.8k -15.7k
Absolute poverty, before housing costs: children -3.2k -5.9k -6.0k -4.5k -4.6k -4.6k -6.1k
Absolute poverty, before housing costs: working-age adults -3.5k -9.4k -9.1k -7.7k -8.2k -8.2k -9.7k
Absolute poverty, after housing costs: everyone -40.2k -13.4k -14.1k -22.8k -23.3k -22.1k -22.2k
Absolute poverty, after housing costs: children -20.0k -5.3k -8.6k -11.5k -10.8k -10.2k -10.2k
Absolute poverty, after housing costs: working-age adults -20.1k -8.1k -5.5k -11.3k -12.5k -11.9k -12.0k
Relative poverty, before housing costs: everyone -3.8k -3.6k +13.3k -6.5k -4.0k -5.7k -9.4k
Relative poverty, before housing costs: children -1.8k -1.8k -5.1k -3.2k -2.7k -2.9k -4.7k
Relative poverty, before housing costs: working-age adults -2.1k -1.8k -6.5k -3.2k -2.5k -2.9k -4.7k
Relative poverty, before housing costs: pensioners 0 0 +24.9k 0 +1.2k 0 0
Relative poverty, after housing costs: everyone -36.6k -22.5k -23.1k -22.8k -20.1k -18.3k -22.0k
Relative poverty, after housing costs: children -18.3k -11.4k -10.9k -11.5k -9.7k -8.8k -10.7k
Relative poverty, after housing costs: working-age adults -18.4k -11.2k -12.8k -11.3k -10.4k -9.5k -11.4k
Relative poverty, after housing costs: pensioners 0 0 +551 0 0 0 0

Inequality

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Gini coefficient, equivalised HBAI income before housing costs -0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001 -0.0001

Mean household net income in each side's own deciles

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Decile 1: mean household_net_income per household +£2.22 † -£20 † +£10 † +£33 † -£7.06 † +£11 † +£2.50 †
Decile 2: mean household_net_income per household +£24 † +£15 † +£23 † +£68 † +£82 † -£24 † +£93 †
Decile 3: mean household_net_income per household +£23 † -£64 † -£15 † -£45 † -£5.88 † +£49 † -£16 †
Decile 4: mean household_net_income per household +£2.44 † +£101 † +£11 † +£3.60 † +£35 † +£3.02 † +£13 †
Decile 5: mean household_net_income per household +£13 † +£14 † +£37 † +£13 † -£5.97 † +£35 † +£17 †
Decile 6: mean household_net_income per household -£11 † -£12 † -£28 † -£23 † -£27 † -£25 † -£20 †
Decile 7: mean household_net_income per household -£0.01 † -£0.01 † -£0.00 † -£0.00 † -£0.00 † -£0.00 † -£0.00 †
Decile 8: mean household_net_income per household +£1.50 † +£1.46 † +£1.51 † +£1.57 † +£1.63 † +£1.68 † +£1.73 †
Decile 9: mean household_net_income per household +£0.08 † +£0.09 † +£0.09 † +£0.09 † +£0.10 † +£0.10 † +£0.11 †

Standard reform costings (change in gov_balance)

Measure 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Raise basic rate by 1pp -£11,458 -£12,302 -£12,934 -£13,514 -£14,097 -£14,928 -£15,664
Raise higher rate by 1pp 0 0 -£0 +£0 -£0 0 0
Raise personal allowance by ~800GBP/year -£15,507 +£2,288 +£897 +£899 +£820 +£34,822 +£7,109
Raise child benefit by 25GBP/week per additional child -£2,315 -£2,123 -£11,353 -£39,762 -£37,576 -£35,330 -£33,003
Reduce Universal Credit taper rate to 20% -£59,617 -£34,284 -£83,589 -£0.1m -£0.1m -£0.1m -£0.1m
Raise Class 1 main employee NICs rate to 10% -£29,558 -£29,432 -£32,228 -£36,747 -£41,292 -£49,364 -£40,797
Raise VAT standard rate by 2pp -£12 +£5 -£6 +£22 +£2 +£3 -£39
Raise additional rate by 3pp -£0 -£0 0 -£0 -£0 0 +£0
Raise the Universal Credit standard allowance by 10% -£2.3m -£2.7m -£2.9m -£3.0m -£3.1m -£3.2m -£3.3m
Raise the State Pension by 10% 0 0 -£0 0 -£0 +£0 -£0

Household net income by decile

Mean change in household net income per household, and as a share of the decile's base income; households stay in the base run's deciles.

Base decile 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Decile 1 +£13 (+0.1%) +£13 (+0.1%) +£13 (+0.1%) +£13 (+0.1%) +£15 (+0.1%) +£13 (+0.1%) +£15 (+0.1%)
Decile 2 +£5 (+0.0%) +£5 (+0.0%) +£7 (+0.0%) +£7 (+0.0%) +£7 (+0.0%) +£9 (+0.0%) +£9 (+0.0%)
Decile 3 +£5 (+0.0%) +£6 (+0.0%) +£5 (+0.0%) +£4 (+0.0%) +£4 (+0.0%) +£4 (+0.0%) +£4 (+0.0%)
Decile 4 +£4 (+0.0%) +£5 (+0.0%) +£5 (+0.0%) +£6 (+0.0%) +£6 (+0.0%) +£7 (+0.0%) +£7 (+0.0%)
Decile 5 +£3 (+0.0%) +£3 (+0.0%) +£3 (+0.0%) +£3 (+0.0%) +£3 (+0.0%) +£3 (+0.0%) +£3 (+0.0%)
Decile 6 fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change
Decile 7 fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change
Decile 8 fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change
Decile 9 fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change fewer than 10 households change
Decile 10 0 0 0 0 0 0 0
all +£3 (+0.0%) +£4 (+0.0%) +£4 (+0.0%) +£4 (+0.0%) +£4 (+0.0%) +£4 (+0.0%) +£4 (+0.0%)
Year People gaining over £1 People losing over £1
2025-26 0.5% 0.0%
2026-27 0.5% 0.0%
2027-28 0.5% 0.0%
2028-29 0.5% 0.0%
2029-30 0.5% 0.0%
2030-31 0.5% 0.0%
2031-32 0.5% 0.0%

No change in any year: receipts by tax head; components the model counts twice; population; standard reforms: change in each reform's target.

Checks failing on both base and head (1)
  • VAT is never negative (sign:vat): 2025-26: 76 units below zero, a weighted £-54,797,972 in total; 2026-27: 76 units below zero, a weighted £-56,271,349 in total; 2027-28: 76 units below zero, a weighted £-57,609,146 in total
Counted-once check

Each of 84 components was raised by £1 per unit in 2026-27, and every head of its totals was read household by household: its own head must rise by exactly £1, no other tax head may move, no other benefit may rise, and the model's own total must move by what its heads moved. A head that breaks a rule is measured again twice: with every other head held at its baseline value, and with every other head held at its value after the first £1 while the component rises again. It fails where either still shows the response. 0 failed; 0 were skipped.

Provenance
Side Commit Runtime Environment hash Partition hash Time
base main 69903500ea uk 2.141.7 (files 4eecf7c2d8b5), core 3.33.2, py 3.13.16 aarch64 9432d584e851 0d0426ee9e38 926.33s
head #1966 merged into main 4fa309d415 uk 2.141.7 (files 9605b07332b6), core 3.33.2, py 3.13.16 aarch64 9432d584e851 0d0426ee9e38 967.03s

Dataset: hf://policyengine/policyengine-uk-data-private/enhanced_frs_2024_25.h5@2526edbbb687a3b54dbb11272e5389e4b62d2ac2, sha256 056e80fd8e9151d78f432a25cde863340baee81304c6216a37fb575ce8563784 (verified on both sides), policyengine-uk-data 1.58.1.

Receipts by tax head: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Income tax £299.38bn £319.14bn £336.66bn £351.81bn £367.35bn £385.48bn £403.83bn
National Insurance (employee and self-employed) £52.58bn £54.94bn £56.75bn £58.48bn £60.62bn £62.57bn £65.03bn
National Insurance (employer) £152.64bn £159.18bn £164.14bn £168.73bn £176.11bn £181.72bn £188.90bn
Employer NI change borne by capital £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Employer NI change borne by consumers £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Capital gains tax £12.62bn £13.06bn £13.55bn £14.04bn £14.54bn £15.09bn £15.65bn
Student loan repayments £7.83bn £8.12bn £8.35bn £8.56bn £8.79bn £9.04bn £9.38bn
VAT £253.71bn £260.53bn £266.72bn £273.14bn £279.83bn £286.71bn £293.71bn
Change in VAT from its baseline £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
VAT on private school fees £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Fuel duties £24.53bn £24.64bn £26.64bn £26.69bn £26.42bn £25.76bn £26.35bn
Alcohol duties £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Tobacco duties £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Vehicle excise duties £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
TV licence fee £4.28bn £4.43bn £4.44bn £4.46bn £4.49bn £4.51bn £4.53bn
Council tax £49.56bn £52.45bn £55.78bn £59.39bn £62.98bn £66.74bn £70.70bn
High value council tax surcharge £0.00bn £0.00bn £0.00bn £0.48bn £0.49bn £0.51bn £0.52bn
Northern Ireland domestic rates £0.55bn £0.58bn £0.61bn £0.63bn £0.67bn £0.70bn £0.73bn
Business rates £31.73bn £31.73bn £31.73bn £31.73bn £31.73bn £31.73bn £31.73bn
Stamp duty land tax (own purchases, and corporate until the £10.06bn £10.56bn £10.98bn £11.40bn £11.81bn £12.23bn £12.64bn
Land transaction tax (Wales) £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Land and buildings transaction tax (Scotland) £0.01bn £0.01bn £0.02bn £0.02bn £0.02bn £0.02bn £0.02bn
Unspecified tax change borne by capital £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Unspecified tax change borne by consumers £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Wealth tax £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Wealth tax excluding the main residence £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Land value tax £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Carbon tax £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Spending by benefit and service: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
State Pension £122.50bn £127.12bn £128.28bn £130.21bn £134.05bn £138.02bn £142.08bn
Pension Credit £6.66bn £7.04bn £7.02bn £7.09bn £7.21bn £7.34bn £7.44bn
Winter Fuel Payment £1.70bn £1.68bn £1.59bn £1.57bn £1.57bn £1.55bn £1.52bn
Pension Age Winter Heating Payment (Scotland) £0.19bn £0.20bn £0.20bn £0.21bn £0.21bn £0.22bn £0.22bn
Universal Credit £78.78bn £83.09bn £84.89bn £86.65bn £87.58bn £89.00bn £90.33bn
Housing Benefit £8.59bn £8.92bn £9.19bn £9.33bn £9.61bn £9.87bn £10.15bn
Council Tax Reduction £2.09bn £2.14bn £2.19bn £2.25bn £2.30bn £2.36bn £2.42bn
Employment and Support Allowance (income-related) £2.12bn £2.18bn £2.23bn £2.28bn £2.33bn £2.39bn £2.45bn
Employment and Support Allowance (contribution-based) £5.22bn £5.36bn £5.49bn £5.62bn £5.76bn £5.90bn £6.04bn
Jobseeker's Allowance (income-based) £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Jobseeker's Allowance (contribution-based) £0.29bn £0.30bn £0.30bn £0.31bn £0.32bn £0.33bn £0.33bn
Income Support £0.12bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Working Tax Credit £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Child Tax Credit £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Incapacity Benefit £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Personal Independence Payment £27.05bn £28.19bn £28.94bn £29.64bn £30.37bn £31.11bn £31.87bn
Disability Living Allowance £7.52bn £7.83bn £8.04bn £8.24bn £8.44bn £8.65bn £8.86bn
Attendance Allowance £8.71bn £9.08bn £9.32bn £9.55bn £9.78bn £10.02bn £10.26bn
Carer's Allowance £4.50bn £4.69bn £4.81bn £4.93bn £5.05bn £5.17bn £5.29bn
Carer Support Payment (Scotland) £0.35bn £0.37bn £0.38bn £0.39bn £0.40bn £0.41bn £0.41bn
Carer's Allowance Supplement (Scotland) £0.00bn £0.05bn £0.05bn £0.05bn £0.05bn £0.05bn £0.05bn
Severe Disablement Allowance £0.03bn £0.03bn £0.03bn £0.03bn £0.03bn £0.03bn £0.03bn
Industrial Injuries Disablement Benefit £0.51bn £0.52bn £0.53bn £0.54bn £0.56bn £0.57bn £0.59bn
Armed Forces Compensation Scheme £0.61bn £0.62bn £0.64bn £0.65bn £0.67bn £0.69bn £0.70bn
War Widow's or Widower's Pension £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Child Benefit £16.23bn £16.91bn £17.32bn £17.73bn £18.16bn £18.60bn £19.04bn
Scottish Child Payment £0.50bn £0.52bn £0.53bn £0.55bn £0.56bn £0.57bn £0.58bn
Two Child Limit Payment (Scotland, counterfactual) £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Healthy Start vouchers £0.05bn £0.05bn £0.05bn £0.05bn £0.05bn £0.05bn £0.05bn
Maternity Allowance £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Statutory Maternity Pay £3.32bn £3.41bn £3.49bn £3.57bn £3.66bn £3.75bn £3.84bn
Statutory Paternity Pay £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Statutory Sick Pay £1.13bn £1.16bn £1.19bn £1.22bn £1.25bn £1.28bn £1.31bn
Sure Start Maternity Grant £0.01bn £0.01bn £0.01bn £0.01bn £0.01bn £0.01bn £0.01bn
Bereavement Support Payment £0.67bn £0.69bn £0.70bn £0.72bn £0.74bn £0.76bn £0.78bn
Tax-Free Childcare £0.55bn £0.56bn £0.57bn £0.58bn £0.60bn £0.61bn £0.59bn
Extended childcare entitlement £2.66bn £3.14bn £3.23bn £3.30bn £3.38bn £3.47bn £3.55bn
Universal childcare entitlement £3.32bn £3.59bn £3.69bn £3.78bn £3.88bn £3.99bn £4.08bn
Targeted childcare entitlement £0.57bn £0.60bn £0.62bn £0.63bn £0.65bn £0.66bn £0.67bn
Care to Learn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Childcare Grant £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Parents' Learning Allowance £0.20bn £0.20bn £0.20bn £0.20bn £0.20bn £0.20bn £0.20bn
Adult Dependants' Grant £0.06bn £0.06bn £0.04bn £0.04bn £0.04bn £0.04bn £0.04bn
Travel Grant £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Disabled Students' Allowance suppressed suppressed suppressed suppressed suppressed suppressed suppressed
16 to 19 Bursary Fund £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
NHS spending £204.68bn £205.46bn £206.22bn £207.04bn £207.96bn £208.89bn £209.79bn
State education spending £0.02bn £0.02bn £0.02bn £0.02bn £0.02bn £0.02bn £0.02bn
Transport subsidy spending £25.15bn £25.25bn £25.34bn £25.44bn £25.55bn £25.67bn £25.78bn
Cost-of-living support payment £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Energy Bills Rebate £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Energy Price Guarantee subsidy £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Basic income £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Disability basic income £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Other public spending budget change £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Caseloads: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
State Pension 11,308k 11,208k 10,906k 10,812k 10,860k 10,908k 10,955k
Pension Credit 1,490k 1,489k 1,477k 1,455k 1,457k 1,454k 1,450k
Winter Fuel Payment 7,091k 7,008k 6,593k 6,509k 6,491k 6,377k 6,242k
Pension Age Winter Heating Payment (Scotland) 806k 807k 807k 805k 809k 812k 816k
Universal Credit 6,371k 6,379k 6,409k 6,419k 6,395k 6,387k 6,371k
Housing Benefit 1,254k 1,252k 1,254k 1,240k 1,244k 1,247k 1,249k
Council Tax Reduction 3,325k 3,348k 3,363k 3,385k 3,403k 3,422k 3,436k
Employment and Support Allowance (income-related) 187k 188k 188k 189k 190k 190k 191k
Employment and Support Allowance (contribution-based) 722k 724k 727k 730k 733k 737k 740k
Jobseeker's Allowance (income-based) 0k 0k 0k 0k 0k 0k 0k
Jobseeker's Allowance (contribution-based) 67k 67k 68k 68k 68k 69k 69k
Income Support 25k 0k 0k 0k 0k 0k 0k
Working Tax Credit 0k 0k 0k 0k 0k 0k 0k
Child Tax Credit 0k 0k 0k 0k 0k 0k 0k
Incapacity Benefit 0k 0k 0k 0k 0k 0k 0k
Personal Independence Payment 3,581k 3,595k 3,608k 3,623k 3,639k 3,655k 3,671k
Disability Living Allowance 1,296k 1,301k 1,306k 1,311k 1,317k 1,323k 1,329k
Attendance Allowance 1,701k 1,708k 1,714k 1,721k 1,729k 1,736k 1,744k
Carer's Allowance 1,038k 1,042k 1,046k 1,050k 1,055k 1,059k 1,064k
Carer Support Payment (Scotland) 81k 82k 82k 82k 83k 83k 83k
Carer's Allowance Supplement (Scotland) 0k 82k 82k 82k 83k 83k 83k
Severe Disablement Allowance 4k 4k 4k 4k 4k 4k 4k
Industrial Injuries Disablement Benefit 137k 138k 139k 139k 140k 140k 141k
Armed Forces Compensation Scheme 94k 94k 94k 95k 95k 95k 96k
War Widow's or Widower's Pension 0k 0k 0k 0k 0k 0k 0k
Child Benefit 8,136k 8,165k 8,185k 8,215k 8,249k 8,282k 8,314k
Scottish Child Payment 352k 354k 355k 356k 357k 358k 357k
Two Child Limit Payment (Scotland, counterfactual) 0k 0k 0k 0k 0k 0k 0k
Healthy Start vouchers 200k 201k 202k 203k 204k 204k 205k
Maternity Allowance 0k 0k 0k 0k 0k 0k 0k
Statutory Maternity Pay 334k 335k 336k 338k 339k 341k 342k
Statutory Paternity Pay 0k 0k 0k 0k 0k 0k 0k
Statutory Sick Pay 182k 183k 183k 184k 185k 186k 186k
Sure Start Maternity Grant 26k 26k 26k 27k 27k 27k 27k
Bereavement Support Payment 98k 98k 99k 99k 100k 100k 101k
Tax-Free Childcare 1,017k 1,028k 1,028k 1,033k 1,034k 1,038k 1,023k
Extended childcare entitlement 665k 671k 675k 677k 682k 686k 687k
Universal childcare entitlement 986k 989k 992k 997k 1,002k 1,013k 1,015k
Targeted childcare entitlement 119k 120k 120k 121k 121k 122k 121k
Care to Learn 0k 0k 0k 0k 0k 0k 0k
Childcare Grant 0k 0k 0k 0k 0k 0k 0k
Parents' Learning Allowance 98k 99k 99k 100k 100k 100k 101k
Adult Dependants' Grant 18k 18k 12k 13k 13k 13k 13k
Travel Grant 0k 0k 0k 0k 0k 0k 0k
Disabled Students' Allowance suppressed suppressed suppressed suppressed suppressed suppressed suppressed
16 to 19 Bursary Fund 0k 0k 0k 0k 0k 0k 0k
Cost-of-living support payment 0k 0k 0k 0k 0k 0k 0k
Energy Bills Rebate 0k 0k 0k 0k 0k 0k 0k
Energy Price Guarantee subsidy 0k 0k 0k 0k 0k 0k 0k
Basic income 0k 0k 0k 0k 0k 0k 0k
Disability basic income 0k 0k 0k 0k 0k 0k 0k
Government balance, each component counted once: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Government receipts, each component once £899.48bn £939.37bn £976.38bn £1,009.57bn £1,045.85bn £1,082.80bn £1,123.71bn
Government spending £536.68bn † £551.03bn † £557.37bn † £564.44bn † £573.00bn † £582.25bn † £591.42bn †
Government balance, each receipt once £362.80bn † £388.34bn † £419.01bn † £445.13bn † £472.85bn † £500.55bn † £532.29bn †
Benefits in household_benefits but not in gov_spending £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn £0.00bn
Model totals: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
gov_tax £902.61bn £942.50bn £979.51bn £1,012.70bn £1,048.98bn £1,085.93bn £1,126.84bn
household_tax £496.26bn £522.79bn £548.64bn £570.82bn £593.03bn £617.49bn £644.24bn
pre_budget_change_household_tax £488.43bn £514.67bn £540.29bn £561.78bn £583.75bn £607.95bn £634.34bn
gov_spending £536.68bn † £551.03bn † £557.37bn † £564.44bn † £573.00bn † £582.25bn † £591.42bn †
household_benefits £536.68bn † £551.03bn † £557.37bn † £564.44bn † £573.00bn † £582.25bn † £591.42bn †
gov_balance £365.93bn † £391.47bn † £422.14bn † £448.26bn † £475.98bn † £503.68bn † £535.42bn †
Components the model counts twice: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
corporate_sdlt, counted again inside expected_sdlt £3.13bn £3.13bn £3.13bn £3.13bn £3.13bn £3.13bn £3.13bn
Household income totals: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Household market income £1,657.06bn £1,719.25bn £1,771.68bn £1,821.99bn £1,891.04bn £1,949.88bn £2,021.87bn
Household net income £1,658.21bn † £1,706.73bn † £1,738.52bn † £1,772.66bn † £1,808.76bn † £1,850.41bn † £1,902.12bn †
Household net income (HBAI definition) £1,466.77bn £1,513.51bn £1,545.71bn £1,578.72bn £1,612.75bn £1,651.80bn £1,702.21bn
Population: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
People 69,514k 69,778k 70,036k 70,316k 70,626k 70,944k 71,249k
Benefit units 35,247k 35,381k 35,512k 35,654k 35,811k 35,972k 36,127k
Households 31,167k 31,285k 31,401k 31,526k 31,665k 31,808k 31,944k
Poverty rates: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Absolute poverty, before housing costs: everyone 15.9% 14.9% 15.5% 15.6% 15.7% 15.8% 15.7%
Absolute poverty, before housing costs: children 23.7% 20.8% 21.5% 21.4% 21.6% 21.7% 21.6%
Absolute poverty, before housing costs: working-age adults 13.8% 13.4% 14.0% 14.1% 14.2% 14.3% 14.2%
Absolute poverty, before housing costs: pensioners 13.7% 13.1% 13.2% 13.4% 13.5% 13.6% 13.6%
Absolute poverty, after housing costs: everyone 21.0% 20.6% 21.3% 21.5% 21.8% 22.1% 22.2%
Absolute poverty, after housing costs: children 31.9% 30.2% 30.9% 31.0% 31.6% 32.2% 32.4%
Absolute poverty, after housing costs: working-age adults 19.5% 19.4% 20.2% 20.4% 20.7% 21.0% 21.0%
Absolute poverty, after housing costs: pensioners 12.7% 12.5% 12.6% 12.9% 13.0% 13.1% 13.4%
Relative poverty, before housing costs: everyone 16.9% 16.4% 16.4% 16.5% 16.6% 16.7% 16.7%
Relative poverty, before housing costs: children 25.6% 23.5% 23.2% 23.2% 23.2% 23.4% 23.4%
Relative poverty, before housing costs: working-age adults 14.4% 14.4% 14.6% 14.8% 14.9% 15.1% 15.0%
Relative poverty, before housing costs: pensioners 14.8% 14.9% 14.3% 14.3% 14.2% 14.2% 14.4%
Relative poverty, after housing costs: everyone 21.6% 21.3% 21.4% 21.4% 21.7% 21.8% 21.9%
Relative poverty, after housing costs: children 32.9% 31.5% 31.1% 31.0% 31.4% 31.6% 31.9%
Relative poverty, after housing costs: working-age adults 19.9% 19.9% 20.3% 20.4% 20.6% 20.8% 20.9%
Relative poverty, after housing costs: pensioners 13.5% 13.1% 12.7% 12.8% 12.7% 12.7% 12.8%
People in poverty: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Absolute poverty, before housing costs: everyone 11,045k 10,411k 10,833k 10,935k 11,066k 11,197k 11,202k
Absolute poverty, before housing costs: children 3,557k 3,135k 3,255k 3,248k 3,293k 3,330k 3,327k
Absolute poverty, before housing costs: working-age adults 5,861k 5,727k 6,061k 6,158k 6,229k 6,306k 6,310k
Absolute poverty, before housing costs: pensioners 1,627k 1,549k 1,517k 1,529k 1,544k 1,561k 1,565k
Absolute poverty, after housing costs: everyone 14,620k 14,349k 14,885k 15,094k 15,416k 15,702k 15,848k
Absolute poverty, after housing costs: children 4,789k 4,551k 4,667k 4,708k 4,821k 4,929k 4,984k
Absolute poverty, after housing costs: working-age adults 8,313k 8,318k 8,769k 8,919k 9,107k 9,263k 9,317k
Absolute poverty, after housing costs: pensioners 1,518k 1,480k 1,449k 1,466k 1,487k 1,509k 1,547k
Relative poverty, before housing costs: everyone 11,756k 11,452k 11,517k 11,619k 11,702k 11,862k 11,905k
Relative poverty, before housing costs: children 3,838k 3,536k 3,509k 3,522k 3,543k 3,579k 3,597k
Relative poverty, before housing costs: working-age adults 6,152k 6,158k 6,359k 6,462k 6,535k 6,649k 6,647k
Relative poverty, before housing costs: pensioners 1,766k 1,758k 1,650k 1,634k 1,625k 1,634k 1,661k
Relative poverty, after housing costs: everyone 15,028k 14,841k 14,970k 15,067k 15,294k 15,471k 15,631k
Relative poverty, after housing costs: children 4,930k 4,744k 4,700k 4,703k 4,785k 4,832k 4,908k
Relative poverty, after housing costs: working-age adults 8,493k 8,548k 8,809k 8,906k 9,057k 9,182k 9,248k
Relative poverty, after housing costs: pensioners 1,605k 1,548k 1,460k 1,458k 1,452k 1,457k 1,475k
Inequality: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Gini coefficient, equivalised HBAI income before housing costs 0.3073 0.3050 0.3064 0.3071 0.3076 0.3082 0.3093
Mean household net income in each side's own deciles: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Decile 1: mean household_net_income per household £17,709 † £17,977 † £17,952 † £18,025 † £18,319 † £18,534 † £18,688 †
Decile 2: mean household_net_income per household £28,386 † £29,056 † £28,695 † £29,081 † £29,455 † £29,755 † £30,422 †
Decile 3: mean household_net_income per household £34,629 † £35,838 † £36,493 † £36,963 † £37,258 † £37,874 † £38,499 †
Decile 4: mean household_net_income per household £39,331 † £41,009 † £41,818 † £42,699 † £43,221 † £43,987 † £45,143 †
Decile 5: mean household_net_income per household £44,884 † £46,161 † £47,114 † £47,622 † £48,373 † £49,287 † £50,090 †
Decile 6: mean household_net_income per household £47,920 † £49,313 † £50,244 † £51,047 † £52,143 † £52,914 † £54,202 †
Decile 7: mean household_net_income per household £56,320 † £57,578 † £58,469 † £59,414 † £60,124 † £61,607 † £63,192 †
Decile 8: mean household_net_income per household £69,252 † £70,362 † £71,637 † £72,870 † £74,329 † £75,791 † £77,565 †
Decile 9: mean household_net_income per household £79,671 † £82,009 † £83,243 † £84,444 † £86,085 † £87,570 † £90,640 †
Decile 10: mean household_net_income per household £117,648 † £120,458 † £122,406 † £124,560 † £126,772 † £129,080 † £131,872 †
Standard reform costings (change in gov_balance): head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Raise basic rate by 1pp £6.22bn £6.50bn £6.71bn £6.90bn £7.11bn £7.35bn £7.62bn
Raise higher rate by 1pp £3.54bn £3.82bn £4.05bn £4.27bn £4.49bn £4.76bn £4.96bn
Raise personal allowance by ~800GBP/year £-3.83bn £-3.96bn £-4.03bn £-4.10bn £-4.20bn £-4.30bn £-2.02bn
Raise child benefit by 25GBP/week per additional child £-2.00bn £-1.76bn £-1.64bn £-1.54bn £-1.44bn £-1.34bn £-1.24bn
Reduce Universal Credit taper rate to 20% £-20.54bn £-21.10bn £-21.45bn £-21.88bn £-21.96bn £-22.33bn £-22.81bn
Raise Class 1 main employee NICs rate to 10% £11.06bn £11.51bn £11.83bn £12.14bn £12.47bn £12.81bn £13.29bn
Raise VAT standard rate by 2pp £25.01bn £25.68bn £26.29bn £26.92bn £27.58bn £28.26bn £28.95bn
Raise additional rate by 3pp £2.83bn £3.07bn £3.27bn £3.47bn £3.67bn £3.91bn £4.23bn
Raise the Universal Credit standard allowance by 10% £-3.04bn £-3.17bn £-3.25bn £-3.33bn £-3.37bn £-3.43bn £-3.47bn
Raise the State Pension by 10% £-8.92bn £-9.13bn £-9.03bn £-9.06bn £-9.26bn £-9.51bn £-9.78bn
Standard reforms: change in each reform's target: head levels
Measure (head) 2025-26 2026-27 2027-28 2028-29 2029-30 2030-31 2031-32
Raise basic rate by 1pp: change in income_tax £6.36bn £6.65bn £6.87bn £7.07bn £7.29bn £7.53bn £7.81bn
Raise higher rate by 1pp: change in income_tax £3.55bn £3.83bn £4.06bn £4.28bn £4.50bn £4.78bn £4.97bn
Raise personal allowance by ~800GBP/year: change in income_tax £-3.96bn £-4.11bn £-4.19bn £-4.27bn £-4.36bn £-4.47bn £-1.77bn
Raise child benefit by 25GBP/week per additional child: change in child_benefit £2.34bn £2.15bn £2.03bn £1.92bn £1.82bn £1.71bn £1.59bn
Reduce Universal Credit taper rate to 20%: change in universal_credit £20.53bn £21.09bn £21.44bn £21.87bn £21.95bn £22.32bn £22.80bn
Raise Class 1 main employee NICs rate to 10%: change in national_insurance £11.33bn £11.79bn £12.13bn £12.44bn £12.78bn £13.13bn £13.62bn
Raise VAT standard rate by 2pp: change in vat £25.01bn £25.68bn £26.29bn £26.92bn £27.58bn £28.26bn £28.95bn
Raise additional rate by 3pp: change in income_tax £2.83bn £3.07bn £3.27bn £3.47bn £3.67bn £3.91bn £4.23bn
Raise the Universal Credit standard allowance by 10%: change in universal_credit £3.04bn £3.17bn £3.25bn £3.32bn £3.38bn £3.43bn £3.48bn
Raise the State Pension by 10%: change in state_pension £12.25bn £12.71bn £12.83bn £13.02bn £13.41bn £13.80bn £14.21bn

MaxGhenis and others added 3 commits October 20, 2026 18:33
The personal allowance read the benefit unit's esa_income, which holds
awards other members claim in their own right and, where the household
head applies alone, the young couple's award. Read contributory ESA for
the applicant and partner, and claimant_or_partner_esa_income only where
the benefit unit's awards are the applicant's.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…g costs

Hypothesis found a family with no rent: gaining a housing costs element
lowers the UC work allowance (UC Regs 2013 reg 22), which changes the
award by more than the element, so the reduction changes. That is the
law, not a defect. The property now compares variants that both have a
housing costs element, and a new test executes the boundary.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…emium for one cared-for person

- R4-1: primary Class 1 falls on pay only, so it comes off pay in full;
  only income tax is shared between pay and miscellaneous income.
- R4-3: Part 5 miscellaneous income is unearned income (SSI 2021/249
  reg 57(1)(o); WSI 2013/3029 Sch 6 para 17). It counts in both
  countries, its share of the tax is disregarded in Wales (Sch 9
  para 4), and it leaves Scotland's UC earnings measure.
- R4-2: partners caring for the same severely disabled person count
  once for the carer premium (SSI 2021/249 Sch 1 para 5(3)-(4)), as in
  carer_premium.
- R4-4: the pension deduction rate's docs say the Welsh and Scottish
  UC route now exists.
- Nits: CSP test header, adult premium docs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant