Follow the flow › Step 2 of 16 · Money path
2. Taxes paid, by ZIP
People and businesses pay taxes: income tax, payroll tax for Social Security and Medicare, and business taxes. The IRS publishes how many tax returns came from each ZIP code and how much income they reported. It never shows any one person. States and cities collect their own taxes too, like sales tax and property tax.
Who holds the money or the vote here?
The IRS (federal), your state revenue or comptroller office (state), and the county tax assessor-collector (property tax).
How often does it happen?
Taxes are paid all year (paychecks) and filed once a year. IRS ZIP statistics come out about 2 years later.
Where the records come from
Federal data is the same for everyone. When you pick a state, the state and local rows are the places to look for your state. "Have now" means PSI Sci already collects it; "Planned" means we list the source but do not collect it yet.
| Level | Source | Format | How often | On PSI Sci |
|---|---|---|---|---|
| Federal | IRS Statistics of Income (SOI) – individual income tax ZIP code data | bulk CSV | yearly (about 2-year delay) | Planned |
| State | State comptroller / department of revenue tax collections (example: the Texas one) Each state publishes its own | page/bulk | monthly | Planned |
| County | County appraisal district / tax assessor-collector rolls | page/bulk | yearly | Planned |
| City | City budget: sales tax and property tax revenue (city finance office) Census Annual Survey of Local Government Finances covers every city | page/PDF | yearly | Planned |
| District | IRS SOI by congressional district | bulk CSV | yearly | Planned |
| ZIP | IRS SOI ZIP code data | bulk CSV | yearly | Planned |
See these sources as searchable records (rendered live).
See it on PSI Sci now
Variable names
| Variable | Federal | State | County | City | District | ZIP |
|---|---|---|---|---|---|---|
tax_returns | fed_tax_returns | st_tax_returns | cnty_tax_returns | cty_tax_returns | dist_tax_returns | zip_tax_returns |
tax_agi | fed_tax_agi | st_tax_agi | cnty_tax_agi | cty_tax_agi | dist_tax_agi | zip_tax_agi |
tax_wages | fed_tax_wages | st_tax_wages | cnty_tax_wages | cty_tax_wages | dist_tax_wages | zip_tax_wages |
tax_income_tax | fed_tax_income_tax | st_tax_income_tax | cnty_tax_income_tax | cty_tax_income_tax | dist_tax_income_tax | zip_tax_income_tax |
property_tax_levy | fed_property_tax_levy | st_property_tax_levy | cnty_property_tax_levy | cty_property_tax_levy | dist_property_tax_levy | zip_property_tax_levy |
sales_tax_revenue | fed_sales_tax_revenue | st_sales_tax_revenue | cnty_sales_tax_revenue | cty_sales_tax_revenue | dist_sales_tax_revenue | zip_sales_tax_revenue |
IDs (like bioguide_id, bill_id, piid, zcta) have no prefix because they already say what they point to.