Mean income of arriving households and Net migration per 100 people staying
Where Mean income of arriving households is higher, Net migration per 100 people staying tends to be higher. The link is weak: +0.31 across 3,074 counties, on a scale from −1 (opposite) to +1 (in step). That figure compares places with the same population density, income and education, so those differences can't explain it. It holds inside states too. Measured separately within each of 40 states, the middle value of the link is +0.29.
Holds after adjusting
Every place, plotted
One dot for each place reporting both measures. Hover over or tap a dot to see its name and values. The thin line is the straight line that best fits the dots. The bold line, shown for counties, is the link after adjusting for density, income and education. A dot far from the lines is a place that does not follow the pattern.
Loading every place…
What each measure is
Mean income of arriving households
The average income on the tax returns of people who moved in.
IRS county migration flows · IRS SOI migration, county aggregates
Net migration per 100 people staying
People moving in minus people moving out, for every hundred who stayed. Positive means the area gained filers. It says nothing about how many moved each way.
IRS county migration flows · IRS SOI migration, county aggregates
Highest and lowest
Where each measure is highest and lowest among the places reporting both (2023), with the other measure beside it. This is shown for every size of place where both are published. Metro-area values are added up from their counties. A measure that cannot be added up across counties, such as a middle value (median), has no metro figure. Counts are shown per 1,000 residents, since raw totals would only list the largest places. Cities and towns and ZIP codes are shown where the Census survey or the CDC publishes them; most other sources stop at the county. They are shown for places of 5,000 residents or more, and only where the survey’s margin of error is small enough for the figure to be usable. The CDC publishes its health estimates for cities in a version adjusted for age, so places with older or younger people can be compared fairly, but not for ZIP codes.
Counties
By mean income of arriving households
| Mean income of arriving households | Net migration per 100 people staying | |
|---|---|---|
| Highest | ||
| Collier County, FL | $283,470 | 0.789 |
| Summit County, UT | $267,830 | -0.505 |
| Marin County, CA | $234,840 | -0.658 |
| Greene County, GA | $215,010 | 3.47 |
| Wasatch County, UT | $188,850 | 0.983 |
| Lowest | ||
| Sioux County, ND | $21,793 | 0 |
| Taliaferro County, GA | $25,212 | -2.05 |
| Madison Parish, LA | $26,014 | -2.63 |
| Sharkey County, MS | $26,580 | -2.57 |
| Quitman County, MS | $27,679 | -1.59 |
By net migration per 100 people staying
| Mean income of arriving households | Net migration per 100 people staying | |
|---|---|---|
| Highest | ||
| Dawson County, GA | $80,795 | 6.2 |
| Liberty County, TX | $52,762 | 6.17 |
| Jasper County, SC | $91,278 | 6.1 |
| Jackson County, GA | $77,315 | 5.73 |
| Kaufman County, TX | $63,965 | 5.38 |
| Lowest | ||
| Aleutians East Borough, AK | $58,067 | -8.87 |
| Alpine County, CA | $96,591 | -7.35 |
| Deuel County, NE | $40,593 | -5.38 |
| Presidio County, TX | $70,438 | -4.68 |
| Liberty County, MT | $32,833 | -4.38 |
States
By mean income of arriving households
| Mean income of arriving households | Net migration per 100 people staying | |
|---|---|---|
| Highest | ||
| Florida | $121,230 | 0.699 |
| Connecticut | $110,950 | -0.193 |
| New Hampshire | $108,990 | 0.361 |
| New Jersey | $102,350 | -0.441 |
| California | $95,714 | -0.692 |
| Lowest | ||
| North Dakota | $54,547 | -0.11 |
| Mississippi | $56,877 | -0.149 |
| Louisiana | $58,224 | -0.543 |
| West Virginia | $58,478 | 0.239 |
| Oklahoma | $58,984 | 0.438 |
By net migration per 100 people staying
| Mean income of arriving households | Net migration per 100 people staying | |
|---|---|---|
| Highest | ||
| South Carolina | $88,208 | 1.52 |
| Delaware | $88,167 | 0.994 |
| North Carolina | $80,145 | 0.884 |
| Idaho | $80,944 | 0.842 |
| Tennessee | $79,460 | 0.811 |
| Lowest | ||
| New York | $94,532 | -1.1 |
| Alaska | $63,208 | -0.731 |
| District of Columbia | $86,659 | -0.697 |
| California | $95,714 | -0.692 |
| Hawaii | $78,183 | -0.59 |
Metro areas
By mean income of arriving households
| Mean income of arriving households | Net migration per 100 people staying | |
|---|---|---|
| Highest | ||
| Naples-Marco Island, FL | $283,470 | 0.789 |
| Heber, UT | $246,880 | 0.151 |
| Key West-Key Largo, FL | $170,380 | -1.24 |
| Jackson, WY-ID | $169,430 | -0.378 |
| Vineyard Haven, MA | $167,880 | -1.23 |
| Lowest | ||
| Greenville, MS | $31,187 | -1.54 |
| Deming, NM | $33,527 | -1.25 |
| Forrest City, AR | $33,747 | -1.88 |
| Kennett, MO | $34,168 | -0.504 |
| Greenwood, MS | $34,844 | -1.31 |
By net migration per 100 people staying
| Mean income of arriving households | Net migration per 100 people staying | |
|---|---|---|
| Highest | ||
| Jefferson, GA | $77,315 | 5.73 |
| Wildwood-The Villages, FL | $106,090 | 4.89 |
| Ocala, FL | $65,711 | 3.99 |
| Myrtle Beach-Conway-North Myrtle Beach, SC | $82,912 | 3.91 |
| Homosassa Springs, FL | $70,449 | 3.7 |
| Lowest | ||
| Rexburg, ID | $42,635 | -3.07 |
| Guymon, OK | $44,780 | -2.45 |
| Fairbanks-College, AK | $54,670 | -2.03 |
| Maryville, MO | $42,763 | -2 |
| Cleveland, MS | $39,062 | -1.92 |
Counties furthest from the pattern
Compared with the straight line that best fits all 3,087 counties: the five with far more net migration per 100 people staying than their mean income of arriving households would suggest, and the five with far less.
| Mean income of arriving households | Net migration per 100 people staying | |
|---|---|---|
| Above the line | ||
| Liberty County, TX | $52,762 | 6.17 |
| Dawson County, GA | $80,795 | 6.2 |
| Jasper County, SC | $91,278 | 6.1 |
| Jackson County, GA | $77,315 | 5.73 |
| Kaufman County, TX | $63,965 | 5.38 |
| Below the line | ||
| Aleutians East Borough, AK | $58,067 | -8.87 |
| Alpine County, CA | $96,591 | -7.35 |
| Deuel County, NE | $40,593 | -5.38 |
| Presidio County, TX | $70,438 | -4.68 |
| Hanson County, SD | $58,556 | -4.05 |
Two series, one county
Both measures over time for a county you pick. The two charts are stacked, so they share only the years along the bottom. You can pick from the thirty largest counties reporting both. This panel covers 2010–2024, and a measure published only once shows as a single dot.
Loading…
Every version of the link
Each row measures the same link, from −1 to +1, in a different way. If the rows mostly agree, the link does not depend on one choice of method.
| Before adjusting for anything | +0.225 | 3,074 counties reporting both |
| After adjusting for density, income and education | +0.310 | the part of the link that is not just how urban, rich and educated a place is |
| Also adjusting for population size | +0.311 | size taken out as well as density |
| Also comparing only within each state | +0.226 | each county is compared only with others in its own state, so this is no longer a comparison between states |
| Giving bigger counties more weight | +0.072 | the adjusted link for the average resident rather than the average county. With this weighting, the data counts for about 287 equally weighted counties |
| Middle value inside single states | +0.292 | the link worked out inside each of 40 states with at least 20 counties reporting |
| Using ranks, after adjusting | +0.387 | uses each county’s rank, not its value, so a few extreme counties cannot create the link |
How much to believe it
Could it be chance?
The p-value is the chance of seeing a link this strong if there were really none. A value of 0.05 or less means the link is unlikely to be chance. Very small values are written in short form: 3.1e-16 means 0.00000000000000031, and the bigger the number after “e-”, the smaller the value. Treating every county as a separate case gives p = 3.2e-69. But counties in the same state tend to resemble each other, so the better figure allows for that: p = 2.2e-8. The site tested 20,910 pairs, and testing so many turns up some flukes. The q-value allows for that too. For this pair it is 2.1e-68.
Do nearby places look alike?
Moran’s I measures how much nearby places look alike: 0 means no map pattern, and higher means neighbours are more similar. For the part of each county that the adjustment leaves unexplained, it is +0.28 (p = 0.001). That unexplained part still clusters on the map. So some regional factor shared by both measures is not accounted for.
Did they change together?
The figures above compare counties at one moment. This asks a different question: where mean income of arriving households rose most, did net migration per 100 people stayingmove too? Each county’s change is compared with the average change in its own state. That takes out ups and downs that hit a whole region at once. Each change is the gap between two estimates that both contain some error. That error pulls these links towards zero, so a weak one is weak partly for that reason. The q column shows whether a link could be a fluke, allowing for the many pairs tested: 0.05 or less means it is unlikely to be chance.
| Period | Counties | Change together | Within states | q |
|---|---|---|---|---|
| 2014–2019 the main test: each Census survey figure averages five years, and these two do not overlap; before the pandemic | — | — | — | — |
| 2019–2023 a repeat check: its two five-year survey figures both include 2019, and it covers the COVID years | 3,072 | +0.09 | +0.09 | 0.002 |
Not measurable over the main period, so only the second period is shown. How change is measured.
Related pairs
- Mean income of arriving households and Mean income of departing households — +0.55
- Mean adjusted gross income per return and Mean income of arriving households — +0.52
- Median home value and Mean income of arriving households — +0.46
- Median age and Mean income of arriving households — +0.44
- Share aged 65 and over and Mean income of arriving households — +0.41
- Vacancy rate and Mean income of arriving households — +0.41
- Income gap between arrivals and departures and Net migration per 100 people staying — +0.39
- Mean income of arriving households and Economy score — +0.39
Association only. Nothing here shows that either measure changes the other. This describes counties, not the people in them. Two measures going together across places does not mean the same people have both. How the US county data works · Explore Mean income of arriving households and Net migration per 100 people staying