Skip to content

Scottish/Welsh council tax ~20% above devolved budget figures; WAS owned_land imputation unstable across releases #448

Open

Description

@vahid-ahmadi

Two data-quality issues surfaced while auditing the geographic results of the council-tax-to-LVT paper (PolicyEngine/uk-lvt-paper). Both materially distort nation-level distributional results.

1. Scottish and Welsh council tax overstated

On enhanced_frs_2023_24.h5@1.55.10 (2026, policyengine-uk 2.88.20), modelled council_tax aggregates by nation:

Nation Model gross Model net Official comparator
England £53.8bn £50.5bn ≈£45.6bn requirement 2025–26 (within a few % once uprated to 2026–27)
Scotland £4.8bn £4.0bn ≈£3.1–3.4bn
Wales £3.3bn £3.1bn ≈£2.4–2.6bn

The same pattern holds on enhanced_frs_2024_25.h5 (Scotland £4.3bn gross). Scottish and Welsh liabilities run roughly 20–30% above devolved budget figures while England is close. Average modelled net bill in Scotland (~£1,458) is implausibly near England's (~£1,872) given Scottish band D (~£1,421 in 2024–25, ex-water) and Scotland's band distribution being skewed to A–C. Possible causes worth checking: band-rate averages for Scotland including water/sewerage charges, or the VOA/SAA band calibration weighting.

Downstream effect: any reform crediting households with their abolished council tax (e.g. an LVT swap) overstates Scottish/Welsh gains by £200–300/household/year — enough to flip marginal constituencies from loss to gain.

2. owned_land (WAS direct land holdings) is large and unstable across releases

household_land_value = property_wealth × λ_r + owned_land. The owned_land component:

Release UK total Wales avg/hh Wales share of Welsh household land Scotland share
enhanced_frs_2023_24@1.55.10 £0.67tn £53,548 43.6% 27.6%
enhanced_frs_2024_25 (local) £0.46tn £11,680 9.8% 31.7%

A 4.6× swing in average Welsh direct landholding between adjacent releases points to a handful of large WAS farm/estate records being imputed into different donors each time. At £0.46–0.67tn this is 9–12% of household land — not noise. Suggest: winsorising the WAS land-value donor variable, imputing it separately from the main wealth block, or at least a regression test on nation-level owned_land aggregates.

Related: PolicyEngine/policyengine-uk#1808 (NI land intensity 0.673). Context: PolicyEngine/uk-lvt-paper#4.

🤖 Generated with Claude Code

Activity

  1. MaxGhenis commented on Aug 23, 2026

    @MaxGhenis
    Contributor

    Re-measured on the live line at 2025 (enhanced_frs_2024_25.h5 @ v1.56.14, microcosm#733's parity reference; policyengine-uk 2.91.0 @ c93e1a05). The two issues separate: the council-tax overstatement is much smaller on the live 2024-25 line against current official comparators; under-simulated Council Tax Reduction accounts for a material Scottish residual, while its Welsh contribution is unquantified (no CTRS-cost comparator pinned); the owned_land instability is a sparsity problem, excluded from microcosm's input-mass validation but still inside an active land-value target.

    1. Council tax

    Model vs the nearest official 2025-26 figures (household level, 2025). The three comparators are different measures — a requirement, an amount billed net of CTR, and a collectable amount ex-CTRS — so read the gaps as diagnostics, not one series:

    nation gross CTR net official 2025-26 net gap
    England £42.9bn £2.0bn £40.9bn council tax requirement £44.1bn (MHCLG) −7.2%
    Scotland £3.80bn £0.25bn £3.56bn net billed £3.389bn, after CTR and excluding water and sewerage (gov.scot) +4.9%
    Wales £2.62bn £0.01bn £2.61bn collectable ex-CTRS £2.524bn (gov.wales) +3.4%

    Against the incumbent's own OBR Table 4.1 targets at 2025 (England £44.1bn, Scotland £3.05bn, Wales £2.40bn, net of CTR) the same model runs −7% / +17% / +9%, so the comparator moves Scotland by 11.6 points; which series to calibrate to is a decision to make once. Average gross bills are £1,640 / £1,405 / £1,657, and I could not reproduce the issue's band-weighting hypothesis in a national band-share check (the artifact's shares match the published stock). Water is not the mechanism either: both builds net Scottish water and sewerage out of ctannual before imputing (uk-data frs.py:823-884; microcosm frs_council_tax.py:71-103); council_tax is reported where the FRS has it (about a quarter of households, per the build's comment) and a region × band × single-adult cell mean otherwise.

    CTR, on two levels:

    • claims_all_entitled_benefits.py:13-28 tests its seven reported-benefit columns with .sum() < 1 over the whole array, a simulation-wide scalar: on this artifact it is False for every benefit unit (0 of 61,223, though 51,855 report none of the seven by the formula's own test). would_claim_council_tax_reduction is then reported-CTR only (would_claim_council_tax_reduction.py:4-16), and the same gate sits under housing benefit and the legacy credits. The code comment describes a simulation-level switch, so the intended dataset behaviour needs deciding before it is "fixed".
    • For the reporters that remain, the simulated devolved schemes (simulated_council_tax_reduction_benunit.py:17-94) zero most of them: of 341 real Welsh reporter records routed to the Welsh formula, 102 fail on imputed household savings > £16k and 159 elsewhere in the formula (119 on the applicable-income taper, 40 with no eligible liability recorded); Scotland 98 + 161 of 451. The 80 Welsh records that keep an award carry a mean weight of 148 against 614 for the zeroed ones. Modelled CTR lands at £249m for Scotland (2024-25 outturn ≈ £389m; 2025-26 not yet pinned) and £10m for Wales (no CTRS-cost comparator pinned). England already runs below its requirement and has no pinned scheme-cost comparator; the measured CTR shortfall is Scotland's, so the net council-tax overstatement is a devolved-nation story, not a UK one.

    Targets: microcosm's surface binds obr.council_tax (UK, £50.9bn, council_tax_less_benefit); obr.council_tax_england/scotland/wales are declared but held. Not for lack of facts: chronicle carries the OBR EFO March 2026 Table 4.1 nation rows (FY2025-26 England £44.12bn / Scotland £3.05bn / Wales £2.40bn — the incumbent's exact values) at UK geography K02000001, while microcosm's reference generator pins nation geography ids onto those three ids, so they match nothing. Activating them is a generator pin change (plus the source-projection policy the UK id already carries), registered for adjudication in microcosm#736; a non-OBR basis (the collection statistics above) would be separate chronicle packages.

    2. owned_land

    nation total (v1.56.14) records with owned_land > 0 share held by the 10 largest records share of nation household_land_value
    England £326bn 348 80% 7%
    Scotland £62bn 16 100% 22%
    Wales £18bn 56 97% 9%
    NI £15bn 336 68% 27%

    UK £421bn on v1.56.14 and £418bn on v1.56.16 (the stored draws are near-identical across the two releases: 16 of 52,846 household records differ). With sixteen Scottish records carrying the whole Scottish total, a re-draw can move nation aggregates sharply: microcosm#733 reports the adjacent-seed swing at 2024-25 as 71.4% national / 112.9% max-region (37.7% / 2.41× London per the register's earlier receipt, which #733 dates to 2023-24; not independently re-run here) and renewed the input-mass exclusion to 2026-09-20 (input_mass_reviewed_exclusions.json:13-19). Mechanics: the incumbent imputes owned_land (WAS DVLUKValR8_sum, imputations/wealth.py:34-65) as one of eleven QRF outputs and passes no seed (wealth.py:272-312, utils/qrf.py:28-40); the pinned microimpute 1.8.1 then falls back to a fixed default seed, so the release-to-release swing in this issue comes from changed inputs and row order rather than an unseeded draw. microcosm draws owned_land first in its regime-gated QRF chain, then property_wealth, with declared seed 0 and donor-support clipping only (was_wealth.py:78, :194-201, :350-364, :397-398, :481-496).

    The exclusion covers the input-mass gate only. household_land_value = property wealth × regional intensity + owned_land (household_land_value.py:14-56), and ons.land.household_land_value (£4.56tn) is an active target bound to that variable (uk_national_targets.json:9198-9217, target_reference_membership.json:7358-7369), so the draw would enter a calibration run on the surface as currently bound.

    Suggested next steps

    1. Decide the intended microsimulation behaviour of claims_all_entitled_benefits (per benefit unit vs the current simulation-wide switch), encode it explicitly, and re-measure CTR, housing benefit and the legacy credits after.
    2. CTR's capital gate uses imputed WAS savings: validate that proxy or add a reported-capital route; this is separate from the pension-wealth issue on UC caseload runs ~40% below administrative counts, capping aggregate reform estimates #452.
    3. Decide the nation-level council-tax basis once: the OBR Table 4.1 ids need only their geography pin re-pointed to bind (microcosm#736); the collection statistics (Scottish net billed and CTR, Welsh collectable, MHCLG requirement) would be new chronicle packages on a different definition.
    4. owned_land: set a nation-level stability and fidelity acceptance test, then compare the candidates (winsorised donor, a separate imputation outside the wealth chain, expected value instead of one draw) against it; add the regression test this issue asked for; and decide explicitly whether household_land_value stays active while owned_land is excluded (hold the reference, or bind property wealth × intensity only) — microcosm#736's registry is the place for that decision. The exclusion is a bridge; it expires 2026-09-20.

    Basis: council-tax comparators are 2025-26 statistics on three different definitions; CTR outturns are 2024-25 where 2025-26 is unpublished; all model numbers are on the incumbent's artifacts, aggregates only.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions