Ranking of North Carolina Counties By Net Domestic Migration in 2023

Updated on June 18, 2025.

Based on the US Census Vintage data estimates, in 2023, the Net Domestic Migration for North Carolina was 98.98K. Among all North Carolina counties, Wake County had the highest net domestic migration (12.16K), followed by Brunswick County (7.50K), and Union County (5.78K).

The chart below shows the top 10 counties, and the table below shows the ranking of all North Carolina counties.

You can see similar ranking information for related topics, and for other states. You can also see the ranking of all counties in the United States.

See this for other years:
Ranking of North Carolina Counties By Net Domestic Migration in 2023
Wake
Brunswick
Union
Johnston
Iredell
New Hanover
Gaston
Cabarrus
Mecklenburg
Davidson
Ranking of North Carolina Counties By Net Domestic Migration in 2023
Items per page:
0 of 0
Rank County Net Dom. Migration
1 Wake County 12160
2 Brunswick County 7503
3 Union County 5777
4 Johnston County 5567
5 Iredell County 3262
6 New Hanover County 3125
7 Gaston County 3089
8 Cabarrus County 2872
9 Mecklenburg County 2794
10 Davidson County 2511
11 Pender County 2502
12 Lincoln County 2437
13 Franklin County 2413
14 Alamance County 2289
15 Harnett County 2258
16 Rowan County 2234
17 Buncombe County 2109
18 Forsyth County 1885
19 Chatham County 1652
20 Catawba County 1580
21 Onslow County 1561
22 Stanly County 1488
23 Randolph County 1478
24 Moore County 1409
25 Henderson County 1358
26 Lee County 1193
27 Cleveland County 1061
28 Jackson County 1055
29 Guilford County 991
30 Rockingham County 953
31 Pitt County 928
32 Rutherford County 901
33 Nash County 865
34 Wilson County 773
35 Craven County 762
36 Robeson County 753
37 Carteret County 736
37 Haywood County 736
38 Wayne County 720
39 Caldwell County 699
40 Cherokee County 693
41 Burke County 692
42 Macon County 645
43 Stokes County 629
44 Davie County 600
45 Currituck County 577
46 Lenoir County 551
47 Edgecombe County 534
48 Granville County 507
49 Person County 464
50 Wilkes County 404
51 Caswell County 401
52 Transylvania County 381
53 Sampson County 370
54 Montgomery County 368
55 Yadkin County 356
56 McDowell County 351
57 Columbus County 332
58 Pasquotank County 328
59 Beaufort County 319
60 Alexander County 313
61 Clay County 311
62 Pamlico County 306
63 Duplin County 285
64 Yancey County 256
65 Surry County 255
66 Jones County 250
67 Bladen County 247
68 Polk County 246
69 Greene County 242
70 Perquimans County 240
71 Madison County 229
72 Hoke County 218
73 Ashe County 208
74 Alleghany County 202
75 Avery County 180
76 Bertie County 161
77 Martin County 146
78 Dare County 137
79 Warren County 135
80 Scotland County 96
81 Anson County 95
82 Mitchell County 94
83 Chowan County 89
84 Camden County 73
85 Vance County 63
86 Swain County 57
87 Gates County 49
88 Northampton County 42
89 Tyrrell County 39
90 Hyde County 35
91 Graham County 29
92 Orange County 17
92 Washington County 17
93 Watauga County -9
94 Richmond County -217
95 Hertford County -253
96 Halifax County -371
97 Durham County -786
98 Cumberland County -4686