Skip to main content
Saturday, April 25, 2026
Charlotte, NC|Independent Local News

The Charlotte Mercury

We sat through the meeting. You're welcome.

Sections
Under Construction
Government

Carla Cunningham Leaves the Democratic Party. Her Caucus Decision Now Decides Whether Speaker Hall's 'Working Supermajority' Hardens.

After losing her March primary to Rev. Dr. Rodney Sadler by nearly 48 points, the seven-term Charlotte representative re-registered Unaffiliated on Friday. She has not said whether she will caucus with Republicans. Speaker Destin Hall's veto-override math doesn't need her to.

Jack Beckett· Staff Writer
||6 min read

Carla Cunningham, the seven-term Democratic state representative for North Carolina House District 106 in northern Mecklenburg County, re-registered as Unaffiliated on Friday, April 24, 2026, ending a thirteen-year run as a member of the party that elected her in 2012 and broke with her in 2026.

The change appears in the State Board of Elections voter file. The General Assembly's website still listed her as a Democrat as of Friday evening. WBTV first reported the registration change after pulling the public record. WUNC published her statement.

"I have been a Democrat all my life," Cunningham said in a written statement, "but I came to realize that I want to serve the people, not a party. Being an independent thinker does not align with party politics, and I will never compromise the needs of my constituents to satisfy a political agenda."

The chair of the North Carolina Democratic Party, Anderson Clayton, replied on social media the same evening: "Don't let the door hit ya where the good lord split ya, as they say!"

That exchange is the surface of the story. The structural part is the math.

The vote that cost her the nomination

On July 29, 2025, the North Carolina House voted 72–48 to override Gov. Josh Stein's veto of House Bill 318, the "Criminal Illegal Alien Enforcement Act," now codified as Session Law 2025-85. The bill requires North Carolina sheriffs to detain individuals for up to 48 hours past their otherwise-scheduled release in order to facilitate cooperation with U.S. Immigration and Customs Enforcement. Stein vetoed it on the grounds that the detainment requirement was unconstitutional.

Every House Republican voted to override. Cunningham was the only Democrat who joined them. The 72-vote threshold is exactly the three-fifths supermajority required by the state constitution. Without her, the override would have failed by one vote.

In her floor speech that day, Cunningham defended her vote with the assertion that "all cultures are not equal" and that immigrants must assimilate. The phrase did the political work that no procedural argument could have. By the time she sat back down, she had given her future primary opponents both a substantive disagreement and a slogan.

In a December 15, 2025 interview with WFAE, Cunningham said her emotions had been heightened during the speech and that, on reflection, she would now describe cultures as "not the same" rather than "not equal." She said she was not anti-immigrant. She said she would still vote to override the veto.

She also crossed party lines on a bill repealing Duke Energy's 2030 carbon-reduction target and on a measure giving the legislature final say over high-impact state administrative rules. Each of those override votes, like HB 318, expanded Republican legislative power against a Democratic governor.

The party stopped paying for the canvas

On January 20, 2026, The Assembly reported that the North Carolina Democratic Party had quietly stopped giving four lawmakers access to VoteBuilder, the party's voter-contact database. VoteBuilder is the file that tells a candidate which doors to knock and which voters to call. State parties almost always give it away free. Withholding it is not a financial sanction so much as a procedural one — without VoteBuilder, the basic mechanics of a primary campaign run through more expensive substitutes or stop running at all.

The four lawmakers cut off were Cunningham; Rep. Nasif Majeed of Mecklenburg; Rep. Shelly Willingham of Edgecombe; and former Rep. Michael Wray of Northampton. All four had voted to override at least one Stein veto. NCDP Chair Anderson Clayton told The Assembly the policy was about ensuring candidates "represent their districts on key issues" and that the state party expects its members "to uphold Democratic values." The policy was not announced publicly when it took effect.

Gov. Stein endorsed Rev. Dr. Rodney Sadler — a Baptist minister, Union Theological Seminary professor, and longtime community activist — over Cunningham in HD-106. The Charlotte Mercury covered that endorsement on January 27.

The primary was not close

On March 3, 2026, Mecklenburg Democrats voted in HD-106. Three names appeared on the ballot. The result, drawn from the State Board of Elections returns and reported by WUNC, WBTV, Carolina Journal, and NC Newsline:

  • Rev. Dr. Rodney Sadler — 7,716 votes (69.96 percent)
  • Carla Cunningham — 2,401 votes (21.77 percent)
  • Vermanno Bowman — 912 votes (8.27 percent)

That is a 48-point margin. Sadler did not narrowly defeat Cunningham. He did not even win on a plurality. He won outright by more than three to one.

No Republican filed in HD-106. Sadler is therefore expected to win the November 2026 general election unopposed and take the seat in January 2027. All four Democrats whose VoteBuilder access the state party had revoked lost their primaries. Whether that is causation, correlation, or something both can fairly claim credit for is a separate argument; the count is the count.

The math in Raleigh

Republicans currently hold 71 of the 120 seats in the North Carolina House. The state constitution sets the override threshold at three-fifths — 72 votes. Republicans are one seat short of the configuration that would let them override Stein's vetoes without any Democratic help.

That gap has not slowed Speaker Destin Hall (R-Caldwell), who has publicly described the Republican configuration as a "working supermajority." The framing is honest about the math: the GOP does not need to pick up a 72nd Republican seat as long as it can pick up at least one Democratic vote on each override, every time. Cunningham was that vote on HB 318. Other Democrats have been that vote on other bills.

The Mecklenburg-area parallel is Rep. Tricia Cotham of HD-112, who switched from Democrat to Republican on April 5, 2023, restoring the formal House supermajority in a single afternoon. Cotham then provided the deciding vote to override Gov. Roy Cooper's veto of a 12-week abortion ban that May. Cotham still holds the seat in 2026.

The Cunningham move is not a Cotham move. Cunningham did not join the Republican Party. She went to Unaffiliated, which is a category, not a caucus.

What she has not decided

Cunningham's statement did not address her caucus plans. A spokesperson told WUNC she had not yet decided whether to continue caucusing with Democrats, caucus with Republicans, or sit independently for the remaining nine months of her term. She remains in office through January 2027.

If she stays in the Democratic caucus, the practical change in Raleigh is small. Her votes on contested overrides have already been a known quantity for the last year, and her party affiliation never determined them. The official roster will read 70 Democrats and one Unaffiliated, but the vote tallies will not move.

If she joins the Republican caucus, the working supermajority hardens. The party would not technically reach the 72-seat threshold — Cotham's 2023 switch did, because the seat changed parties — but Republican leadership would have a member who attends caucus meetings, takes whip counts, and is part of the room when overrides are sequenced. That is a different kind of vote than the one she has been casting.

Her statement reiterated her view that undocumented immigrants strain limited resources and that government priorities should center on struggling Americans before extending to people who entered the country unlawfully. House Republicans noticed.

Rep. Jake Johnson (R-HD-113), in a public statement Friday, called Cunningham "a steadfast fighter and strong voice for her constituents despite unthinkable outside pressures" and praised her work on the House Government Operations Committee, where, he wrote, she "demands transparency and accountability regardless of party." The Mecklenburg County Republican Party publicly welcomed the move.

What to watch

The 2025–2027 short session is in progress. Stein will veto bills. Republicans will attempt overrides. Each attempt is a separate roll call. The only data point that matters is how Cunningham votes on each one and how she explains it.

The longer-term question is whether the NCDP's January policy of withholding VoteBuilder from dissenting members will be repeated, expanded, or quietly retired. The state party can fairly point to all four targeted lawmakers losing their primaries as evidence that the discipline worked. It can also fairly be asked whether the underlying Mecklenburg politics had already foreordained those losses, and whether the policy mostly accelerated something the voters were going to do anyway.

The vote we know about is the same. The math doesn't need her. The remaining question is whether she stops being one Democratic crossover and starts being a more reliable one.


The Charlotte Mercury covered the Stein endorsement of Sadler in January, the property-tax legislation Cunningham's House committee is now considering in April, and the contested Senate District 26 primary that turns on the same kind of intra-party fight in March. Companion takeaways for our neighborhood publications run today at Strolling Ballantyne, Strolling Firethorne, and Fourth Ward Charlotte.

Jack Beckett

Staff Writer

Staff writer for Mercury Local covering government, elections, public safety, and development across multiple publications. Beckett has filed more than 600 stories on local policy, crime, zoning, and civic accountability in Connecticut and the Carolinas.

More in Government