Every tax unit files for refundable credits in the certified release: no EITC non-filers
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- python
- Domain
- data, machine-learning
Research direction
Start by reading us/spec/take_up.yaml and the frame adapter binding in policyengine_us_concepts.py, then trace how certified bundle inputs are constructed. The issue suggests seeding would_file_if_eligible_for_refundable_credit from eligible non-filer propensity data while preserving takes_up_eitc for non-claiming filers. Check the resulting EITC participation rate against the IRS-Census figures cited in the issue.
Written by the indexing model from the issue text.
Description
Summary
In populace-us-2024-spm-20260915 (bundle us-6.2.1), would_file_if_eligible_for_refundable_credit is stored as True for every tax unit (mean 1.0 in a policyengine.py managed simulation, 2024). policyengine-us documents the input as one "assigned during microdata construction based on propensity modeling" (default True). The build does not seed it: us/spec/take_up.yaml has no entry for it. (The frame adapter binds it to TakeUpThreshold(program="us.refundable_credit_filing") in policyengine_us_concepts.py, but the certified data carries no such draw.)
So in PolicyEngine, every tax unit entitled to the EITC files a return. The only source of EITC non-participation is takes_up_eitc.
Evidence
- policyengine-us 2.2.1
eitc= min(phased-in, limitation) ×takes_up_eitc× filer, where filer = required to file OR files voluntarily ORwould_file_if_eligible_for_refundable_credit. With the last input always True, no entitled unit is a non-filer. - IRS-Census (CES-WP-24-75, Table 2): in tax year 2021, 4.6 million of the 5.7 million eligible non-claimants were non-filers; 1.1 million filed but did not claim.
- policyengine-scorecard lane
nta-eitc(PolicyEngine/policyengine-scorecard#151), us-6.2.1, CY2024: PE's EITC participation is 88.0%, against IRS's 80.8% (ACS) and 78% (CPS) for tax year 2022. Every PE non-participant hastakes_up_eitcoff; none is a non-filer.
Effect
- EITC, refundable CTC (ACTC) and refundable State credits never miss a unit through non-filing. Where calibration fits SOI claims (State EITC claims by number of children), the weights absorb the difference, but the eligible-but-not-filing population is missing from the microdata.
- Reforms that change filing incentives (for example a larger refundable credit, or simplified filing) cannot move non-filers into claiming, because none exist.
Suggested fix
Seed would_file_if_eligible_for_refundable_credit from a non-filer propensity, for example the IRS-Census eligible non-filer counts (CES-WP-24-75 Table 2: non-filers and filers), and keep takes_up_eitc for non-claiming filers only. Then check the EITC participation rate against IRS-Census again.
- Dominant language
- Python
- Stars
- 0
- Forks
- 5
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 115
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing 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.
More from PolicyEngine/microcosm
-
Update two stale comments about the export-mass reviewed-exclusion registerPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 1/5 Under an hour Newbie friendliness 88/100
PolicyEngine/microcosm#1108 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
PolicyEngine/microcosm#475 ·
Maintainers usually reply within 1 day
-
Generate complete WIC participation in the ACS local-area buildPossibly taken @anth-volk claimed this today. Open
Difficulty 4/5 3-5 days Newbie friendliness 48/100
PolicyEngine/microcosm#1155 ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
PolicyEngine/microcosm#1154 ·
Maintainers usually reply within 1 day
-
Delegate telemetry and completed Orrery publication to microcosm-local-providerPossibly taken @anth-volk claimed this today. Open
Difficulty 4/5 3-5 days Newbie friendliness 35/100
PolicyEngine/microcosm#1152 ·
Maintainers usually reply within 1 day
All issues in PolicyEngine/microcosm
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
MystenLabs/MemWal#1163 · 2 comments ·
Maintainers usually reply within 1 day
-
infertopics leaves new nodes without a topic when untopiced neighbours outnumber topiced onesPossibly taken @moneebullah25 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
FinanceFlash/unvibecode#218 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
NVIDIA/earth2studio#1241 ·
Maintainers usually reply within 3 days