Breaking down the ballot: NC State Senate and House
Add Axios as your preferred source to
see more of our stories on Google.

Photo: Al Drago/Bloomberg via Getty Images
A handful of North Carolina legislative races this year could tilt power in Raleigh, and some of the biggest battles are in Charlotte's suburbs.
Why it matters: The results of state races could either embolden Republicans β who hold a near supermajority β or help Democrats regain some leverage and strengthen Gov. Josh Stein's veto.
State of play: Overriding the governor's veto takes 72 of 120 House members and 30 of 50 senators.
- The GOP currently has a supermajority in the state Senate with 30 Republican members.
- But it is one seat short of a supermajority in the House, with 71 Republicans, 47 Democrats and two unaffiliated members.
- Republicans have held power in Raleigh since 2010.
How it works: Not every voter will have a contested Senate or House race on their ballot. Some candidates on your ballot may not have an opponent, depending on where you live. Find your district here.
- Some of the state's most closely watched races are in Mecklenburg County, mainly on the outskirts. Where demographics are shifting quickly, it's uncertain which party truly holds the majority.
Here are three of the races we're watching closely.
House District 105: Tricia Cotham (R) vs. Ken McCool (D)

π Southeast Mecklenburg
Democrats are trying yet again to take back this seat from Republican Rep. Tricia Cotham, who famously switched parties in 2023.
- Cotham changed her party in April 2023 only a few months after she was elected as a Democrat, giving Republicans the sole vote they needed to pass stricter abortion laws the next month.
- Last election, Cotham fended off her challenger Nicole Sidman β but only by 213 votes. Now she faces a challenge from former Matthews commissioner Ken McCool.
- Cotham has helped pass laws related to the school choice movement and public safety after the light rail stabbing, including a bill to study involuntary commitment reforms.
- Among his top priorities, McCool lists fully funding public schools. He says he supports the Central Piedmont Community College's responder training facility.
By the numbers: 33% Republican, 24% Democrat and 43% unaffiliated.
Senate District 42: Woodson Bradley (D) vs. Stacie McGinn (R)

π Southeast Mecklenburg
Republican candidate Stacie McGinn, a former Bank of America executive, is challenging incumbent Democratic Sen. Woodson Bradley, a real estate agent, in a rematch.
- Bradley beat McGinn in the last election by 209 votes.
- McGinn has attacked Bradley for her alleged role in a pyramid scheme, a storyline that has become dominant in this race. Bradley, in response, has pushed campaign mailers claiming she was the victim of a company that targeted "single moms in particular," WFAE reported.
- During her first term, Bradley, who says she's a domestic violence survivor, has pushed for a domestic violence offender registry and changes to the state's 12-month separation rule before divorces.
- McGinn is campaigning on school choice and safety, accusing the City of Charlotte of having "embraced the 'Defund the Police' movement."
By the numbers: 30% of registered voters are Republican, 25% Democrat and 44% unaffiliated.
House District 98: Beth Helfrich (D) vs. John Rhodes (R)

π North Mecklenburg
Incumbent Democratic Rep. Beth Helfrich faces a challenge from Republican candidate John Rhodes, who held this seat from 2003 to 2007 until he lost to now-U.S. Sen. Thom Tillis.
- Rhodes refers to himself as a constitutional conservative and patriot, with issues such as protecting women's sports and "the innocent unborn." His platform includes reviewing the "exorbitant" I-77 toll fees.
- Helfrich, a former teacher, has sponsored bills on the right to contraception and IVF and to use school voucher money for subsidized child care instead.
By the numbers: 31% Republican, 24% Democrat and 44% unaffiliated.

π³οΈ Other contested races in Mecklenburg
Senate District 37: Incumbent Sen. Vickie Sawyer (R) vs. Raygan Angel (D)
Senate District 40: Incumbent Sen. Joyce Waddell (D) vs. Bobbie Shields (R)
Senate District 41: Incumbent Sen. Caleb Theodros (D) vs. Kevin Gray (R)
House District 88: Incumbent Rep. Mary Belk (D) vs. Ray Craig (R)
House District 104: Incumbent Rep. Brandon Lofton (D) vs. Trina Boyd (R)


