Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -88 tax returns · -51 people · $-5,960,000 AGI
| County | Returns | AGI |
|---|---|---|
| Montgomery County, OH | 443 | $21,574,000 |
| Franklin County, OH | 377 | $19,529,000 |
| Greene County, OH | 319 | $17,883,000 |
| Champaign County, OH | 235 | $10,927,000 |
| Miami County, OH | 113 | $6,401,000 |
| Madison County, OH | 107 | $5,465,000 |
| Hamilton County, OH | 39 | $1,098,000 |
| Logan County, OH | 29 | $1,319,000 |
| Union County, OH | 28 | $1,135,000 |
| Fayette County, OH | 26 | $1,093,000 |
| County | Returns | AGI |
|---|---|---|
| Montgomery County, OH | 483 | $21,431,000 |
| Greene County, OH | 395 | $17,950,000 |
| Franklin County, OH | 323 | $13,881,000 |
| Champaign County, OH | 221 | $12,140,000 |
| Miami County, OH | 109 | $7,214,000 |
| Madison County, OH | 65 | $3,770,000 |
| Hamilton County, OH | 54 | $2,119,000 |
| Logan County, OH | 50 | $3,529,000 |
| Warren County, OH | 37 | $3,094,000 |
| Butler County, OH | 37 | $1,579,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.