This map shows which localities are gaining population through net in-migration or losing it through net out-migration. It does not show overall changes in population. A county may gain population through net in-migration but still lose population overall through deaths outnumbering births (and net in-migration). Likewise, a locality losing population through net out-migration might still gain population through births outnumberrng deaths (and net out-mgration). Most localities in Virginia are seeing more people move in than move out. The most notable exceptions are in Northern Virginia, the Richmond are and Hampton Roads. Migration data from IRS for 2020. Map by Robert Lunsford.

Want more news about population change in Virginia? Sign up for our free daily email newsletter..

Day 1: More people are moving out of Northern Virginia than moving in

Day 2: Urban crescent sees people moving out; rural Virginia sees people moving in

Day 3: People are moving out of Lynchburg and Roanoke. Where are they going?

Day 4: People are moving into rural Virginia. Where are they coming from?

Day 5: Why aren’t more people moving from Northern Virginia into Southwest or Southside?

Day 6: Some rural areas are seeing a big influx of affluent residents.

Day 7: Four questions (and two questions) about Virginia’s migration trends

News flash: More people are moving out of Northern Virginia than are moving in – and have been every year for a decade.

More people are moving out of Richmond and Henrico County than are moving in – only Chesterfield County and Hanover County are keeping the Richmond metro in the plus range for net in-migration.

More people are moving out of Hampton Roads than are moving in, and have been for five years in a row.

In short, most of the localities in the urban crescent are losing population through out-migration – it’s only because births outnumber deaths (and the net out-migration) that they’re gaining population. And, with a falling birth rate, some are no longer gaining population at all as out-migration accelerates.

Meanwhile, much of rural Virginia is seeing more people move in than out.

Yes, the world has turned upside down.

Welcome to Day 2 of my exploration of the latest migration data from the Internal Revenue Service. Each year, the IRS compiles data on where people are moving to and from, based on where people file their income tax returns. Demographers often consider this better data than the annual Census Bureau estimates because the government really does know where you live. If some of this sounds familiar, it’s because earlier this year I explored those Census Bureau estimates, which, among other things, showed how birth rates are falling so much that they’re exposing some of these out-migration trends that have existed for years. Meanwhile, many of these migration trends have accelerated. Just keep in mind as we go forward that this IRS data only looks at people moving out and people moving in – it doesn’t account for births outnumbering deaths in some localities. Or, as is usually the case, deaths outnumbering births. Still, what we have here is some hard data on some real migration trends.

Another important thing to keep in mind: All this data is from 2020, so it is pre-pandemic. That’s key because this data shows there was a trend of moving out of metro areas – and into rural areas – even before the Zoom Era.

Much of what I’m going to present here is the complete opposite of what we’ve come to expect. Yesterday I focused on the accelerating outflows from Northern Virginia. Today I’ll focus on the accelerating inflows into Southwest and Southside Virginia.

We have typically reported on the 2020 census count, which shows that every locality west of Montgomery County lost population during the past decade. So did virtually every locality in Southside.

All that’s still true, of course. However, this IRS data shows that while their populations may have been declining, the number of people moving in was increasing – it was only because deaths outnumbered births that they lost population.

For instance:

Every locality along the Interstate 81 corridor west of Montgomery County saw more in-migration than out-migration in 2020.

Let’s hit the road and head south.

Pulaski County has now seen net in-migration for two years in a row (2019 and 2020). It posted a net gain of 279 people in 2020, up from 95 the year before.

Wythe County has now seen net in-migration for four of the past five years, with 2020 coming in at a net gain of 266 people, its biggest yet. 

Smyth County is the last locality along that I-81 corridor to reverse its trends. Smyth had seen net out-migration for six years in a row and nine of the previous 10. But in 2020 Smyth saw a net in-migration of 212 people, which is not insubstantial.

Washington County has seen net in-migration for five years in a row. Its net gain of 290 in 2020 was a record.

Bristol has now seen net in-migration for two years in a row, with 2020 showing a net gain of 83.

When we look to the counties west of the Blue Ridge and east of the interstate, we see even stronger net in-migration.

Floyd County has seen net in-migration for 12 years in a row; 2020 saw a net gain of 184, the second highest on record for the data set we have (which goes back to 2008).

Carroll County has seen in-migration for at least 13 years in a row (that’s as far back as this data goes). Like Floyd, its net of 277 was the second highest on record.

Grayson County has seen net in-migration for three years in a row, picking up 74 in 2020.

Only Galax has seen net out-migration – for seven years in a row.

We think of the coal counties as classic cases of out-migration, but that’s no longer the case. Scott County and Tazewell County have now posted net in-migration for two years in a row. Dickenson County broke a five-year losing streak by posting net in-migration in 2020. Lee County broke a seven-year losing streak with net in-migration in 2020. Russell County had seen net out-migration for seven of the past nine years before showing net in-migration for 2020. Only Norton (which has seen out-migration for eight of the past 10 years) and Wise County (10 straight years of net out-migration) and Buchanan County (13 straight years of net out-migration) stand out on the minus side.

These numbers aren’t necessarily big (Tazewell’s net in-migration for 2020 was only 44), but these are still positive trends (and some are in triple digits, such as Lee County with 128 and Scott County with 157). This is mixing data, but if you look at this in conjunction with the Census Bureau estimates for 2021, which also show net in-migration for many of these localities (and also reflect a pandemic year), it’s possible we’re seeing the start of a real trend.

This point cannot be emphasized enough: If these localities are seeing more people move in than move out, then the only reason they’re losing population is because deaths outnumber births. There are two ways to look at this:

a) This is depressing because even localities that are “winning” with net in-migration are still losing population overall. Ugh.

b) This is encouraging because we can’t do much about death, so let’s just focus on the happy news about net in-migration.

Still, let’s sum all this up: Only four localities west of the New River Valley saw net out-migration in 2020: Buchanan County, Galax, Norton and Wise County. That seems pretty remarkable. Buchanan County, unfortunately, stands out in a not-so-good way: The other localities are seeing out-migration either slow or stay steady. Buchanan County is seeing its outflows accelerate. It saw a net loss of 302 people in 2020, up from 143 the previous year and 17 the year before that. I’m trying to be gentle here but Buchanan County has a problem and it’s one that other counties in the Virginia coalfields no longer share.

Now let’s hop over the mountains and look at Southside. (I’m intentionally skipping over the Roanoke Valley and the Lynchburg metro area; we’ll get to them tomorrow.) This will be easy. Virtually every locality in Southside is seeing net in-migration, and has for years (which really underscores the importance of those deaths-over-births numbers).

Appomattox County, Bedford County and Franklin County have posted net in-migration for at least 13 years in a row. Maybe those aren’t the best examples because they’re near metro areas and/or Smith Mountain Lake. They’re posting big net in-migration numbers in 2020 – 1,433 for Bedford County, 701 for Franklin County, 286 for Appomattox. I’ll have more to say about Bedford and Franklin another day.

However, Henry County posted net in-migration for 2020 – and four of the past five years. Its 2020 net of 224 was more than twice as big as any of the other years, too.

Prince Edward County has had net in-migration for two years in a row – and five of the past seven. Its 2020 net of 139 was more than triple some of the other years.

Lunenburg County has had net in-migration for three of the past four years. Its 2020 net of 96 was more than double the previous year.

Cumberland County has recorded net in-migration for four years in a row, although its net was only 14.

Mecklenburg County has net in-migration for seven years in a row and nine of the past 10, although its 2020 net of 255 was a lot more than the 16 the county posted in 2010 and 2011.

Getting people to move to Southside apparently isn’t the problem; the problem is keeping them alive.

The most notable exceptions are Danville and Martinsville. The IRS data shows Danville has seen more people move out than move in for at least 13 straight years, although the exodus seems to be slowing – the -99 in 2020 was an improvement over the -648 just four years prior; Martinsville had had net out-migration for 11 of those 13 years, although its 2020 net outflow of -141 was an acceleration of the -24 and -19 and -46 in previous years. Halifax County is in the out-migration category for eight of the past 10 years; its net outflow of -67 is pretty typical. Pittsylvania County is an oddity: It showed net out-migration in 2020 after five straight years of net in-migration; it’s been on the plus side for eight of the past 10 years. Sometimes oddities happen. It was down -66, after being up by 266 some years.

So what’s our big takeaway here from all these examples? A few things seem clear:

a) We’re seeing a migration out of Virginia’s big metros.

b) Most of those people leaving big metros are moving to other big metros, typically out of state, but enough are moving to rural areas to make a difference.

c) All this was happening before the pandemic so if the pandemic has accelerated these migrations – and the Census Bureau estimates plus anecdotal evidence suggests it has – then we’re going to see even more net in-migration in rural Virginia.

d) None of this is big enough – yet – to make up for the big imbalance of deaths over births so most rural areas are going to continue to lose population even with all this in-migration going on.

What’s this mean policy-wise?

That’s a trickier question. Since we can’t reverse aging, it seems the only thing to do is to keep trying to attract new residents, particularly younger ones. That won’t immediately reverse population decline, but does help mitigate it, and set the stage for future growth. The good news is that attracting new residents isn’t an impossible task: It’s already happening in most localities, and has been for several years.

The IRS says so, and who’s going to dispute the IRS?

Coming tomorrow: Where are all these people coming from?

Yancey is editor of Cardinal News. His opinions are his own. You can reach him at