Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/2439.fixed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Fixed Universal Credit capital assessment so reported financial savings do not suppress countable property, with assessment-year sale-expense and secured-debt valuation and property allocation independent of financial reports. Retained the inherited residual financial convention, including subtraction of complete overrides from the financial pool, and company substitution after ordinary-source overrides, and documented the legacy pension-proxy limitation. Complete overrides consume their owners' disregarded company holdings once. Override floors and separate holding deductions share one household corporate-wealth budget proportionally, preventing inconsistent holdings from consuming ordinary savings. Bounded each holding before that budget to isolate negative and infinite inputs from other units' capital.
6 changes: 4 additions & 2 deletions policyengine_uk/data/uprating_indices.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,10 @@ gov.economic_assumptions.yoy_growth.obr.per_capita.gdp:
- mortgage_capital_repayment
- net_financial_wealth
- non_residential_property_value
- non_residential_property_secured_debt
- other_investment_income
- other_residential_property_value
- other_residential_property_secured_debt
# Purchase prices a dataset may impute; uprated like the property stocks.
- additional_residential_property_purchased
- non_residential_property_purchased
Expand All @@ -123,8 +125,8 @@ gov.economic_assumptions.yoy_growth.obr.per_capita.gdp:
- savings
- savings_interest_income
- sublet_income
# A formula of benunit_reported_capital; listed so a dataset that stores it
# directly is uprated like the input.
# An explicit complete UC override stored in a dataset is uprated like the
# financial input; its default no longer derives from that input.
- uc_reported_capital
gov.economic_assumptions.yoy_growth.obr.per_capita.mixed_income:
- self_employment_income
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,11 @@ description: >
Lifetime ISA at its surrender value: regulation 49(1) values capital at its
current market or surrender value, and ADM H1659 counts a Lifetime ISA at
75% of its value under 60 and in full from 60. Lifetime ISAs exist from 6
April 2017, and the list is empty before then.
April 2017, and the list is empty before then. A nonnegative financial
observation (benunit_reported_capital) replaces these covered financial
sources to avoid counting a Lifetime ISA twice. A complete UC override
replaces them together with property and the household financial proxy,
before the existing regulation 77 company substitution.
metadata:
label: Universal Credit person-level capital sources
period: year
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
description: >
Proportion deducted from current property market value where sale entails
expenses, before subtracting secured encumbrances (regulation 49). Broad
household property inputs are assumed to incur sale expenses. Cash financial
proxies do not receive this deduction.
values:
2013-04-29: 0.1
metadata:
label: Universal Credit property sale expense deduction
unit: /1
period: year
reference:
- title: The Universal Credit Regulations 2013 reg. 49(1)
href: https://www.legislation.gov.uk/uksi/2013/376/regulation/49/1
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
description: >
Household property amounts valued for Universal Credit in the assessment year
after sale expenses and property-specific secured debt, floored separately
at zero. The main home is excluded under Schedule 10 paragraph 1. The broad
other-property inputs are assumed to have sale expenses and no Schedule 10
disregard; reliable asset-level disregard and debt flags are unavailable,
so debt defaults to zero unless supplied explicitly. These approximations
do not imply all second homes are legally countable. Each net amount is
allocated across ALL claimant/partner adults in the household in proportion
to their number in each benefit unit, including units with financial reports,
complete overrides and no UC receipt. A complete override consumes its share.
This is an assumption about unobserved ownership, not a statutory rule.
metadata:
label: Universal Credit countable property sources
period: year
unit: list
reference:
- title: The Universal Credit Regulations 2013 reg. 49(1)
href: https://www.legislation.gov.uk/uksi/2013/376/regulation/49/1
- title: The Universal Credit Regulations 2013 Schedule 10
href: https://www.legislation.gov.uk/uksi/2013/376/schedule/10
values:
2013-04-29:
- uc_other_residential_property_capital
- uc_non_residential_property_capital
Original file line number Diff line number Diff line change
@@ -1,49 +1,44 @@
description: >
Model variables currently mapped to countable Universal Credit capital.
Regulation 46 takes the whole of a person's capital into account unless it is
treated as income or disregarded under regulation 48 and Schedule 10. The
current mappings are `savings` for liquid capital,
`other_residential_property_value` for residential property other than the
home, `non_residential_property_value` for other land and premises, and
`corporate_wealth` for shares and similar investment assets. `main_residence_value`
is excluded because Schedule 10 paragraph 1 disregards premises occupied as
the person's home. `private_pension_wealth` is excluded because Schedule 10
paragraph 10 disregards the value of any right to receive a pension under an
occupational or personal pension scheme (or any other scheme registered under
section 153 of the Finance Act 2004; paragraph 10 of Schedule 10 to the
Northern Ireland regulations makes the same disregard); pension income
actually drawn counts as unearned income instead. Other Schedule 10 disregards within these broad asset
classes are not yet split out separately. Where only household-level capital
is available for a multi-benunit household, the model uses a household-wide
adult-share proxy for residual capital because the dataset does not identify
which adults hold the beneficial interest in each capital asset. The
denominator is all unreported adults in the household, including adults in
benunits that are not themselves UC claimants. That proxy is a data
approximation, not a legislated allocation rule. Regulation 47 is cited only
as related context on jointly held capital. If some benunits provide
`uc_reported_capital` (by default the benefit unit's recorded capital,
`benunit_reported_capital`), the proxy is applied only to the residual
household capital for benunits that remain unreported.
Household financial proxies for Universal Credit: savings and corporate
financial wealth. A nonnegative benunit_reported_capital replaces these
financial proxies and covered person-level sources, including a Lifetime ISA.
Each benefit unit's complete uc_reported_capital override, otherwise its
observed financial total, reduces this financial pool. Subtracting complete
overrides retains the inherited allocation convention. An override precedes
regulation 77 company substitution and includes its claimant's and partner's
holdings: consume at least their disregarded holdings after applying one
household corporate_wealth budget without removing them again from the pool.
First clip each person's holding to [0, max(0, corporate_wealth)], with
positive infinity mapped to the upper bound and negative infinity to zero.
If total bounded holdings exceed nonnegative corporate_wealth, scale each
person's bounded holding proportionally before override floors and separate
pool deductions.
This is a defensive rule for inconsistent inputs, not a statutory determination;
regulation 77 substitution in the owner's own assessment is unchanged.
The residual is allocated by
claimant/partner counts to benefit units with neither a financial observation
nor a complete override,
including units that do not receive UC. This allocation is an assumption
about unobserved ownership, not a statutory rule. Countable property is
valued and shared independently through property_sources across ALL
claimant/partner adults, with complete-override units consuming their shares.
Main-home property and the named private_pension_wealth input are excluded
under Schedule 10 paragraphs 1 and 10. For missing-report households, the
legacy corporate_wealth proxy can still contain non-DB pension wealth that
is not separately identified and removed. Asset-specific Schedule 10 disregards
within these broad financial classes are not separately observed.
metadata:
label: Universal Credit countable capital sources
label: Universal Credit financial capital proxy sources
period: year
unit: list
reference:
- title: The Universal Credit Regulations 2013 reg. 46(1)
href: https://www.legislation.gov.uk/uksi/2013/376/regulation/46/1
- title: The Universal Credit Regulations 2013 reg. 47
href: https://www.legislation.gov.uk/uksi/2013/376/regulation/47
- title: The Universal Credit Regulations 2013 reg. 48(1)
href: https://www.legislation.gov.uk/uksi/2013/376/regulation/48/1
- title: The Universal Credit Regulations 2013 Schedule 10 para. 1
href: https://www.legislation.gov.uk/uksi/2013/376/schedule/10/paragraph/1
- title: The Universal Credit Regulations 2013 Schedule 10 para. 10
href: https://www.legislation.gov.uk/uksi/2013/376/schedule/10/paragraph/10
- title: The Universal Credit Regulations (Northern Ireland) 2016 Schedule 10 para. 10
href: https://www.legislation.gov.uk/nisr/2016/216/schedule/10/paragraph/10
- title: The Universal Credit Regulations 2013 Schedule 10
href: https://www.legislation.gov.uk/uksi/2013/376/schedule/10
values:
2013-04-29:
- savings
- other_residential_property_value
- non_residential_property_value
- corporate_wealth
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,9 @@
# Every case below has income under the personal allowance, so no income tax
# or National Insurance, and no housing, child or disability element.
#
# Property values are taken as UC capital as entered. Reg. 49(1) would first
# deduct 10% for sale costs and any secured debt from a property's market
# value; the model does not yet (#1960). So "£10,000 of let property" below
# means £10,000 of assessable capital, for example a property with a market
# value of £11,111.11 and no mortgage.
# Reg. 49(1): property market value less 10% sale expenses and then secured
# debt, floored at zero. The let-property cases assume sale expenses, no
# secured debt and no Schedule 10 disregard, so £10,000 is assessed at £9,000.

- name: Savings interest, dividends and rent below £6,000 of capital leave the award unchanged
period: 2026
Expand Down Expand Up @@ -66,12 +64,13 @@
savings: 0
other_residential_property_value: 10_000
output:
# Tariff income on £10,000 of capital: (10,000 - 6,000) / 250 = 16 steps
# x £4.35 = £69.60 a month, £835.20 a year. UC = 5,098.80 - 835.20 =
# £4,263.60.
uc_tariff_income: 835.20
uc_unearned_income: 835.20
universal_credit: 4_263.60
# £10,000 less 10% sale expenses = £9,000. Tariff: (9,000 - 6,000)
# / 250 = 12 steps x £4.35 = £52.20 a month, £626.40 a year.
# UC = 5,098.80 - 626.40 = £4,472.40.
uc_assessable_capital: 9_000
uc_tariff_income: 626.40
uc_unearned_income: 626.40
universal_credit: 4_472.40

- name: Northern Ireland treats rent and interest from capital the same way
period: 2026
Expand All @@ -92,10 +91,12 @@
savings: 0
other_residential_property_value: 10_000
output:
# UC Regs (NI) 2016 regs. 66(1) and 72 match the GB text on these points.
uc_tariff_income: 835.20
uc_unearned_income: 835.20
universal_credit: 4_263.60
# UC Regs (NI) 2016 regs. 49, 66(1) and 72 match GB on these points:
# £9,000 capital after sale expenses, 12 steps, £626.40 annual tariff.
uc_assessable_capital: 9_000
uc_tariff_income: 626.40
uc_unearned_income: 626.40
universal_credit: 4_472.40

- name: Rent from a lodger in the home does not reduce the award
period: 2026
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -221,11 +221,12 @@
savings: 0
other_residential_property_value: 10_000
output:
# Tariff income on £10,000 of capital in let property (taken as entered;
# reg. 49 valuation is #1960): (10,000 - 6,000) / 250 = 16 steps x £4.35
# x 12 = £835.20. Neither the rent nor the interest is added on top of it.
uc_tariff_income: 835.20
uc_unearned_income: 835.20
# Reg. 49: £10,000 property less 10% sale expenses, with no debt,
# is £9,000. Tariff: (9,000 - 6,000) / 250 = 12 steps x £4.35 x 12
# = £626.40. Neither the rent nor the interest is added on top of it.
uc_assessable_capital: 9_000
uc_tariff_income: 626.40
uc_unearned_income: 626.40

- name: Reported capital drives tariff income for multi-benunit households
period: 2025
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@
uc_assessable_capital: [20_000, 20_000]
is_uc_eligible: [false, false]

- name: Mixed reported and unreported benunits use residual household capital
- name: Benefit units with and without financial observations use residual household capital
period: 2025
absolute_error_margin: 0
input:
Expand All @@ -163,7 +163,7 @@
benunits:
benunit_1:
members: person_1
uc_reported_capital: 12_000
benunit_reported_capital: 12_000
benunit_2:
members: person_2
households:
Expand Down Expand Up @@ -259,7 +259,8 @@
members: person
other_residential_property_value: 50_000
output:
uc_assessable_capital: 50_000
# Reg. 49: £50,000 market value less 10% sale expenses, with no debt.
uc_assessable_capital: 45_000
is_uc_eligible: false

- name: Countable non-residential property can push capital over the upper threshold
Expand All @@ -277,7 +278,8 @@
members: person
non_residential_property_value: 50_000
output:
uc_assessable_capital: 50_000
# Reg. 49: £50,000 market value less 10% sale expenses, with no debt.
uc_assessable_capital: 45_000
is_uc_eligible: false

- name: Countable corporate wealth can push capital over the upper threshold
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""The household capital proxy conserves residual capital within each household."""
"""The financial proxy conserves residual capital after financial observations."""

import numpy as np
import pytest
Expand Down Expand Up @@ -59,7 +59,9 @@ def household_capital_situations(draw):
unreported_indices.append(len(benunits))
benunits[unit_id] = {
"members": members,
"uc_reported_capital": {2025: reported_capital if has_reported else -1},
"benunit_reported_capital": {
2025: reported_capital if has_reported else -1
},
}
household_members.extend(members)
households[f"household_{household_index}"] = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@
# Previously [0, 36,000]; each now receives 36,000 * 1/2 = 18,000.
uc_assessable_capital: [18_000, 18_000]

- name: Reported capital leaves a residual split between unreported claimants.
- name: Reported financial capital leaves a residual split between unreported claimants.
period: 2025
input:
people:
Expand All @@ -112,7 +112,7 @@
benunits:
reported:
members: [reported_parent, qualifying_young_person]
uc_reported_capital: 8_000
benunit_reported_capital: 8_000
young:
members: [young_claimant]
couple:
Expand All @@ -122,7 +122,7 @@
members: [reported_parent, qualifying_young_person, young_claimant, older_claimant, partner]
savings: 32_000
output:
household_uc_reported_capital: 8_000
household_uc_reported_financial_capital: 8_000
household_uc_unreported_claimants: 3
# 32,000 - 8,000 = 24,000 residual. Shares are 24,000 / 3 = 8,000
# and 24,000 * 2/3 = 16,000. Previously [8,000, 0, 24,000].
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,9 @@
members: [parent_1, parent_2, adult_child]
savings: 9_000
output:
# The complete override replaces the child's LISA and consumes £2,000
# from the household financial pool under the inherited convention.
# The unreported parents receive the remaining £7,000 financial proxy.
uc_assessable_capital: [7_000, 2_000]

- name: An adult child's Lifetime ISA counts in the child's Housing Benefit benunit only
Expand Down
Loading
Loading