Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -157 tax returns · -403 people · $-24,649,000 AGI
| County | Returns | AGI |
|---|---|---|
| Polk County, MN | 228 | $13,677,000 |
| Cass County, ND | 202 | $11,680,000 |
| Walsh County, ND | 64 | $3,627,000 |
| Traill County, ND | 51 | $2,896,000 |
| Burleigh County, ND | 46 | $1,812,000 |
| Hennepin County, MN | 38 | $1,984,000 |
| Ramsey County, ND | 37 | $1,995,000 |
| Marshall County, MN | 33 | $1,799,000 |
| Pembina County, ND | 32 | $1,987,000 |
| Maricopa County, AZ | 30 | $1,215,000 |
| County | Returns | AGI |
|---|---|---|
| Cass County, ND | 308 | $16,327,000 |
| Polk County, MN | 154 | $8,554,000 |
| Hennepin County, MN | 104 | $7,770,000 |
| Burleigh County, ND | 48 | $2,103,000 |
| Maricopa County, AZ | 44 | $3,625,000 |
| Traill County, ND | 42 | $2,318,000 |
| Dakota County, MN | 39 | $1,889,000 |
| Clay County, MN | 37 | $2,877,000 |
| Ramsey County, MN | 32 | $1,720,000 |
| Ward County, ND | 29 | $1,294,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.