Skip to content
Open
1 change: 1 addition & 0 deletions changelog.d/uc-pc-qyp-sixteen-route.fixed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- Counted a 16-year-old outside education as a Universal Credit and Pension Credit qualifying young person until the 1 September following their 16th birthday (UC Regs 2013 reg. 5(1)(a); SPC Regs 2002 reg. 4A(1)(a)), in any year that starts before that date.
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@
output:
is_uc_work_allowance_eligible: false

- name: Case 6, a nonqualifying 16-year-old does not create a work allowance.
- name: Case 6, a 16-year-old outside education past the reg. 5(1)(a) route does not create a work allowance.
period: 2025
input:
people:
Expand All @@ -91,13 +91,33 @@
age: 16
is_in_non_advanced_education: false
is_in_approved_training: false
is_before_first_september_following_16th_birthday: false
uc_limited_capability_for_WRA: false
benunits:
benunit:
members: [person1, person2]
output:
is_uc_work_allowance_eligible: false

- name: Case 6a, a 16-year-old outside education in the reg. 5(1)(a) route creates a work allowance.
period: 2025
input:
people:
person1:
age: 40
is_parent: true
uc_limited_capability_for_WRA: false
person2:
age: 16
is_in_non_advanced_education: false
is_in_approved_training: false
uc_limited_capability_for_WRA: false
benunits:
benunit:
members: [person1, person2]
output:
is_uc_work_allowance_eligible: true

- name: Case 7, a looked-after child does not create a work allowance.
period: 2025
input:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,335 @@
# UC Regs 2013 reg. 5(1)(a) and SPC Regs 2002 reg. 4A(1)(a): a person who has
# reached 16 is a qualifying young person "up to, but not including, the 1st
# September following" their 16th birthday, whatever their education. The
# model counts the route for a year that starts (6 April) before that date.
# Ages are ages on 6 October; with no date of birth, a whole age places the
# birthday on 6 April (months_since_last_birthday 6).

- name: A 16-year-old outside education is a qualifying young person for UC and Pension Credit.
# 16th birthday 6 April 2026; the route runs to 31 August 2026.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: NOT_IN_EDUCATION
benunits:
benunit:
members: [parent, young_person]
output:
is_in_non_advanced_education: [false, false]
is_before_first_september_following_16th_birthday: [false, true]
is_qualifying_young_person_for_universal_credit: [false, true]
is_child_or_qualifying_young_person_for_universal_credit: [false, true]
is_qualifying_young_person_for_pension_credit: [false, true]
is_child_or_qualifying_young_person_for_pension_credit: [false, true]

- name: A 16-year-old apprentice qualifies through reg. 5(1)(a), which has no contract-of-employment exclusion.
# Reg. 5(3) excludes training under a contract of employment from the
# education route (b) only.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: POST_SECONDARY
is_apprentice: true
benunits:
benunit:
members: [parent, young_person]
output:
is_in_non_advanced_education: [false, false]
is_qualifying_young_person_for_universal_credit: [false, true]
is_qualifying_young_person_for_pension_credit: [false, true]

- name: A 16-year-old outside education whose route has ended for the year is not a qualifying young person.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: NOT_IN_EDUCATION
is_before_first_september_following_16th_birthday: false
benunits:
benunit:
members: [parent, young_person]
output:
is_qualifying_young_person_for_universal_credit: [false, false]
is_child_or_qualifying_young_person_for_universal_credit: [false, false]
is_qualifying_young_person_for_pension_credit: [false, false]
is_child_or_qualifying_young_person_for_pension_credit: [false, false]

- name: The education route still applies after the 1 September following the 16th birthday.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: UPPER_SECONDARY
is_before_first_september_following_16th_birthday: false
benunits:
benunit:
members: [parent, young_person]
output:
is_qualifying_young_person_for_universal_credit: [false, true]
is_qualifying_young_person_for_pension_credit: [false, true]

- name: A 17-year-old with a 16th birthday on 15 September 2025 is in the route until 31 August 2026.
# Born 15 September 2009: aged 17 on 6 October 2026. The 1 September
# following the 16th birthday is 1 September 2026, after 6 April 2026.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 17
date_of_birth: 20090915
current_education: NOT_IN_EDUCATION
benunits:
benunit:
members: [parent, young_person]
output:
is_before_first_september_following_16th_birthday: [false, true]
is_qualifying_young_person_for_universal_credit: [false, true]
is_qualifying_young_person_for_pension_credit: [false, true]

- name: A 16th birthday on 1 September runs the route to the 17th birthday.
# Born 1 September 2009: the 1 September following the 16th birthday (1
# September 2025) is 1 September 2026, after 6 April 2026.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 17
date_of_birth: 20090901
current_education: NOT_IN_EDUCATION
benunits:
benunit:
members: [parent, young_person]
output:
is_before_first_september_following_16th_birthday: [false, true]
is_qualifying_young_person_for_universal_credit: [false, true]

- name: A 16th birthday on 31 August ends the route that day.
# Born 31 August 2009: the route ran only on 31 August 2025, before the
# 2026-27 fiscal year starts.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 17
date_of_birth: 20090831
current_education: NOT_IN_EDUCATION
benunits:
benunit:
members: [parent, young_person]
output:
is_before_first_september_following_16th_birthday: [false, false]
is_qualifying_young_person_for_universal_credit: [false, false]
is_qualifying_young_person_for_pension_credit: [false, false]

- name: A 16-year-old receiving Universal Credit in their own right is not a qualifying young person.
# Reg. 5(5) and reg. 4A(5) apply to both routes.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: NOT_IN_EDUCATION
receives_benefits_in_own_right: true
benunits:
benunit:
members: [parent, young_person]
output:
is_qualifying_young_person_for_universal_credit: [false, false]
is_qualifying_young_person_for_pension_credit: [false, false]

- name: A looked-after 16-year-old is a qualifying young person but not the family's.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: NOT_IN_EDUCATION
is_looked_after_by_local_authority: true
benunits:
benunit:
members: [parent, young_person]
output:
is_qualifying_young_person_for_universal_credit: [false, true]
is_child_or_qualifying_young_person_for_universal_credit: [false, false]
is_qualifying_young_person_for_pension_credit: [false, true]
is_child_or_qualifying_young_person_for_pension_credit: [false, false]

- name: Neither 15- nor 18-year-olds outside education are qualifying young persons.
# A 15-year-old is a child (Welfare Reform Act 2012 s. 40); an 18-year-old's
# 1 September following their 16th birthday has passed.
period: 2026
input:
people:
parent:
age: 45
is_parent: true
child:
age: 15
current_education: NOT_IN_EDUCATION
adult_child:
age: 18
current_education: NOT_IN_EDUCATION
benunits:
benunit:
members: [parent, child, adult_child]
output:
is_before_first_september_following_16th_birthday: [false, true, false]
is_qualifying_young_person_for_universal_credit: [false, false, false]
is_child_or_qualifying_young_person_for_universal_credit: [false, true, false]
is_qualifying_young_person_for_pension_credit: [false, false, false]

- name: A lone parent with a 16-year-old outside education gets the child element and a work allowance.
# 2026-27: born 6 April 2010, before 6 April 2017, so the higher first-child
# amount: GBP 351.88 a month x 12 = GBP 4,222.56. Responsibility for a
# qualifying young person gives the work allowance (reg. 22(1)(b)): no
# housing element, so GBP 710 a month x 12 = GBP 8,520. Maximum amount: the
# single 25-or-over standard allowance GBP 424.90 x 12 = GBP 5,098.80, plus
# the child element, = GBP 9,321.36.
period: 2026
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: NOT_IN_EDUCATION
benunits:
benunit:
members: [parent, young_person]
households:
household:
members: [parent, young_person]
output:
uc_individual_child_element: [0, 4_222.56]
uc_child_element: 4_222.56
is_responsible_for_child_or_qualifying_young_person_for_universal_credit: true
is_uc_work_allowance_eligible: true
uc_work_allowance: 8_520
uc_maximum_amount: 9_321.36
is_uc_benefit_cap_single_claimant_rate: false

- name: A pensioner with a 16-year-old outside education gets the Pension Credit child addition.
# 2026-27: born 6 April 2010, before 6 April 2017, so the first child
# addition (Sch. IIA para. 10): GBP 81.07 a week x 52 = GBP 4,215.64. The
# single standard minimum guarantee is GBP 238.00 x 52 = GBP 12,376, so the
# minimum guarantee is GBP 16,591.64.
period: 2026
input:
people:
pensioner:
age: 70
is_SP_age: true
young_person:
age: 16
current_education: NOT_IN_EDUCATION
benunits:
benunit:
members: [pensioner, young_person]
households:
household:
members: [pensioner, young_person]
output:
child_minimum_guarantee_addition: 4_215.64
standard_minimum_guarantee: 12_376
minimum_guarantee: 16_591.64

- name: In 2025-26 the 16-year-old counts first under the two-child limit, and the youngest child loses the element.
# 2025-26: the 16-year-old (born 6 April 2009) is a qualifying young person
# through reg. 5(1)(a), so the eldest of three. The higher first-child
# amount: GBP 339 a month x 12 = GBP 4,068. The 7-year-old (born 6 April
# 2018): GBP 292.81 x 12 = GBP 3,513.72. The 5-year-old (born 6 April 2020,
# after 6 April 2017) is the third child, so no element (reg. 24A). Total
# GBP 7,581.72.
period: 2025
input:
people:
parent:
age: 40
is_parent: true
young_person:
age: 16
current_education: NOT_IN_EDUCATION
child_7:
age: 7
child_5:
age: 5
benunits:
benunit:
members: [parent, young_person, child_7, child_5]
households:
household:
members: [parent, young_person, child_7, child_5]
output:
uc_child_index: [-1, 1, 2, 3]
uc_individual_child_element: [0, 4_068, 3_513.72, 0]
uc_is_child_limit_affected: [false, false, false, true]
uc_child_element: 7_581.72

- name: A date of birth given for one person leaves another's age-placed date unchanged.
# The 17-year-old's date of birth (15 September 2009) puts them in the
# route; the 16-year-old elsewhere has none, so age places their birthday
# on 6 April 2010 and they are in it too.
period: 2026
input:
people:
parent_1:
age: 34
is_parent: true
young_person_17:
age: 17
date_of_birth: 20090915
current_education: NOT_IN_EDUCATION
parent_2:
age: 40
is_parent: true
young_person_16:
age: 16
current_education: NOT_IN_EDUCATION
benunits:
benunit_1:
members: [parent_1, young_person_17]
benunit_2:
members: [parent_2, young_person_16]
households:
household_1:
members: [parent_1, young_person_17]
household_2:
members: [parent_2, young_person_16]
output:
is_before_first_september_following_16th_birthday: [false, true, false, true]
is_qualifying_young_person_for_universal_credit: [false, true, false, true]
is_qualifying_young_person_for_pension_credit: [false, true, false, true]
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
output:
universal_credit: 9_321.36

- name: A 17-year-old outside education is not a UC young person, so their pay does not count
- name: A 17-year-old outside education and past the 1 September after their 16th birthday is not a UC young person, so their pay does not count
period: 2026
absolute_error_margin: 1
input:
Expand Down
Loading
Loading