top of page

Senate Elections 2020 | US Senate Elections | North Carolina Races

2020 North Carolina U.S. Senate Election Results

Thom Tillis
cal cunningham.png

Thom Tillis
Percent: 48.69%
Votes: 2,665,598

Cal Cunningham 
Percent: 46.94%
Votes: 2,569,965

Race Summary

In the 2020 U.S. Senate election in North Carolina, held on November 3, Republican incumbent Thom Tillis narrowly secured re-election, defeating Democratic challenger Cal Cunningham with 48.69% of the vote to Cunningham's 46.94%. Tillis's victory contributed to the Republican Party's efforts to maintain control of the Senate during a highly competitive election cycle.

Full Results

Thom Tillis (REP)
Percent: 48.69%
Votes: 2,665,598    

 

Cal Cunningham (DEM)
Percent: 46.94%
Votes: 2,569,965    

 

Shannon W. Bray (LIB)
Percent: 3.13%
Votes: 171,571    

 

Kevin E. Hayes (CON)
Percent: 1.24%
Votes: 67,818

 

Total votes: 5,474,952

State Map

2020 NC US Senate Election.png

Results by County

Alamance County

Thom Tillis (REP)
Percent: 51.74%
Votes: 44,246

Cal Cunningham (DEM)
Percent: 44.48%
Votes: 38,038

Shannon W. Bray (LIB)
Percent: 2.69%
Votes: 2,302

Kevin E. Hayes (CON)
Percent: 1.08%
Votes: 922

Total votes: 85,508

Ashe County

Thom Tillis (REP)
Percent: 67.91%
Votes: 10,619

Cal Cunningham (DEM)
Percent: 27.37%
Votes: 4,279

Shannon W. Bray (LIB)
Percent: 2.92%
Votes: 457

Kevin E. Hayes (CON)
Percent: 1.80%
Votes: 281

Total votes: 15,636

Bladen County

Thom Tillis (REP)
Percent: 53.12%
Votes: 8,967

Cal Cunningham (DEM)
Percent: 43.13%
Votes: 7,280

Shannon W. Bray (LIB)
Percent: 2.36%
Votes: 399

Kevin E. Hayes (CON)
Percent: 1.39%
Votes: 235

Total votes: 16,881

Cabarrus County

Thom Tillis (REP)
Percent: 52.74%
Votes: 61,231

Cal Cunningham (DEM)
Percent: 42.11%
Votes: 48,886

Shannon W. Bray (LIB)
Percent: 3.67%
Votes: 4,261

Kevin E. Hayes (CON)
Percent: 1.48%
Votes: 1,724

Total votes: 116,102

Caswell County

Thom Tillis (REP)
Percent: 55.54%
Votes: 6,643

Cal Cunningham (DEM)
Percent: 41.10%
Votes: 4,916

Shannon W. Bray (LIB)
Percent: 2.32%
Votes: 278

Kevin E. Hayes (CON)
Percent: 1.04%
Votes: 124

Total votes: 11,961

Chowan County

Thom Tillis (REP)
Percent: 56.61%
Votes: 4,353

Cal Cunningham (DEM)
Percent: 40.63%
Votes: 3,124

Shannon W. Bray (LIB)
Percent: 1.81%
Votes: 139

Kevin E. Hayes (CON)
Percent: 0.95%
Votes: 73

Total votes: 7,689

Craven County

Thom Tillis (REP)
Percent: 56.25%
Votes: 29,542

Cal Cunningham (DEM)
Percent: 38.87%
Votes: 20,416

Shannon W. Bray (LIB)
Percent: 3.37%
Votes: 1,772

Kevin E. Hayes (CON)
Percent: 1.51%
Votes: 791

Total votes: 52,521

Davidson County

Thom Tillis (REP)
Percent: 68.81%
Votes: 60,686

Cal Cunningham (DEM)
Percent: 26.83%
Votes: 23,660

Shannon W. Bray (LIB)
Percent: 2.83%
Votes: 2,496

Kevin E. Hayes (CON)
Percent: 1.53%
Votes: 1,346

Total votes: 88,188

Edgecombe County

Thom Tillis (REP)
Percent: 33.90%
Votes: 8,582

Cal Cunningham (DEM)
Percent: 63.01%
Votes: 15,952

Shannon W. Bray (LIB)
Percent: 2.00%
Votes: 506

Kevin E. Hayes (CON)
Percent: 1.10%
Votes: 278

Total votes: 25,318

Gates County

Thom Tillis (REP)
Percent: 54.46%
Votes: 3,205

Cal Cunningham (DEM)
Percent: 42.04%
Votes: 2,474

Shannon W. Bray (LIB)
Percent: 2.24%
Votes: 132

Kevin E. Hayes (CON)
Percent: 1.26%
Votes: 74

Total votes: 5,885

Guilford County

Thom Tillis (REP)
Percent: 37.18%
Votes: 104,908

Cal Cunningham (DEM)
Percent: 58.77%
Votes: 165,823

Shannon W. Bray (LIB)
Percent: 3.04%
Votes: 8,587

Kevin E. Hayes (CON)
Percent: 1.00%
Votes: 2,819

Total votes: 282,137

Henderson County

Thom Tillis (REP)
Percent: 57.99%
Votes: 39,359

Cal Cunningham (DEM)
Percent: 37.99%
Votes: 25,782

Shannon W. Bray (LIB)
Percent: 2.89%
Votes: 1,964

Kevin E. Hayes (CON)
Percent: 1.13%
Votes: 768

Total votes: 67,873

Iredell County

Thom Tillis (REP)
Percent: 63.44%
Votes: 64,319

Cal Cunningham (DEM)
Percent: 31.46%
Votes: 31,893

Shannon W. Bray (LIB)
Percent: 3.44%
Votes: 3,487

Kevin E. Hayes (CON)
Percent: 1.66%
Votes: 1,687

Total votes: 101,386

Lee County

Thom Tillis (REP)
Percent: 53.70%
Votes: 15,419

Cal Cunningham (DEM)
Percent: 41.27%
Votes: 11,851

Shannon W. Bray (LIB)
Percent: 3.41%
Votes: 979

Kevin E. Hayes (CON)
Percent: 1.62%
Votes: 465

Total votes: 28,714

Madison County

Thom Tillis (REP)
Percent: 57.17%
Votes: 7,399

Cal Cunningham (DEM)
Percent: 38.53%
Votes: 4,987

Shannon W. Bray (LIB)
Percent: 2.80%
Votes: 362

Kevin E. Hayes (CON)
Percent: 1.51%
Votes: 195

Total votes: 12,943

Mitchell County

Thom Tillis (REP)
Percent: 75.32%
Votes: 6,735

Cal Cunningham (DEM)
Percent: 21.46%
Votes: 1,919

Shannon W. Bray (LIB)
Percent: 2.02%
Votes: 181

Kevin E. Hayes (CON)
Percent: 1.20%
Votes: 107

Total votes: 8,942

New Hanover County

Thom Tillis (REP)
Percent: 47.13%
Votes: 61,415

Cal Cunningham (DEM)
Percent: 47.35%
Votes: 61,702

Shannon W. Bray (LIB)
Percent: 4.23%
Votes: 5,516

Kevin E. Hayes (CON)
Percent: 1.29%
Votes: 1,685

Total votes: 130,318

Pamlico County

Thom Tillis (REP)
Percent: 60.53%
Votes: 4,589

Cal Cunningham (DEM)
Percent: 35.36%
Votes: 2,681

Shannon W. Bray (LIB)
Percent: 2.48%
Votes: 188

Kevin E. Hayes (CON)
Percent: 1.62%
Votes: 123

Total votes: 7,581

Person County

Thom Tillis (REP)
Percent: 56.49%
Votes: 12,192

Cal Cunningham (DEM)
Percent: 39.27%
Votes: 8,475

Shannon W. Bray (LIB)
Percent: 2.78%
Votes: 600

Kevin E. Hayes (CON)
Percent: 1.46%
Votes: 315

Total votes: 21,582

Richmond County

Thom Tillis (REP)
Percent: 53.85%
Votes: 11,002

Cal Cunningham (DEM)
Percent: 41.65%
Votes: 8,510

Shannon W. Bray (LIB)
Percent: 2.77%
Votes: 566

Kevin E. Hayes (CON)
Percent: 1.72%
Votes: 352

Total votes: 20,430

Rutherford County

Thom Tillis (REP)
Percent: 69.26%
Votes: 23,596

Cal Cunningham (DEM)
Percent: 26.82%
Votes: 9,136

Shannon W. Bray (LIB)
Percent: 2.29%
Votes: 781

Kevin E. Hayes (CON)
Percent: 1.63%
Votes: 554

Total votes: 34,067

Stokes County

Thom Tillis (REP)
Percent: 72.99%
Votes: 18,599

Cal Cunningham (DEM)
Percent: 22.02%
Votes: 5,611

Shannon W. Bray (LIB)
Percent: 3.19%
Votes: 812

Kevin E. Hayes (CON)
Percent: 1.80%
Votes: 458

Total votes: 25,480

Tyrrell County

Thom Tillis (REP)
Percent: 52.97%
Votes: 945

Cal Cunningham (DEM)
Percent: 43.61%
Votes: 778

Shannon W. Bray (LIB)
Percent: 2.07%
Votes: 37

Kevin E. Hayes (CON)
Percent: 1.35%
Votes: 24

Total votes: 1,784

Warren County

Thom Tillis (REP)
Percent: 34.30%
Votes: 3,520

Cal Cunningham (DEM)
Percent: 62.72%
Votes: 6,437

Shannon W. Bray (LIB)
Percent: 1.89%
Votes: 194

Kevin E. Hayes (CON)
Percent: 1.09%
Votes: 112

Total votes: 10,263

Wilkes County

Thom Tillis (REP)
Percent: 72.67%
Votes: 25,488

Cal Cunningham (DEM)
Percent: 23.02%
Votes: 8,074

Shannon W. Bray (LIB)
Percent: 2.63%
Votes: 924

Kevin E. Hayes (CON)
Percent: 1.67%
Votes: 587

Total votes: 35,073

Alexander County

Thom Tillis (REP)
Percent: 73.53%
Votes: 14,739

Cal Cunningham (DEM)
Percent: 21.39%
Votes: 4,287

Shannon W. Bray (LIB)
Percent: 2.81%
Votes: 563

Kevin E. Hayes (CON)
Percent: 2.27%
Votes: 455

Total votes: 20,044

Avery County

Thom Tillis (REP)
Percent: 73.65%
Votes: 6,865

Cal Cunningham (DEM)
Percent: 22.30%
Votes: 2,079

Shannon W. Bray (LIB)
Percent: 2.64%
Votes: 246

Kevin E. Hayes (CON)
Percent: 1.41%
Votes: 131

Total votes: 9,321

Brunswick County

Thom Tillis (REP)
Percent: 59.38%
Votes: 52,971

Cal Cunningham (DEM)
Percent: 36.08%
Votes: 32,180

Shannon W. Bray (LIB)
Percent: 3.23%
Votes: 2,881

Kevin E. Hayes (CON)
Percent: 1.31%
Votes: 1,170

Total votes: 89,202

Caldwell County

Thom Tillis (REP)
Percent: 70.76%
Votes: 29,971

Cal Cunningham (DEM)
Percent: 24.29%
Votes: 10,288

Shannon W. Bray (LIB)
Percent: 3.07%
Votes: 1,299

Kevin E. Hayes (CON)
Percent: 1.89%
Votes: 799

Total votes: 42,357

Catawba County

Thom Tillis (REP)
Percent: 65.16%
Votes: 54,004

Cal Cunningham (DEM)
Percent: 29.98%
Votes: 24,845

Shannon W. Bray (LIB)
Percent: 3.08%
Votes: 2,550

Kevin E. Hayes (CON)
Percent: 1.79%
Votes: 1,484

Total votes: 82,883

Clay County

Thom Tillis (REP)
Percent: 71.90%
Votes: 4,897

Cal Cunningham (DEM)
Percent: 24.61%
Votes: 1,676

Shannon W. Bray (LIB)
Percent: 2.06%
Votes: 140

Kevin E. Hayes (CON)
Percent: 1.44%
Votes: 98

Total votes: 6,811

Cumberland County

Thom Tillis (REP)
Percent: 39.20%
Votes: 57,121

Cal Cunningham (DEM)
Percent: 55.59%
Votes: 81,001

Shannon W. Bray (LIB)
Percent: 3.69%
Votes: 5,379

Kevin E. Hayes (CON)
Percent: 1.52%
Votes: 2,218

Total votes: 145,719

Davie County

Thom Tillis (REP)
Percent: 69.21%
Votes: 17,415

Cal Cunningham (DEM)
Percent: 26.11%
Votes: 6,570

Shannon W. Bray (LIB)
Percent: 3.10%
Votes: 781

Kevin E. Hayes (CON)
Percent: 1.57%
Votes: 396

Total votes: 25,162

Forsyth County

Thom Tillis (REP)
Percent: 41.72%
Votes: 83,228

Cal Cunningham (DEM)
Percent: 53.77%
Votes: 107,277

Shannon W. Bray (LIB)
Percent: 3.27%
Votes: 6,533

Kevin E. Hayes (CON)
Percent: 1.24%
Votes: 2,471

Total votes: 199,509

Graham County

Thom Tillis (REP)
Percent: 73.75%
Votes: 3,355

Cal Cunningham (DEM)
Percent: 22.27%
Votes: 1,013

Shannon W. Bray (LIB)
Percent: 2.07%
Votes: 94

Kevin E. Hayes (CON)
Percent: 1.91%
Votes: 87

Total votes: 4,549

Halifax County

Thom Tillis (REP)
Percent: 36.93%
Votes: 9,446

Cal Cunningham (DEM)
Percent: 60.36%
Votes: 15,438

Shannon W. Bray (LIB)
Percent: 1.78%
Votes: 456

Kevin E. Hayes (CON)
Percent: 0.93%
Votes: 237

Total votes: 25,577

Hertford County

Thom Tillis (REP)
Percent: 31.80%
Votes: 3,305

Cal Cunningham (DEM)
Percent: 65.58%
Votes: 6,815

Shannon W. Bray (LIB)
Percent: 1.48%
Votes: 154

Kevin E. Hayes (CON)
Percent: 1.14%
Votes: 118

Total votes: 10,392

Jackson County

Thom Tillis (REP)
Percent: 50.68%
Votes: 10,763

Cal Cunningham (DEM)
Percent: 44.17%
Votes: 9,382

Shannon W. Bray (LIB)
Percent: 3.71%
Votes: 788

Kevin E. Hayes (CON)
Percent: 1.44%
Votes: 306

Total votes: 21,239

Lenoir County

Thom Tillis (REP)
Percent: 49.43%
Votes: 13,898

Cal Cunningham (DEM)
Percent: 47.24%
Votes: 13,284

Shannon W. Bray (LIB)
Percent: 2.10%
Votes: 591

Kevin E. Hayes (CON)
Percent: 1.23%
Votes: 346

Total votes: 28,119

Martin County

Thom Tillis (REP)
Percent: 48.57%
Votes: 6,034

Cal Cunningham (DEM)
Percent: 48.08%
Votes: 5,973

Shannon W. Bray (LIB)
Percent: 2.07%
Votes: 257

Kevin E. Hayes (CON)
Percent: 1.29%
Votes: 160

Total votes: 12,424

Montgomery County

Thom Tillis (REP)
Percent: 60.95%
Votes: 7,741

Cal Cunningham (DEM)
Percent: 34.48%
Votes: 4,379

Shannon W. Bray (LIB)
Percent: 2.55%
Votes: 324

Kevin E. Hayes (CON)
Percent: 2.02%
Votes: 256

Total votes: 12,700

Northampton County

Thom Tillis (REP)
Percent: 37.16%
Votes: 3,720

Cal Cunningham (DEM)
Percent: 59.98%
Votes: 6,005

Shannon W. Bray (LIB)
Percent: 1.87%
Votes: 187

Kevin E. Hayes (CON)
Percent: 0.99%
Votes: 99

Total votes: 10,011

Pasquotank County

Thom Tillis (REP)
Percent: 48.31%
Votes: 9,491

Cal Cunningham (DEM)
Percent: 47.95%
Votes: 9,421

Shannon W. Bray (LIB)
Percent: 2.74%
Votes: 538

Kevin E. Hayes (CON)
Percent: 1.01%
Votes: 198

Total votes: 19,648

Pitt County

Thom Tillis (REP)
Percent: 43.67%
Votes: 37,947

Cal Cunningham (DEM)
Percent: 52.47%
Votes: 45,598

Shannon W. Bray (LIB)
Percent: 2.89%
Votes: 2,510

Kevin E. Hayes (CON)
Percent: 0.97%
Votes: 846

Total votes: 86,901

Robeson County

Thom Tillis (REP)
Percent: 54.87%
Votes: 25,211

Cal Cunningham (DEM)
Percent: 41.64%
Votes: 19,135

Shannon W. Bray (LIB)
Percent: 2.08%
Votes: 955

Kevin E. Hayes (CON)
Percent: 1.41%
Votes: 648

Total votes: 45,949

Sampson County

Thom Tillis (REP)
Percent: 58.25%
Votes: 16,521

Cal Cunningham (DEM)
Percent: 38.15%
Votes: 10,818

Shannon W. Bray (LIB)
Percent: 2.24%
Votes: 636

Kevin E. Hayes (CON)
Percent: 1.36%
Votes: 385

Total votes: 28,360

Surry County

Thom Tillis (REP)
Percent: 70.17%
Votes: 25,475

Cal Cunningham (DEM)
Percent: 25.53%
Votes: 9,267

Shannon W. Bray (LIB)
Percent: 2.84%
Votes: 1,030

Kevin E. Hayes (CON)
Percent: 1.46%
Votes: 531

Total votes: 36,303

Union County

Thom Tillis (REP)
Percent: 61.34%
Votes: 79,645

Cal Cunningham (DEM)
Percent: 34.73%
Votes: 45,096

Shannon W. Bray (LIB)
Percent: 2.90%
Votes: 3,765

Kevin E. Hayes (CON)
Percent: 1.03%
Votes: 1,338

Total votes: 129,844

Washington County

Thom Tillis (REP)
Percent: 42.05%
Votes: 2,584

Cal Cunningham (DEM)
Percent: 54.17%
Votes: 3,329

Shannon W. Bray (LIB)
Percent: 2.08%
Votes: 128

Kevin E. Hayes (CON)
Percent: 1.69%
Votes: 104

Total votes: 6,145

Wilson County

Thom Tillis (REP)
Percent: 46.13%
Votes: 18,642

Cal Cunningham (DEM)
Percent: 50.59%
Votes: 20,445

Shannon W. Bray (LIB)
Percent: 2.19%
Votes: 885

Kevin E. Hayes (CON)
Percent: 1.09%
Votes: 439

Total votes: 40,411

Alleghany County

Thom Tillis (REP)
Percent: 67.95%
Votes: 4,082

Cal Cunningham (DEM)
Percent: 26.42%
Votes: 1,587

Shannon W. Bray (LIB)
Percent: 3.20%
Votes: 192

Kevin E. Hayes (CON)
Percent: 2.43%
Votes: 146

Total votes: 6,007

Beaufort County

Thom Tillis (REP)
Percent: 59.31%
Votes: 15,448

Cal Cunningham (DEM)
Percent: 36.24%
Votes: 9,439

Shannon W. Bray (LIB)
Percent: 2.71%
Votes: 706

Kevin E. Hayes (CON)
Percent: 1.74%
Votes: 453

Total votes: 26,046

Buncombe County

Thom Tillis (REP)
Percent: 37.92%
Votes: 60,688

Cal Cunningham (DEM)
Percent: 57.90%
Votes: 92,664

Shannon W. Bray (LIB)
Percent: 3.16%
Votes: 5,054

Kevin E. Hayes (CON)
Percent: 1.02%
Votes: 1,636

Total votes: 160,042

Camden County

Thom Tillis (REP)
Percent: 71.62%
Votes: 4,181

Cal Cunningham (DEM)
Percent: 24.03%
Votes: 1,403

Shannon W. Bray (LIB)
Percent: 3.13%
Votes: 183

Kevin E. Hayes (CON)
Percent: 1.22%
Votes: 71

Total votes: 5,838

Chatham County

Thom Tillis (REP)
Percent: 43.52%
Votes: 21,039

Cal Cunningham (DEM)
Percent: 53.16%
Votes: 25,697

Shannon W. Bray (LIB)
Percent: 2.42%
Votes: 1,171

Kevin E. Hayes (CON)
Percent: 0.89%
Votes: 431

Total votes: 48,338

Cleveland County

Thom Tillis (REP)
Percent: 63.06%
Votes: 32,022

Cal Cunningham (DEM)
Percent: 32.99%
Votes: 16,752

Shannon W. Bray (LIB)
Percent: 2.43%
Votes: 1,235

Kevin E. Hayes (CON)
Percent: 1.51%
Votes: 768

Total votes: 50,777

Currituck County

Thom Tillis (REP)
Percent: 71.29%
Votes: 11,368

Cal Cunningham (DEM)
Percent: 24.14%
Votes: 3,849

Shannon W. Bray (LIB)
Percent: 3.47%
Votes: 554

Kevin E. Hayes (CON)
Percent: 1.10%
Votes: 175

Total votes: 15,946

Duplin County

Thom Tillis (REP)
Percent: 57.75%
Votes: 12,954

Cal Cunningham (DEM)
Percent: 38.73%
Votes: 8,689

Shannon W. Bray (LIB)
Percent: 2.13%
Votes: 477

Kevin E. Hayes (CON)
Percent: 1.39%
Votes: 312

Total votes: 22,432

Franklin County

Thom Tillis (REP)
Percent: 52.94%
Votes: 19,654

Cal Cunningham (DEM)
Percent: 42.18%
Votes: 15,659

Shannon W. Bray (LIB)
Percent: 3.36%
Votes: 1,246

Kevin E. Hayes (CON)
Percent: 1.52%
Votes: 565

Total votes: 37,124

Granville County

Thom Tillis (REP)
Percent: 50.02%
Votes: 15,687

Cal Cunningham (DEM)
Percent: 45.82%
Votes: 14,368

Shannon W. Bray (LIB)
Percent: 2.90%
Votes: 908

Kevin E. Hayes (CON)
Percent: 1.26%
Votes: 396

Total votes: 31,359

Harnett County

Thom Tillis (REP)
Percent: 57.57%
Votes: 33,321

Cal Cunningham (DEM)
Percent: 37.18%
Votes: 21,523

Shannon W. Bray (LIB)
Percent: 3.68%
Votes: 2,128

Kevin E. Hayes (CON)
Percent: 1.57%
Votes: 911

Total votes: 57,883

Hoke County

Thom Tillis (REP)
Percent: 40.40%
Votes: 8,638

Cal Cunningham (DEM)
Percent: 53.62%
Votes: 11,466

Shannon W. Bray (LIB)
Percent: 4.25%
Votes: 909

Kevin E. Hayes (CON)
Percent: 1.73%
Votes: 370

Total votes: 21,383

Johnston County

Thom Tillis (REP)
Percent: 58.82%
Votes: 64,822

Cal Cunningham (DEM)
Percent: 36.09%
Votes: 39,771

Shannon W. Bray (LIB)
Percent: 3.59%
Votes: 3,953

Kevin E. Hayes (CON)
Percent: 1.51%
Votes: 1,667

Total votes: 110,213

Lincoln County

Thom Tillis (REP)
Percent: 69.66%
Votes: 34,673

Cal Cunningham (DEM)
Percent: 25.83%
Votes: 12,858

Shannon W. Bray (LIB)
Percent: 2.98%
Votes: 1,482

Kevin E. Hayes (CON)
Percent: 1.53%
Votes: 763

Total votes: 49,776

Mcdowell County

Thom Tillis (REP)
Percent: 69.87%
Votes: 15,894

Cal Cunningham (DEM)
Percent: 26.09%
Votes: 5,934

Shannon W. Bray (LIB)
Percent: 2.48%
Votes: 565

Kevin E. Hayes (CON)
Percent: 1.56%
Votes: 354

Total votes: 22,747

Moore County

Thom Tillis (REP)
Percent: 61.71%
Votes: 35,682

Cal Cunningham (DEM)
Percent: 33.95%
Votes: 19,633

Shannon W. Bray (LIB)
Percent: 3.04%
Votes: 1,760

Kevin E. Hayes (CON)
Percent: 1.29%
Votes: 748

Total votes: 57,823

Onslow County

Thom Tillis (REP)
Percent: 60.21%
Votes: 42,868

Cal Cunningham (DEM)
Percent: 32.79%
Votes: 23,344

Shannon W. Bray (LIB)
Percent: 5.09%
Votes: 3,627

Kevin E. Hayes (CON)
Percent: 1.91%
Votes: 1,363

Total votes: 71,202

Pender County

Thom Tillis (REP)
Percent: 61.20%
Votes: 20,660

Cal Cunningham (DEM)
Percent: 33.39%
Votes: 11,272

Shannon W. Bray (LIB)
Percent: 3.77%
Votes: 1,274

Kevin E. Hayes (CON)
Percent: 1.64%
Votes: 553

Total votes: 33,759

Polk County

Thom Tillis (REP)
Percent: 60.35%
Votes: 7,394

Cal Cunningham (DEM)
Percent: 36.21%
Votes: 4,436

Shannon W. Bray (LIB)
Percent: 2.33%
Votes: 286

Kevin E. Hayes (CON)
Percent: 1.11%
Votes: 136

Total votes: 12,252

Rockingham County

Thom Tillis (REP)
Percent: 61.23%
Votes: 28,971

Cal Cunningham (DEM)
Percent: 34.22%
Votes: 16,189

Shannon W. Bray (LIB)
Percent: 3.11%
Votes: 1,473

Kevin E. Hayes (CON)
Percent: 1.44%
Votes: 680

Total votes: 47,313

Scotland County

Thom Tillis (REP)
Percent: 48.86%
Votes: 7,066

Cal Cunningham (DEM)
Percent: 47.37%
Votes: 6,850

Shannon W. Bray (LIB)
Percent: 2.23%
Votes: 322

Kevin E. Hayes (CON)
Percent: 1.54%
Votes: 223

Total votes: 14,461

Swain County

Thom Tillis (REP)
Percent: 55.17%
Votes: 3,846

Cal Cunningham (DEM)
Percent: 38.67%
Votes: 2,696

Shannon W. Bray (LIB)
Percent: 4.27%
Votes: 298

Kevin E. Hayes (CON)
Percent: 1.88%
Votes: 131

Total votes: 6,971

Vance County

Thom Tillis (REP)
Percent: 37.84%
Votes: 7,876

Cal Cunningham (DEM)
Percent: 58.84%
Votes: 12,247

Shannon W. Bray (LIB)
Percent: 2.19%
Votes: 455

Kevin E. Hayes (CON)
Percent: 1.14%
Votes: 237

Total votes: 20,815

Watauga County

Thom Tillis (REP)
Percent: 44.60%
Votes: 14,216

Cal Cunningham (DEM)
Percent: 50.80%
Votes: 16,193

Shannon W. Bray (LIB)
Percent: 3.57%
Votes: 1,138

Kevin E. Hayes (CON)
Percent: 1.04%
Votes: 331

Total votes: 31,878

Yadkin County

Thom Tillis (REP)
Percent: 74.86%
Votes: 14,798

Cal Cunningham (DEM)
Percent: 20.42%
Votes: 4,036

Shannon W. Bray (LIB)
Percent: 2.80%
Votes: 553

Kevin E. Hayes (CON)
Percent: 1.93%
Votes: 381

Total votes: 19,768

Anson County

Thom Tillis (REP)
Percent: 44.84%
Votes: 4,981

Cal Cunningham (DEM)
Percent: 51.82%
Votes: 5,756

Shannon W. Bray (LIB)
Percent: 1.84%
Votes: 204

Kevin E. Hayes (CON)
Percent: 1.50%
Votes: 167

Total votes: 11,108

Bertie County

Thom Tillis (REP)
Percent: 37.11%
Votes: 3,597

Cal Cunningham (DEM)
Percent: 60.09%
Votes: 5,825

Shannon W. Bray (LIB)
Percent: 1.63%
Votes: 158

Kevin E. Hayes (CON)
Percent: 1.18%
Votes: 114

Total votes: 9,694

Burke County

Thom Tillis (REP)
Percent: 65.51%
Votes: 28,934

Cal Cunningham (DEM)
Percent: 29.68%
Votes: 13,108

Shannon W. Bray (LIB)
Percent: 2.96%
Votes: 1,309

Kevin E. Hayes (CON)
Percent: 1.85%
Votes: 819

Total votes: 44,170

Carteret County

Thom Tillis (REP)
Percent: 67.47%
Votes: 28,492

Cal Cunningham (DEM)
Percent: 28.00%
Votes: 11,823

Shannon W. Bray (LIB)
Percent: 3.11%
Votes: 1,312

Kevin E. Hayes (CON)
Percent: 1.42%
Votes: 601

Total votes: 42,228

Cherokee County

Thom Tillis (REP)
Percent: 73.98%
Votes: 12,048

Cal Cunningham (DEM)
Percent: 22.04%
Votes: 3,589

Shannon W. Bray (LIB)
Percent: 2.51%
Votes: 408

Kevin E. Hayes (CON)
Percent: 1.48%
Votes: 241

Total votes: 16,286

Columbus County

Thom Tillis (REP)
Percent: 59.62%
Votes: 15,563

Cal Cunningham (DEM)
Percent: 36.77%
Votes: 9,599

Shannon W. Bray (LIB)
Percent: 1.98%
Votes: 516

Kevin E. Hayes (CON)
Percent: 1.62%
Votes: 424

Total votes: 26,102

Dare County

Thom Tillis (REP)
Percent: 56.98%
Votes: 13,581

Cal Cunningham (DEM)
Percent: 38.95%
Votes: 9,284

Shannon W. Bray (LIB)
Percent: 3.21%
Votes: 766

Kevin E. Hayes (CON)
Percent: 0.86%
Votes: 204

Total votes: 23,835

Durham County

Thom Tillis (REP)
Percent: 19.10%
Votes: 34,152

Cal Cunningham (DEM)
Percent: 77.40%
Votes: 138,429

Shannon W. Bray (LIB)
Percent: 2.82%
Votes: 5,041

Kevin E. Hayes (CON)
Percent: 0.68%
Votes: 1,224

Total votes: 178,846

Gaston County

Thom Tillis (REP)
Percent: 60.77%
Votes: 69,398

Cal Cunningham (DEM)
Percent: 34.67%
Votes: 39,595

Shannon W. Bray (LIB)
Percent: 3.11%
Votes: 3,548

Kevin E. Hayes (CON)
Percent: 1.45%
Votes: 1,660

Total votes: 114,201

Greene County

Thom Tillis (REP)
Percent: 52.78%
Votes: 4,591

Cal Cunningham (DEM)
Percent: 44.17%
Votes: 3,842

Shannon W. Bray (LIB)
Percent: 2.17%
Votes: 189

Kevin E. Hayes (CON)
Percent: 0.89%
Votes: 77

Total votes: 8,699

Haywood County

Thom Tillis (REP)
Percent: 59.26%
Votes: 21,502

Cal Cunningham (DEM)
Percent: 36.14%
Votes: 13,113

Shannon W. Bray (LIB)
Percent: 2.98%
Votes: 1,081

Kevin E. Hayes (CON)
Percent: 1.62%
Votes: 587

Total votes: 36,283

Hyde County

Thom Tillis (REP)
Percent: 53.26%
Votes: 1,315

Cal Cunningham (DEM)
Percent: 43.54%
Votes: 1,075

Shannon W. Bray (LIB)
Percent: 2.15%
Votes: 53

Kevin E. Hayes (CON)
Percent: 1.05%
Votes: 26

Total votes: 2,469

Jones County

Thom Tillis (REP)
Percent: 55.85%
Votes: 3,046

Cal Cunningham (DEM)
Percent: 38.94%
Votes: 2,124

Shannon W. Bray (LIB)
Percent: 3.34%
Votes: 182

Kevin E. Hayes (CON)
Percent: 1.87%
Votes: 102

Total votes: 5,454

Macon County

Thom Tillis (REP)
Percent: 65.35%
Votes: 13,408

Cal Cunningham (DEM)
Percent: 30.45%
Votes: 6,248

Shannon W. Bray (LIB)
Percent: 2.54%
Votes: 521

Kevin E. Hayes (CON)
Percent: 1.66%
Votes: 340

Total votes: 20,517

Mecklenburg County

Thom Tillis (REP)
Percent: 33.18%
Votes: 186,693

Cal Cunningham (DEM)
Percent: 62.34%
Votes: 350,775

Shannon W. Bray (LIB)
Percent: 3.51%
Votes: 19,764

Kevin E. Hayes (CON)
Percent: 0.97%
Votes: 5,440

Total votes: 562,672

Nash County

Thom Tillis (REP)
Percent: 47.63%
Votes: 24,719

Cal Cunningham (DEM)
Percent: 49.09%
Votes: 25,474

Shannon W. Bray (LIB)
Percent: 2.15%
Votes: 1,117

Kevin E. Hayes (CON)
Percent: 1.13%
Votes: 585

Total votes: 51,895

Orange County

Thom Tillis (REP)
Percent: 24.68%
Votes: 20,862

Cal Cunningham (DEM)
Percent: 72.42%
Votes: 61,214

Shannon W. Bray (LIB)
Percent: 2.32%
Votes: 1,961

Kevin E. Hayes (CON)
Percent: 0.58%
Votes: 488

Total votes: 84,525

Perquimans County

Thom Tillis (REP)
Percent: 64.87%
Votes: 4,817

Cal Cunningham (DEM)
Percent: 32.08%
Votes: 2,382

Shannon W. Bray (LIB)
Percent: 1.87%
Votes: 139

Kevin E. Hayes (CON)
Percent: 1.19%
Votes: 88

Total votes: 7,426

Randolph County

Thom Tillis (REP)
Percent: 73.52%
Votes: 53,357

Cal Cunningham (DEM)
Percent: 22.01%
Votes: 15,973

Shannon W. Bray (LIB)
Percent: 2.89%
Votes: 2,097

Kevin E. Hayes (CON)
Percent: 1.58%
Votes: 1,143

Total votes: 72,570

Rowan County

Thom Tillis (REP)
Percent: 63.85%
Votes: 46,446

Cal Cunningham (DEM)
Percent: 31.09%
Votes: 22,615

Shannon W. Bray (LIB)
Percent: 3.10%
Votes: 2,254

Kevin E. Hayes (CON)
Percent: 1.97%
Votes: 1,433

Total votes: 72,748

Stanly County

Thom Tillis (REP)
Percent: 71.17%
Votes: 23,891

Cal Cunningham (DEM)
Percent: 23.96%
Votes: 8,045

Shannon W. Bray (LIB)
Percent: 2.86%
Votes: 961

Kevin E. Hayes (CON)
Percent: 2.01%
Votes: 674

Total votes: 33,571

Transylvania County

Thom Tillis (REP)
Percent: 55.48%
Votes: 11,209

Cal Cunningham (DEM)
Percent: 40.38%
Votes: 8,158

Shannon W. Bray (LIB)
Percent: 2.73%
Votes: 552

Kevin E. Hayes (CON)
Percent: 1.42%
Votes: 286

Total votes: 20,205

Wake County

Thom Tillis (REP)
Percent: 37.05%
Votes: 232,388

Cal Cunningham (DEM)
Percent: 58.63%
Votes: 367,718

Shannon W. Bray (LIB)
Percent: 3.54%
Votes: 22,230

Kevin E. Hayes (CON)
Percent: 0.78%
Votes: 4,893

Total votes: 627,229

Wayne County

Thom Tillis (REP)
Percent: 53.10%
Votes: 29,174

Cal Cunningham (DEM)
Percent: 42.82%
Votes: 23,528

Shannon W. Bray (LIB)
Percent: 2.58%
Votes: 1,419

Kevin E. Hayes (CON)
Percent: 1.50%
Votes: 823

Total votes: 54,944

Yancey County

Thom Tillis (REP)
Percent: 62.39%
Votes: 7,038

Cal Cunningham (DEM)
Percent: 33.98%
Votes: 3,833

Shannon W. Bray (LIB)
Percent: 2.22%
Votes: 250

Kevin E. Hayes (CON)
Percent: 1.41%
Votes: 159

Total votes: 11,280

bottom of page