Federal Data Hub › IRS Migration Flows · JSON
County-to-county migration · IRS SOI · filing years 2022-2023
Net migration: +1,241 tax returns · +2,006 people · +$111,707,000 AGI
| County | Returns | AGI |
|---|---|---|
| Mecklenburg County, NC | 2,578 | $168,219,000 |
| Cleveland County, NC | 509 | $19,911,000 |
| Lincoln County, NC | 388 | $18,989,000 |
| York County, SC | 328 | $19,438,000 |
| Cabarrus County, NC | 179 | $10,519,000 |
| Union County, NC | 124 | $8,579,000 |
| Catawba County, NC | 121 | $5,394,000 |
| Iredell County, NC | 77 | $4,483,000 |
| Wake County, NC | 60 | $4,520,000 |
| Guilford County, NC | 57 | $2,348,000 |
| County | Returns | AGI |
|---|---|---|
| Mecklenburg County, NC | 1,391 | $74,497,000 |
| Cleveland County, NC | 724 | $32,693,000 |
| Lincoln County, NC | 535 | $31,523,000 |
| York County, SC | 340 | $20,478,000 |
| Catawba County, NC | 141 | $7,069,000 |
| Cabarrus County, NC | 129 | $7,219,000 |
| Wake County, NC | 104 | $5,326,000 |
| Iredell County, NC | 102 | $6,143,000 |
| Union County, NC | 79 | $3,752,000 |
| Spartanburg County, SC | 74 | $4,015,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.