Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: +605 tax returns · +42 people · $-45,081,000 AGI
| County | Returns | AGI |
|---|---|---|
| Johnson County, KS | 3,513 | $303,690,000 |
| Clay County, MO | 2,011 | $106,826,000 |
| Cass County, MO | 1,243 | $89,347,000 |
| Wyandotte County, KS | 1,107 | $45,164,000 |
| Platte County, MO | 701 | $47,043,000 |
| Johnson County, MO | 357 | $18,677,000 |
| Lafayette County, MO | 312 | $15,547,000 |
| Greene County, MO | 300 | $15,076,000 |
| Douglas County, KS | 299 | $15,094,000 |
| St. Louis County, MO | 241 | $15,122,000 |
| County | Returns | AGI |
|---|---|---|
| Johnson County, KS | 3,355 | $286,412,000 |
| Clay County, MO | 2,250 | $117,798,000 |
| Cass County, MO | 1,648 | $120,592,000 |
| Wyandotte County, KS | 1,033 | $42,004,000 |
| Platte County, MO | 816 | $54,838,000 |
| Lafayette County, MO | 394 | $23,508,000 |
| Johnson County, MO | 368 | $23,568,000 |
| Cook County, IL | 261 | $17,694,000 |
| Maricopa County, AZ | 208 | $16,903,000 |
| St. Louis County, MO | 185 | $12,414,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.