Skip to content

Dataset imputes 100% of the population as citizens with valid SSNs (breaks SSN/citizenship-conditioned policies, e.g. OBBBA CTC) #225

Description

@PavelMakarchuk

Summary

The published US dataset imputes every person as a citizen with a valid SSN. There are no non-citizens, no ITIN/non-SSN filers, and no immigrant population in the data. This makes any reform or program with an SSN / citizenship / immigration-status eligibility condition impossible to evaluate correctly.

Evidence

On the released populace_us_2024.h5 (release populace-us-2024-f0af251-…-20260620), reading the person table:

variable value weighted
has_valid_ssn True 336.7M (100%)
has_valid_ssn False 0.00M
ssn_card_type CITIZEN 336.7M (100%)
immigration_status_str CITIZEN 336.7M (100%)
taxpayer_id_type VALID_SSN 336.7M (100%)

For reference, the US has roughly 22M non-citizens and ~11M unauthorized immigrants, many of whom file with ITINs / lack work-eligible SSNs. None of that population exists in the dataset.

How it surfaced

Found via the OBBBA reform validation (calibration-diagnostics reform page). OBBBA tightened the CTC SSN requirement, which raises revenue by excluding non-SSN claimants. In PolicyEngine's official OBBBA model (obbba-household-explorer) that "CTC SSN" piece is +$3.3B. In populace, with 100% valid SSNs, the requirement excludes nobody → ≈$0, so populace's CTC reform estimate runs ~$3–4B more negative than PE's official model (populace −85.6B vs explorer −77.6B; JCT line 4 −48.8B).

The CTC case is just the visible symptom — the same imputation gap affects anything SSN/citizenship-conditioned.

Impact (not exhaustive)

  • CTC SSN requirement (TCJA child-SSN + OBBBA filer-SSN) — no-op
  • EITC SSN requirement — no-op
  • ACA / Medicaid / SNAP / SSI immigration-status eligibility — everyone treated as eligible on that axis
  • ITIN filers — none represented

Suggested fix

Impute SSN / citizenship / immigration status rather than defaulting everyone to citizen+SSN. The CPS source carries citizenship/nativity (e.g. PRCITSHP), and the non-citizen / unauthorized / ITIN-filing populations have published control totals to calibrate against. At minimum, has_valid_ssn / taxpayer_id_type / immigration_status_str should reflect a realistic non-SSN share so SSN-conditioned reforms can be evaluated.

Filed from reform-validation analysis in PolicyEngine/calibration-diagnostics.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions