Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -1,911 tax returns · -5,909 people · $-412,572,000 AGI
| County | Returns | AGI |
|---|---|---|
| Waukesha County, WI | 3,292 | $243,884,000 |
| Racine County, WI | 976 | $53,110,000 |
| Cook County, IL | 969 | $65,501,000 |
| Dane County, WI | 768 | $41,911,000 |
| Ozaukee County, WI | 633 | $41,346,000 |
| Washington County, WI | 581 | $33,935,000 |
| Kenosha County, WI | 394 | $20,002,000 |
| Lake County, IL | 319 | $16,393,000 |
| Maricopa County, AZ | 284 | $16,317,000 |
| Brown County, WI | 279 | $12,274,000 |
| County | Returns | AGI |
|---|---|---|
| Waukesha County, WI | 4,553 | $401,380,000 |
| Racine County, WI | 1,143 | $77,028,000 |
| Ozaukee County, WI | 898 | $99,377,000 |
| Cook County, IL | 855 | $59,950,000 |
| Washington County, WI | 771 | $54,712,000 |
| Dane County, WI | 728 | $44,995,000 |
| Maricopa County, AZ | 440 | $25,981,000 |
| Kenosha County, WI | 304 | $16,715,000 |
| Sheboygan County, WI | 239 | $11,621,000 |
| Hennepin County, MN | 231 | $15,859,000 |
IRS migration data tracks where tax filers lived in consecutive years. A "return" is roughly a household; "AGI" is the adjusted gross income that moved with them. Net migration = inflow − outflow. Small county-pair flows are suppressed by the IRS for privacy and shown blank.
Source: IRS SOI Migration Data. License: CC0 1.0.