Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: +599 tax returns · +471 people · +$58,631,000 AGI
| County | Returns | AGI |
|---|---|---|
| Lincoln County, SD | 1,664 | $124,467,000 |
| Brookings County, SD | 180 | $8,954,000 |
| Pennington County, SD | 133 | $5,901,000 |
| Lake County, SD | 103 | $6,904,000 |
| Davison County, SD | 100 | $5,292,000 |
| Maricopa County, AZ | 97 | $9,688,000 |
| Hennepin County, MN | 96 | $11,281,000 |
| Woodbury County, IA | 95 | $4,237,000 |
| Brown County, SD | 89 | $5,059,000 |
| Yankton County, SD | 88 | $3,699,000 |
| County | Returns | AGI |
|---|---|---|
| Lincoln County, SD | 1,899 | $139,830,000 |
| Maricopa County, AZ | 128 | $7,360,000 |
| Hennepin County, MN | 127 | $7,898,000 |
| Brookings County, SD | 115 | $5,615,000 |
| Pennington County, SD | 89 | $5,605,000 |
| Turner County, SD | 69 | $3,622,000 |
| Douglas County, NE | 64 | $3,645,000 |
| Lake County, SD | 63 | $3,583,000 |
| Rock County, MN | 61 | $3,314,000 |
| McCook County, SD | 57 | $3,442,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.