-
Notifications
You must be signed in to change notification settings - Fork 10
Open
Description
Problem
When reweighting CPS records to congressional district targets, SPM thresholds remain attached to records from their original geography. This causes:
- Reduced geographic variation - California records reweighted to Iowa still carry California's ~20% higher threshold
- Biased poverty estimates - Low-cost areas get overstated poverty (thresholds too high)
- Invalid local policy analysis - SPM-based eligibility calculations become unreliable
Background: SPM Threshold Components
The SPM threshold has three components (Census methodology):
- Base threshold - From BLS Consumer Expenditure Survey, 83% of median spending on food, clothing, shelter, utilities, telephone, and internet (FCSUti)
- Housing tenure adjustment - Three tenure groups: renters, owners with mortgage, owners without mortgage
- Geographic adjustment (GEOADJ) - Based on median gross rent index from ACS 5-year data
The GEOADJ formula: GEOADJ = (local_median_rent / national_median_rent) * 0.492 + 0.508
Geographic variation ranges from ~0.84 (West Virginia) to ~1.27 (Hawaii) - roughly 50% variation that we're currently losing when cloning records.
Proposed Solution
Fully calculate SPM thresholds from source data:
- Base threshold from CE Survey - Use rolling 5-year Consumer Expenditure Survey to calculate 33rd percentile FCSUti by tenure (follows BLS methodology, enables proper forecasting)
- District GEOADJ from ACS - Calculate geographic adjustment for each of 435 congressional districts using ACS Table B25031 (median 2-bedroom rent)
- Apply during district reweighting -
threshold = base × equiv_scale × district_geoadj
Implementation Components
New module: policyengine_us_data/spm/
ce_threshold.py- Download CE Survey PUMD, calculate 33rd percentile FCSUti by tenuredistrict_geoadj.py- Generate GEOADJ lookup table from ACS median rents by congressional districtlocal_threshold.py- Calculate local thresholds:base × equiv_scale × district_geoadj
Updates to Enhanced CPS
Ensure these SPM unit variables are passed through (some already extracted but unused):
NUMADULTS,NUMKIDS- Family compositionTENMORTSTATUS- Housing tenure statusEQUIVSCALE- Equivalence scaleGEOADJ- Original geographic adjustment (for validation)
Benefits
- Proper geographic variation in poverty thresholds (~50% range from WV to HI)
- Rolling 5-year CE data enables accurate forecasting (replaces simple CPI-U uprating)
- Modular components can be updated independently
- Full control over methodology
Acceptance Criteria
- CE Survey threshold calculator matches BLS published values within 2% (2024 reference: $39,430 renter, $39,068 owner w/ mortgage, $32,586 owner w/o)
- District GEOADJ ranges from ~0.84 to ~1.27
- National aggregate SPM threshold matches Census totals
- State-level poverty rates within reasonable range of Census SPM estimates
References
- Census SPM Threshold Methodology
- BLS 2024 SPM Thresholds
- Geographic Adjustments: Fair Market Rents and SPM (Census 2024)
Related Issues
- Add congressional district targets #212 - Add congressional district targets
- Critical Data Bug: All Congressional Districts Assigned to Wyoming #435 - Critical bug: All districts assigned to Wyoming
- Add script that generates spm_threshold_agi.csv #33 - Add script that generates spm_threshold_agi.csv
Metadata
Metadata
Assignees
Labels
No labels