Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: +217 tax returns · +510 people · +$8,885,000 AGI
| County | Returns | AGI |
|---|---|---|
| Cuyahoga County, OH | 2,063 | $120,402,000 |
| Geauga County, OH | 503 | $37,273,000 |
| Ashtabula County, OH | 396 | $20,117,000 |
| Summit County, OH | 173 | $10,677,000 |
| Portage County, OH | 90 | $4,947,000 |
| Franklin County, OH | 81 | $4,889,000 |
| Lorain County, OH | 70 | $4,604,000 |
| Medina County, OH | 55 | $3,713,000 |
| Trumbull County, OH | 45 | $2,367,000 |
| Stark County, OH | 40 | $2,632,000 |
| County | Returns | AGI |
|---|---|---|
| Cuyahoga County, OH | 1,610 | $87,019,000 |
| Geauga County, OH | 425 | $34,272,000 |
| Ashtabula County, OH | 378 | $20,006,000 |
| Summit County, OH | 208 | $13,606,000 |
| Franklin County, OH | 133 | $6,639,000 |
| Lorain County, OH | 108 | $6,782,000 |
| Portage County, OH | 83 | $5,107,000 |
| Trumbull County, OH | 51 | $2,103,000 |
| Medina County, OH | 49 | $3,149,000 |
| Stark County, OH | 39 | $1,817,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.