This is the 2020 race. The latest: 2026 →

2020Final results

2020 election for U.S. Senate in North Carolina

U.S. Senate · North Carolina

Thom Tillis (R) won with 48.7% of the vote, defeating Cal Cunningham (D) by 1.7 points.

Thom TillisRepublican · winner
48.7%5,331,237
46.9%5,141,374
Shannon W. BrayLibertarian
3.1%343,160
Kevin E. HayesConstitution
1.2%136,389
10,952,160 votes

Source: MIT Election Data and Science LabUpdated Oct 1, 2026, 10:09 AM ET

The seat over time

D − R margin in this seat's races around 2020

Races before and after

EvenR+6.71996R+8.62002D+8.52008R+1.62014R+1.72020D+19.62026

Source: MIT Election Data and Science LabUpdated Oct 1, 2026, 10:09 AM ET

Money in this race

Each line compares the two campaigns on one scale.

Cal CunninghamThom Tillis
$52.6M
Raised by the campaign
$23.3M
$52.4M
Spent by the campaign
$24.5M
$173.7K
Cash on hand
$834.9K

Campaign money: FEC, through Dec 31, 2020.

Source: FEC campaign filingsUpdated Dec 31, 2020

The candidates

Thom Tillis (R)Cal Cunningham (D)

Also on the ballot: Shannon W. Bray (Libertarian), 3.1%; Kevin E. Hayes (Constitution), 1.2%