Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -187 tax returns · +376 people · +$2,936,000 AGI
| County | Returns | AGI |
|---|---|---|
| Hamilton County, OH | 3,171 | $183,998,000 |
| Warren County, OH | 1,328 | $96,750,000 |
| Montgomery County, OH | 571 | $30,221,000 |
| Clermont County, OH | 350 | $18,895,000 |
| Franklin County, OH | 200 | $10,132,000 |
| Preble County, OH | 122 | $5,995,000 |
| Kenton County, KY | 100 | $5,118,000 |
| Greene County, OH | 91 | $7,130,000 |
| Boone County, KY | 84 | $5,242,000 |
| Campbell County, KY | 73 | $5,381,000 |
| County | Returns | AGI |
|---|---|---|
| Hamilton County, OH | 2,852 | $141,033,000 |
| Warren County, OH | 1,492 | $101,364,000 |
| Montgomery County, OH | 737 | $33,496,000 |
| Clermont County, OH | 351 | $18,416,000 |
| Franklin County, OH | 255 | $12,115,000 |
| Preble County, OH | 162 | $9,352,000 |
| Greene County, OH | 116 | $6,159,000 |
| Kenton County, KY | 99 | $5,922,000 |
| Boone County, KY | 79 | $4,755,000 |
| Cook County, IL | 76 | $5,402,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.