PolicyEngine / PolicyEngine/policyengine-uk

Extensive-margin participation: wage imputation double-divides by 52, and childcare cost when working is not imputed

Open
#1,839 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
50
Forks
33
Avg merge
20h 58m
Merged PRs (30d)
14

Description

Two defects in the labour supply framework that between them suppress the extensive-margin response to any childcare reform. Both were found while costing a childcare reform on the Enhanced FRS, and both are currently worked around in that analysis rather than fixed here.

1. The wage imputation divides by 52 twice

hours_worked is already annual, but the imputation treats it as weekly. A non-worker is credited with roughly £194 of annual earnings for entering part-time work, where the right figure is about £21,600.

The effect is that entering work appears to pay almost nothing, so the extensive margin collapses to near zero for every reform, not just childcare ones.

2. Nothing imputes what a potential entrant would pay for childcare

The model records what a family spends today. For 85% of eligible non-workers that is zero, because they are not buying care they do not need. A childcare subsidy applied to that zero is worth nothing, so the main channel by which childcare support raises employment is invisible for exactly the people who might move.

This one is arguably a missing feature rather than a bug, but it has the same consequence: the participation model cannot see the price-of-working channel.

Why it matters beyond childcare

policyengine_uk.dynamics.participation measures work incentives as the gain to work in household_net_income, which does not net off childcare costs. Childcare is a cost of working. Any reform that changes it — not only childcare reforms — will have its participation effect understated.

Happy to open a PR for the units fix, which is self-contained. The childcare-cost imputation is a larger design question and probably wants discussion first.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at policyengine_uk.dynamics.participation and trace how hours_worked feeds wage imputation and household_net_income. Verify the annual-versus-weekly units issue in the Enhanced FRS costing context; the self-contained part is done when entering-work earnings are no longer divided by 52 twice. Treat childcare-cost imputation as a separate design decision, since the issue says it needs discussion first.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, data
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.