Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: +152 tax returns · +393 people · $-7,025,000 AGI
| County | Returns | AGI |
|---|---|---|
| St. Clair County, IL | 1,146 | $59,184,000 |
| St. Louis County, MO | 555 | $30,927,000 |
| Macoupin County, IL | 275 | $12,964,000 |
| St. Louis city, MO | 273 | $15,231,000 |
| Jersey County, IL | 203 | $9,265,000 |
| St. Charles County, MO | 182 | $10,847,000 |
| Clinton County, IL | 118 | $8,137,000 |
| Jefferson County, MO | 94 | $4,574,000 |
| Sangamon County, IL | 93 | $6,045,000 |
| Bond County, IL | 86 | $3,800,000 |
| County | Returns | AGI |
|---|---|---|
| St. Clair County, IL | 983 | $44,605,000 |
| St. Louis County, MO | 563 | $34,971,000 |
| St. Louis city, MO | 295 | $14,103,000 |
| Macoupin County, IL | 293 | $14,624,000 |
| St. Charles County, MO | 205 | $15,647,000 |
| Jersey County, IL | 181 | $9,627,000 |
| Clinton County, IL | 101 | $5,875,000 |
| Bond County, IL | 87 | $4,887,000 |
| Cook County, IL | 77 | $3,376,000 |
| Jefferson County, MO | 73 | $4,253,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.