Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -40 tax returns · +51 people · $-5,484,000 AGI
| County | Returns | AGI |
|---|---|---|
| Rice County, MN | 144 | $7,736,000 |
| Waseca County, MN | 72 | $4,047,000 |
| Dakota County, MN | 62 | $3,751,000 |
| Olmsted County, MN | 45 | $2,326,000 |
| Hennepin County, MN | 45 | $2,655,000 |
| Freeborn County, MN | 44 | $2,025,000 |
| Dodge County, MN | 40 | $2,096,000 |
| Mower County, MN | 34 | $1,462,000 |
| Blue Earth County, MN | 27 | $879,000 |
| Ramsey County, MN | 21 | $1,279,000 |
| County | Returns | AGI |
|---|---|---|
| Rice County, MN | 114 | $5,528,000 |
| Hennepin County, MN | 75 | $4,284,000 |
| Dakota County, MN | 65 | $3,656,000 |
| Waseca County, MN | 55 | $2,647,000 |
| Olmsted County, MN | 51 | $2,330,000 |
| Freeborn County, MN | 46 | $2,818,000 |
| Blue Earth County, MN | 40 | $1,986,000 |
| Dodge County, MN | 34 | $2,078,000 |
| Ramsey County, MN | 31 | $1,671,000 |
| Mower County, MN | 24 | $978,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.