PolicyEngine / PolicyEngine/policyengine-scorecard
Childcare support (mode 1): entitlement take-up and Tax-Free Childcare, the population counterpart to #55's childcare scorings
@vahid-ahmadi is already working on this.
Since Aug 24, 2026.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- Avg merge
- 6d 12h
- Merged PRs (30d)
- 32
Description
PE-UK models the UK childcare-support system in some depth — tax_free_childcare, tax_free_childcare_eligibility, would_claim_tfc, extended_childcare_entitlement_eligible, is_child_receiving_extended_childcare, uc_childcare_element, uc_maximum_childcare_element_amount, WTC_childcare_element, childcare_expenses — and the scorecard's only external childcare row is a single OBR expenditure forecast line for Tax-Free Childcare. Nothing validates eligibility, take-up, or the entitlement hours at all.
This is also the UK policy area that has changed most in the forecast window: the 30-hours entitlement expansion is one of the two DEL measures in OBR Briefing Paper No.10 that #75 already carries a supply-side scoring for (free_childcare_30_hours, uc_childcare_upfront_costs). The scorecard has OBR's estimate of what the expansion does to potential output, and no estimate of how many families it reaches.
The published populations
- DfE, Education provision: children under 5 years of age and the childcare entitlement releases — children taking up the funded entitlements by age and hours band, by local authority and nationally.
- HMRC, Tax-Free Childcare statistics — accounts opened and used, families benefiting, top-up paid, quarterly.
- DWP — UC childcare element usage (shares the Stat-Xplore lane if that one lands first).
Why this one
- Take-up is the whole story here. TFC take-up is known to be far below eligibility, which is precisely the entitled-vs-claiming distinction #51's fullpart machinery was built to construct — and
would_claim_tfcis a real engine input, so the same forced-participation construction applies. A published count of families benefiting gives that construction its denominator. - The 30-hours entitlement is an hours entitlement, not a cash one. The repo has no unit concept for it, and mapping hours onto GBP or onto a headcount would misstate what the number is (the rule that split
GBP_PER_WEEKfrom bareGBP). - Local-authority granularity is finer than any UK geography currently registered. It should probably be excluded deliberately in the first pass — national and regional only — rather than opening an LA vocabulary the rest of the repo cannot join to.
Steps
- Harvest lane: DfE entitlement tables + HMRC TFC statistics, primary sources, Wayback originals, SHA-256 pinned
-
models.py: an hours-entitlement unit concept, added deliberately; children-taking-up as a count distinct from families-benefiting -
uk_aliases: closed age-band and hours-band vocabularies; record the LA-granularity exclusion as a stated coverage decision, not an omission -
relationships.py: held-out with evidence, read at the pin — TFC take-up in particular must not turn out to be a calibration target - Cross-reference #55: this is the population-level counterpart to the childcare supply-side scorings the OBR policy-effects lane already carries
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.