Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: +253 tax returns · +723 people · +$38,227,000 AGI
| County | Returns | AGI |
|---|---|---|
| St. Louis County, MO | 533 | $58,028,000 |
| Jefferson County, MO | 283 | $14,524,000 |
| Crawford County, MO | 178 | $7,944,000 |
| St. Charles County, MO | 156 | $13,122,000 |
| Gasconade County, MO | 102 | $3,927,000 |
| Warren County, MO | 82 | $4,399,000 |
| St. Louis city, MO | 73 | $3,777,000 |
| Phelps County, MO | 36 | $1,644,000 |
| Greene County, MO | 34 | $1,589,000 |
| Washington County, MO | 31 | $918,000 |
| County | Returns | AGI |
|---|---|---|
| St. Louis County, MO | 344 | $25,167,000 |
| Jefferson County, MO | 219 | $10,280,000 |
| Crawford County, MO | 178 | $7,488,000 |
| St. Charles County, MO | 136 | $8,404,000 |
| Gasconade County, MO | 96 | $3,966,000 |
| St. Louis city, MO | 84 | $4,068,000 |
| Warren County, MO | 73 | $4,109,000 |
| Washington County, MO | 53 | $2,337,000 |
| Boone County, MO | 42 | $1,343,000 |
| Phelps County, MO | 40 | $1,797,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.