Skip to content

Commit 9e3fd65

Browse files
MaxGhenisclaude
andauthored
Revert SCP rate increase and refactor baby bonus to £40 total (#1484)
* Revert "feat: add Scottish Child Payment 2026-27 rate increase (#1483)" This reverts commit dac23c7. * Revert SCP rate increase and refactor baby bonus to use £40 total - Revert PR #1483 (SCP 2026-27 rate increase not yet law) - Replace baby_bonus.yaml with under_one.yaml (£40/week total parameter) - Reform now uses max(under_one, base_rate) for under-1s The Scottish Budget says "£40 a week total" not a fixed bonus amount. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
1 parent b23b13f commit 9e3fd65

7 files changed

Lines changed: 44 additions & 72 deletions

File tree

changelog_entry.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
- bump: patch
2+
changes:
3+
fixed:
4+
- Reverted premature SCP 2026-27 rate increase (not yet law).
5+
- Refactored SCP baby bonus reform to use £40/week total as the policy parameter instead of a fixed bonus amount.

policyengine_uk/parameters/gov/contrib/scotland/scottish_child_payment/baby_bonus.yaml

Lines changed: 0 additions & 24 deletions
This file was deleted.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
description: Total weekly Scottish Child Payment amount for children under 1.
2+
values:
3+
0001-01-01: 0
4+
2027-04-01: 40
5+
metadata:
6+
unit: currency-GBP
7+
period: week
8+
label: Scottish Child Payment total for under-1s
9+
reference:
10+
- title: Scottish Budget 2026 to 2027
11+
href: https://www.gov.scot/publications/scottish-budget-2026-2027/pages/6/

policyengine_uk/parameters/gov/social_security_scotland/scottish_child_payment/amount.yaml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ values:
66
2022-11-14: 25
77
2024-04-01: 26.70
88
2025-04-01: 27.15
9-
2026-04-01: 28.20
109
metadata:
1110
unit: currency-GBP
1211
period: week
@@ -16,5 +15,3 @@ metadata:
1615
href: https://www.legislation.gov.uk/ssi/2020/351/regulation/20
1716
- title: Scottish Government - Scottish Child Payment
1817
href: https://www.gov.scot/policies/social-security/scottish-child-payment/
19-
- title: Scottish Budget 2026-27
20-
href: https://www.gov.scot/news/a-budget-to-tackle-child-poverty/

policyengine_uk/reforms/scotland/scottish_child_payment_reform.py

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,21 @@ def create_scottish_child_payment_baby_bonus_reform() -> Reform:
66
"""
77
Reform that implements SCP baby bonus for children under 1.
88
9-
Policy: Children under 1 receive an additional weekly bonus on top of
10-
the standard SCP rate. The bonus amount is parameterized at
11-
gov.contrib.scotland.scottish_child_payment.baby_bonus.
9+
Policy: Children under 1 receive a total of £40/week (the policy parameter).
10+
The "bonus" is implicitly the difference between this total and the base rate.
1211
1312
Source: Scottish Budget 2026-27
14-
https://www.gov.scot/publications/scottish-budget-2026-2027-finance-secretarys-statement-13-january-2026-2/
13+
https://www.gov.scot/publications/scottish-budget-2026-2027/pages/6/
14+
"This will bring the total Scottish Child Payment amount to £40 a week
15+
for children under 1."
1516
"""
1617

1718
class scottish_child_payment(Variable):
1819
label = "Scottish Child Payment"
1920
documentation = (
2021
"Scottish Child Payment amount for this child. "
2122
"Paid to eligible children in families receiving qualifying benefits. "
22-
"When baby bonus reform is active, children under 1 receive additional payment."
23+
"When baby bonus reform is active, children under 1 receive £40/week total."
2324
)
2425
entity = Person
2526
definition_period = YEAR
@@ -32,27 +33,33 @@ class scottish_child_payment(Variable):
3233
]
3334

3435
def formula(person, period, parameters):
35-
# Get SCP parameters
36+
# Get base SCP rate
3637
p = parameters(
3738
period
3839
).gov.social_security_scotland.scottish_child_payment
39-
weekly_amount = p.amount
40+
base_weekly = p.amount
4041

41-
# Get baby bonus parameter (age-bracketed)
42-
baby_bonus_params = parameters(
42+
# Get reform parameters
43+
scp_reform = parameters(
4344
period
44-
).gov.contrib.scotland.scottish_child_payment.baby_bonus
45-
age = person("age", period)
46-
baby_bonus = baby_bonus_params.calc(age)
45+
).gov.contrib.scotland.scottish_child_payment
46+
in_effect = scp_reform.in_effect
47+
under_one = scp_reform.under_one
4748

48-
# Total weekly amount = base + baby bonus
49-
total_weekly = weekly_amount + baby_bonus
49+
# For under-1s when reform in effect: use under_one total
50+
# Otherwise: use base rate
51+
age = person("age", period)
52+
weekly_amount = where(
53+
(age < 1) & in_effect,
54+
under_one,
55+
base_weekly,
56+
)
5057

5158
# Child-level take-up (generated stochastically in dataset)
5259
would_claim = person("would_claim_scp", period)
5360

5461
# Convert to annual amount
55-
return total_weekly * WEEKS_IN_YEAR * would_claim
62+
return weekly_amount * WEEKS_IN_YEAR * would_claim
5663

5764
class reform(Reform):
5865
def apply(self):

policyengine_uk/tests/policy/baseline/gov/social_security_scotland/scottish_child_payment.yaml

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -415,27 +415,3 @@
415415
# £27.15/week * 52 weeks = £1,411.80
416416
# [grandparent, child_1]
417417
scottish_child_payment: [0, 1412]
418-
419-
# 2026-27 rate increase
420-
421-
- name: SCP with 2026 amount (28.20/week)
422-
period: 2026
423-
absolute_error_margin: 10
424-
input:
425-
people:
426-
parent:
427-
age: 30
428-
child_1:
429-
age: 5
430-
benunits:
431-
benunit:
432-
members: [parent, child_1]
433-
universal_credit: 5000
434-
households:
435-
household:
436-
members: [parent, child_1]
437-
region: SCOTLAND
438-
output:
439-
# 28.20/week * 52 weeks = 1,466.40
440-
# [parent, child_1]
441-
scottish_child_payment: [0, 1466]

policyengine_uk/tests/policy/reforms/scp_baby_bonus/scottish_child_payment_baby_bonus.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Scottish Child Payment Baby Bonus Reform tests
2-
# Tests that the SCP baby bonus reform correctly applies additional
3-
# payment for children under 1 year old.
2+
# Tests that the SCP baby bonus reform correctly applies the £40/week
3+
# total for children under 1 year old.
44
# Policy effective from 2027-28 fiscal year (April 2027).
5-
# Reform adds £12.85/week bonus for under-1s on top of standard rate.
5+
# Policy parameter: £40/week total for under-1s (not base + bonus).
66

77
- name: SCP baby bonus for child under 1 (2028)
88
period: 2028
@@ -24,7 +24,7 @@
2424
members: [parent, baby]
2525
region: SCOTLAND
2626
output:
27-
# Base: £27.15/week + Bonus: £12.85/week = £40/week total
27+
# Under-1s get £40/week total (policy parameter)
2828
# £40/week * 52 weeks = £2,080 per year
2929
# [parent, baby]
3030
scottish_child_payment: [0, 2080]
@@ -75,7 +75,7 @@
7575
members: [parent, baby, older_child]
7676
region: SCOTLAND
7777
output:
78-
# Baby (age 0): £40/week * 52 = £2,080
78+
# Baby (age 0): £40/week total * 52 = £2,080
7979
# Older child (age 5): £27.15/week * 52 = £1,411.80
8080
# [parent, baby, older_child]
8181
scottish_child_payment: [0, 2080, 1412]
@@ -124,7 +124,7 @@
124124
members: [parent, baby]
125125
region: SCOTLAND
126126
output:
127-
# Before 2027-04-01 - baby bonus is £0, so standard rate only
127+
# Before 2027-04-01 - under_one_total is £0, so standard rate applies
128128
# £27.15/week * 52 = £1,411.80
129129
# [parent, baby]
130130
scottish_child_payment: [0, 1412]

0 commit comments

Comments
 (0)