Federal Data HubIRS Migration Flows · JSON

Milwaukee County, WI

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

Net migration: -1,911 tax returns · -5,909 people · $-412,572,000 AGI

Inflow
18,351 returns · 26,367 people · $1,091,190,000 AGI
Outflow
20,262 returns · 32,276 people · $1,503,762,000 AGI

Top origins (where new residents came from)

CountyReturnsAGI
Waukesha County, WI3,292$243,884,000
Racine County, WI976$53,110,000
Cook County, IL969$65,501,000
Dane County, WI768$41,911,000
Ozaukee County, WI633$41,346,000
Washington County, WI581$33,935,000
Kenosha County, WI394$20,002,000
Lake County, IL319$16,393,000
Maricopa County, AZ284$16,317,000
Brown County, WI279$12,274,000

Top destinations (where leavers went)

CountyReturnsAGI
Waukesha County, WI4,553$401,380,000
Racine County, WI1,143$77,028,000
Ozaukee County, WI898$99,377,000
Cook County, IL855$59,950,000
Washington County, WI771$54,712,000
Dane County, WI728$44,995,000
Maricopa County, AZ440$25,981,000
Kenosha County, WI304$16,715,000
Sheboygan County, WI239$11,621,000
Hennepin County, MN231$15,859,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.