Federal Data HubIRS Migration Flows · JSON

Clay County, MN

County-to-county migration · IRS SOI · filing years 2022-2023

Net migration: +78 tax returns · +97 people · $-11,615,000 AGI

Inflow
2,100 returns · 3,450 people · $101,517,000 AGI
Outflow
2,022 returns · 3,353 people · $113,132,000 AGI

Top origins (where new residents came from)

CountyReturnsAGI
Cass County, ND890$45,220,000
Otter Tail County, MN111$5,018,000
Becker County, MN98$5,610,000
Hennepin County, MN50$2,121,000
Grand Forks County, ND37$2,877,000
Polk County, MN34$1,309,000
Norman County, MN23$1,226,000
Stearns County, MN22$773,000
Beltrami County, MN22$842,000
Burleigh County, ND20$717,000

Top destinations (where leavers went)

CountyReturnsAGI
Cass County, ND873$44,733,000
Becker County, MN95$10,497,000
Hennepin County, MN83$3,744,000
Otter Tail County, MN72$5,235,000
Ramsey County, MN35$1,143,000
Norman County, MN28$1,239,000
Maricopa County, AZ26$1,630,000
Stearns County, MN23$1,054,000
Grand Forks County, ND21$794,000
St. Louis County, MN20$1,358,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.