Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -167 tax returns · -209 people · $-12,407,000 AGI
| County | Returns | AGI |
|---|---|---|
| Grand Forks County, ND | 154 | $8,554,000 |
| Cass County, ND | 36 | $1,854,000 |
| Pennington County, MN | 25 | $1,089,000 |
| Beltrami County, MN | 25 | $966,000 |
| Hennepin County, MN | 24 | $923,000 |
| Clearwater County, MN | 22 | $1,109,000 |
| Roseau County, MN | 20 | $1,000,000 |
| County | Returns | AGI |
|---|---|---|
| Grand Forks County, ND | 228 | $13,677,000 |
| Cass County, ND | 70 | $3,455,000 |
| Clay County, MN | 34 | $1,309,000 |
| Pennington County, MN | 32 | $1,613,000 |
| Hennepin County, MN | 30 | $1,014,000 |
| Beltrami County, MN | 26 | $1,780,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.