Repository navigation
UK: childcare take-up draws, the take-up fit pool, SPI-channel copy weights and the young-child age profile distort the £100k childcare costing #1339
Copy link
Copy link
Closed
Description
Summary
On the 19 October national release (microcosm-uk-2024-25-national-20261019T083323Z-6cba5d71, policyengine-uk 2.132.6), the static cost of removing the £100,000 limit on England's working-parent 30 hours is £1.01bn in 2027-28 and £1.22bn in 2029-30. CenTax puts it at £0.80bn and £0.98bn.
After the #1299 hours fix, six Microcosm construction choices still move this costing. All six are addressed in #1338, stacked on #1329. The policyengine-uk findings from the same reconciliation are tracked separately:
- ANI does not deduct pension contributions;
- from 2029-30 the salary-sacrifice cap raises ANI;
- reception children keep funded hours;
- 9-11-month-olds are excluded;
- funding rates are CPI-uprated.
1. Universal and working-parent take-up were drawn independently
- Cause:
frs_take_upgave each flag its own identity-keyed uniform, and the standalone universal rate was 0.4353. - Mechanism: policyengine-uk allocates a working-parent child's first 15 hours to the universal entitlement, which is correct in law. So a family above £100k drawn "extended yes, universal no" got universal hours only under a reform that removed the limit.
- Effect: about £0.14-0.16bn a year of spurious universal funding in the costing. Forcing universal |= extended removes it exactly.
- Fix in UK: childcare take-up at the spring term, under-2 take-up and single-age targets behind the £100k childcare costing (policyengine-uk 2.147.2) #1338: universal = extended OR u < r, with r now the conditional rate. The fitter, the contract and the take-up signal gate move with it.
2. The take-up fit and calibration counted 4-year-olds in reception
- Cause: the fitter and the two DfE calibration bindings counted every receiving child aged 2 or over. DfE's January registrations exclude reception, and 46% of age-4 records are
current_education == PRIMARY. - Effect: the fitted extended rate, 0.6579, is biased down; about 0.77 is expected after the refit.
- Fix in UK: childcare take-up at the spring term, under-2 take-up and single-age targets behind the £100k childcare costing (policyengine-uk 2.147.2) #1338:
current_education != PRIMARYon both sides, and a refit (tool version 5).
3. SPI-channel copies had equal prior weights within a stratum
- Cause: the channel draws 10,000 FRS hosts uniformly and weighted every copy equally. It therefore carried the FRS respondent mix: young families, single adults and one-earner couples over-represented, and 3+-adult households under-represented. Calibration did not undo it.
- History:
- the equal weights came from SPI prior allocation: spread stratum mass over the sampled quota, not donor weights #710, which fixed calibrated eFRS outliers copied across clones; that problem no longer applies on the raw spine (Create the SPI income channel on the microcosm spine with the FRS-only second stage #683);
- the uniform draw was inherited from policyengine-uk-data;
- UK pensions after #1084: open rulings, residual gaps and the engine pieces #1069 c6 had corrected the same bias for pension age only.
- Fix in UK: childcare take-up at the spring term, under-2 take-up and single-age targets behind the £100k childcare costing (policyengine-uk 2.147.2) #1338:
- Keep the draw and the hosts. Rare household types carry above-average design weights, so a weighted draw is the option that would have lost tail hosts.
- Share each stratum's channel mass by raw GROSS4, damped to the square root.
- The shape was chosen by re-solving the release calibration on the same hosts, against a rule fixed in advance.
- On that re-solve it removes about 25k over-£100k parents of 1-4s and lowers the costing by a few £10m.
4. SPI tape pay was drawn without hours
- Cause: stage 1 conditions on age, sex, region and the bridge predictors, and the tape includes part-year workers. Full-time twins could draw a year's pay below their hours at the minimum wage, and fail the 30-hours and Tax-Free Childcare minimum-income tests more often than FRS rows.
- Fix in UK: childcare take-up at the spring term, under-2 take-up and single-age targets behind the £100k childcare costing (policyengine-uk 2.147.2) #1338: floor drawn employment pay at usual hours × 52 × the minimum wage for the twin's age (drawn employees without a trade only).
5. Copies inherited their host's take-up draws
- Cause: take-up is keyed before copying, so the high-income young-family cell had about 216 independent draws. Its realised working-parent take-up was about 0.77, against 0.66 nominal, which is about +£0.12bn of draw luck.
- Measured precision: the costing rests on about 105-120 FRS source households (Kish N about 30). A source-household bootstrap gives an SD of £0.16-0.20bn.
- Fix in UK: childcare take-up at the spring term, under-2 take-up and single-age targets behind the £100k childcare costing (policyengine-uk 2.147.2) #1338: a
childcare_copy_take_upstage re-draws the childcare flags and hours for copies on their own ids. - Follow-up, not in UK: childcare take-up at the spring term, under-2 take-up and single-age targets behind the £100k childcare costing (policyengine-uk 2.147.2) #1338: an expectation-mode costing with a source-household standard error, and counting disclosure carriers by
household_source_idrather than by row.
6. No single-year targets for young children
- Cause: with only the bands bound, calibration left too few 1- and 4-year-olds and too many 5-year-olds.
- Fix in UK: childcare take-up at the spring term, under-2 take-up and single-age targets behind the £100k childcare costing (policyengine-uk 2.147.2) #1338: ONS mid-2025 single years for the UK (ages 3-6; ages 0-2 came in UK pre-Budget data: measure stored values at their period, draw Carer's Allowance claims, and the #1278 items (#1324, #1319, #1278) #1329) and England (ages 0-6).
Related: #1126 / #1299 (hours draw), #1069 (pension-age strata), #710, #683, PolicyEngine/uk-childcare-100k-threshold#8.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
juaristi22 commentedon Oct 23, 2026
Closing. Each of the six items now has a home.
Landed in #1338 (merged 23 October as 65e5eae, on policyengine-uk 2.147.2)
current_education.childcare_copy_take_up).Moved to the SPI channel's list on #1288 (comment). Items 3 and 4 are choices in how the channel builds its copies, not childcare ones.
Vahid's round-1 items 4 (the concentration receipt) and 5 (the floor's amount beside the HMRC SPI employment rows) moved with them.
Childcare follow-ups
The policyengine-uk findings in the summary are all in 2.147.2: PolicyEngine/policyengine-uk#2440, PolicyEngine/policyengine-uk#2462, PolicyEngine/policyengine-uk#2465 and PolicyEngine/policyengine-uk#2570.
🤖 Generated with Claude Code