Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: -218 tax returns · -250 people · $-92,051,000 AGI
| County | Returns | AGI |
|---|---|---|
| Cuyahoga County, OH | 2,262 | $174,091,000 |
| Stark County, OH | 1,566 | $90,788,000 |
| Portage County, OH | 1,552 | $77,052,000 |
| Medina County, OH | 850 | $54,739,000 |
| Wayne County, OH | 314 | $12,790,000 |
| Franklin County, OH | 299 | $15,118,000 |
| Lake County, OH | 208 | $13,606,000 |
| Mahoning County, OH | 197 | $11,392,000 |
| Lorain County, OH | 170 | $10,318,000 |
| Trumbull County, OH | 159 | $7,397,000 |
| County | Returns | AGI |
|---|---|---|
| Cuyahoga County, OH | 1,895 | $121,666,000 |
| Stark County, OH | 1,673 | $102,827,000 |
| Portage County, OH | 1,451 | $86,767,000 |
| Medina County, OH | 749 | $68,520,000 |
| Franklin County, OH | 518 | $27,032,000 |
| Wayne County, OH | 315 | $17,578,000 |
| Lorain County, OH | 176 | $10,220,000 |
| Lake County, OH | 173 | $10,677,000 |
| Trumbull County, OH | 116 | $4,776,000 |
| Mahoning County, OH | 114 | $5,393,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.