Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -11 tax returns · +174 people · +$18,663,000 AGI
| County | Returns | AGI |
|---|---|---|
| Hamilton County, OH | 359 | $27,345,000 |
| Ripley County, IN | 164 | $12,602,000 |
| Butler County, OH | 67 | $4,347,000 |
| Boone County, KY | 67 | $4,934,000 |
| Ohio County, IN | 56 | $3,385,000 |
| Franklin County, IN | 51 | $3,562,000 |
| Kenton County, KY | 46 | $2,623,000 |
| Switzerland County, IN | 34 | $1,830,000 |
| Clermont County, OH | 26 | $1,884,000 |
| Marion County, IN | 24 | $1,492,000 |
| County | Returns | AGI |
|---|---|---|
| Hamilton County, OH | 280 | $13,744,000 |
| Ripley County, IN | 217 | $10,319,000 |
| Kenton County, KY | 64 | $3,308,000 |
| Franklin County, IN | 57 | $4,878,000 |
| Boone County, KY | 56 | $2,914,000 |
| Ohio County, IN | 50 | $2,301,000 |
| Butler County, OH | 48 | $2,966,000 |
| Marion County, IN | 31 | $1,737,000 |
| Switzerland County, IN | 29 | $1,487,000 |
| Campbell County, KY | 26 | $1,266,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.