FutureBallotU.S. election forecasts, with every number traced to its source

NC-10 · House

election-day forecast · ground-up model · as of 2026-10-02

Likely R
14%
Ashley Bell
Democrat
86%
Pat Harrigan
Republican
Expected margin and its 90% range
R+40R+20R+10EvenD+10D+20D+40R+9.9
What moves this district (points of margin; blue toward the Democrat, red toward the Republican)
2024 presidential lean−3.4
2024 House lean−2.8
experience gap−2.2
religion: mainline+0.9
religion: evangelical+0.6

The district, in brief

North Carolina's 10th is on lines first used in 2026. The text describes it as all of Catawba, Iredell, Lincoln and Yadkin counties and most of Forsyth County, and gives no presidential result for it.

The incumbent is Republican Pat Harrigan, elected with 57.5% in 2024, who won renomination with 87.7% over Matt Sin. The Democratic nominee is Ashley Bell, a physician associate, who won a six-way primary with 47.3% over West Caudle (15.6%), Harry Morley (11.4%), Marcus Pearson (9.9%), Mir Yarfitz (9.6%) and the 2024 nominee Ralph Scott Jr. (6.3%). Libertarian Steve Feldman, a research scientist and the party's 2024 nominee, is also standing. As of June 30, 2026 Harrigan had raised $1,081,821 with $451,275 on hand; Bell had raised $84,024 with $26,174 on hand and Feldman $36,857 with $1,342 on hand.

Every rater listed calls the seat R: Decision Desk HQ (July 14, 2026), the Cook Political Report (February 6, 2025), Inside Elections (March 7, 2025) and Sabato's Crystal Ball (April 10, 2025). One district poll is recorded: Ragnar Research Partners, a Republican firm (March 10–12, 2026, 400 LV), had Harrigan 52%, Bell 37%, and a generic Republican 51% to a generic Democrat's 38%.

A paragraph quoting a model forecast from the day this brief was written is omitted; the current forecast is at the top of this page.

The facts, each beside its sentence

Incumbent
Pat Harrigan (R)The incumbent is Republican Pat Harrigan, who was elected with 57.5% of the vote in 2024.
Open seat
noThe incumbent is Republican Pat Harrigan
Democratic nominee
Ashley Bell*Ashley Bell, physician associate
Republican nominee
Pat Harrigan*Pat Harrigan, incumbent U.S. representative
Democrat's background
physician associate*Ashley Bell, physician associate
Republican's background
incumbent U.S. representative*Pat Harrigan, incumbent U.S. representative
Last result
Harrigan elected with 57.5% in 2024who was elected with 57.5% of the vote in 2024
Lines
Lines first used in 2026 per the facts; the text describes the district as all of Catawba, Iredell, Lincoln and Yadkin counties and most of Forsyth CountyThe 10th district includes all of Catawba, Iredell, Lincoln, and Yadkin counties, as well as most of Forsyth County.
Primaries
Republican: Harrigan 87.7%, Matt Sin 12.3%. Democratic: Bell 47.3%, West Caudle 15.6%, Harry Morley 11.4%, Marcus Pearson 9.9%, Mir Yarfitz 9.6%, Ralph Scott Jr. (2024 nominee) 6.3%candidate: Ashley Bell votes: 19472 percentage: 47.3
Raters
Decision Desk HQ: R (July 14, 2026); Cook: R (Feb 6, 2025); Inside Elections: R (Mar 7, 2025); Sabato's Crystal Ball: R (Apr 10, 2025)Decision Desk HQ R July 14, 2026 The Cook Political Report R February 6, 2025
Money
As of June 30, 2026: Harrigan raised $1,081,821 with $451,275 on hand; Bell raised $84,024 with $26,174 on hand; Steve Feldman raised $36,857 with $1,342 on hand| Pat Harrigan (R) $1,081,821 $683,387 $451,275
Also
One district poll: Ragnar Research Partners (R), March 10–12, 2026, 400 LV: Harrigan 52%, Bell 37%, undecided 11%; the same poll had a generic Republican 51%, generic Democrat 38%Ragnar Research Partners (R) March 10–12, 2026 400 (LV)
Libertarian Steve Feldman, a research scientist and the party's 2024 nominee here, is also on the ballot*Steve Feldman, research scientist and nominee for this district in 2024

Not in the source: The text gives no presidential result; the facts carry a 2024 two-party baseline on the current lines but no candidate percentages.; The one poll is from March 2026 and from a Republican firm; no sponsor is stated.; Ratings are given only as R, with no Lean/Likely/Safe gradation.; The endorsement sections are empty.; The model's basis says no district polls; the text carries one.

Read from the district's section of Wikipedia's state page (CC BY-SA), archived as 828929623813; written by claude-fable-5-1 (batch reader) on 2026-09-30 and checked mechanically: every quote occurs verbatim in the archived text, every number in the brief occurs in the inputs. No probability here is the reader's.

Who holds the seat now

Pat Harrigan (Republican), in this chamber since 2025, 1 term. Committees: House Committee on Science, Space, and Technology; House Committee on Armed Services.

From the congress-legislators dataset (CC0), archived as ae8cb9477c48. For a Senate race this lists both of the state's senators; the one whose term ends in the election year holds the seat on the ballot. For a House district redrawn for 2026 it is the member elected under the old lines with this number, who may be running elsewhere; the dossier above names who is running here.

How it has voted for president

Two-party margin201620202024
PresidentR+22.5R+20.1R+21.3

A shift of 1.2 points toward the Democrats from 2016 to 2024. county returns placed on the current lines by 2020 block population; MEDSL county file (2016), an MIT-licensed county file (2020, checked against certified state results) and MEDSL precinct returns (2024). For a district split across counties this is an estimate, and where the state published the exact 2024 figure for these lines, that exact figure is the one the model uses.

Who are the voters?

Group (adults 25+)Share of adultsTurnout 2020 / midtermShare of a midterm electorateEst. Democratic share, 2020
White, no degree48%57% / 41%45%11%
White, degree24%78% / 64%35%59%
Black15%62% / 40%14%90%
Hispanic8%24% / 17%3%53%
Asian2%49% / 16%1%62%
Other / multiracial2%59% / 42%2%46%

Of about 515,284 adults 25 and over. In 2020 the district voted 41.8% Democratic (two-party) for president. With the same preferences and a 2022-style midterm turnout, it would vote 41.6% Democratic: the midterm electorate alone moves the margin 0.4 points toward Republicans. Group shares are estimated from how results vary across the state's census tracts (ecological inference, anchored to Pew's 2020 validated-voter figures) and calibrated to this district's actual 2020 vote; turnout is the Census survey's state rate by race and national rate by education, whose state samples carry margins of several points.

Not answered here: how each group will vote in 2026. These are 2020 preferences; this profile is description, not yet an input to the forecast.

The money

CandidateRaisedCash on handPAC shareSelf-fundedOutside $ forOutside $ against
Harrigan, Pat (REP)
incumbent
$1,081,821$451,27533%0%$0$0
Bell, Ashley (DEM)
challenger
$84,024$26,1741%18%$56$0
Caudle, West (DEM)
challenger · not on our roster
$38,693$1,3261%41%$0$0
Feldman, Steven (LIB)
challenger
$36,857$1,3420%99%$0$0
Yarfitz, Mir (DEM)
challenger · not on our roster
$27,125$-2,3300%27%$0$0
Mchenry, Patrick Timothy (REP)
incumbent · not on our roster
$21,615$1,555,3770%0%$0$0
Morley, Harry Clare Mr Jr (DEM)
challenger · not on our roster
$14,729$12,0110%22%$0$0
Sin, Matthew (REP)
challenger · not on our roster
$6,840$4,9230%100%$0$0
Helm, Marshall Todd (CON)
open seat · not on our roster
$876$2910%100%$0$0

FEC bulk candidate summaries through June 30, 2026; $56 of independent expenditures for or against these candidates this cycle (FEC Schedule E, types 24E and 24A), which is the parties' and outside groups' own revealed view of whether this seat is in play.

The district in numbers

MeasureDistrictNationDifference
Bachelor's degree or higher, 25+31.5%34.9%-3.5 pts
White, non-Hispanic66.6%58.2%+8.4 pts
Black, non-Hispanic15.6%12.0%+3.7 pts
Hispanic or Latino11.5%19.0%-7.5 pts
Asian, non-Hispanic2.5%5.8%-3.3 pts
Foreign-born7.5%13.9%-6.4 pts
Median age40.539.21.3
Median household income$74,138$84,362$-10,224
Median home value$262,906$379,737$-116,831
Owner-occupied homes68.4%65.1%+3.3 pts
Unemployment, July 2026 (BLS county data)3.7%4.4%-0.7 pts
Change in unemployment, past 12 months-0.3 pts——
Change since the last election (24 months)-0.4 pts——
Unemployment (ACS)4.7%5.2%-0.5 pts
Federal government workers1.2%2.6%-1.4 pts
Work from home11.5%13.5%-2.0 pts
Households on SNAP11.9%11.8%+0.1 pts
Households with Social Security income33.5%31.2%+2.3 pts
Households with public assistance income1.8%2.7%-0.8 pts
Moved in from another state, past year2.7%2.3%+0.4 pts
Gini index0.400.44-0.04
Per-capita personal income (BEA), 2024$64,438$73,248$-8,810
Per-capita income growth since 2019, nominal, 202432.4%32.0%+0.4 pts
Government and other transfers, share of income, 202421.7%19.6%+2.1 pts
Social Security, share of income, 20227.1%5.8%+1.3 pts
Medicare, share of income, 20225.2%4.5%+0.7 pts
Medicaid, share of income, 20222.9%4.0%-1.0 pts
SNAP, share of income, 20220.7%0.6%+0.1 pts
Earned Income Tax Credit, share of income, 20220.4%0.4%+0.0 pts
Veterans' benefits, share of income, 20221.0%0.9%+0.1 pts
Federal civilian jobs, share of all jobs, 20220.4%1.3%-0.9 pts
Military jobs, share of all jobs, 20220.3%0.9%-0.6 pts

ACS 5-year 2023, assembled from census tracts by the 2020 population of their blocks inside the current lines, because the Bureau has not tabulated these lines; medians are population-weighted means of tract medians. Unemployment is the BLS county series placed on the district by block population, not seasonally adjusted, so changes are same-month comparisons. Income, transfers and jobs are BEA county accounts placed the same way, compared with the average district. Every other figure is a named column of a named table in the Bureau's summary file, archived before it was read. This is what a reader knows about a district before looking at a poll; the model does not yet use it, and whether it should is a registered question.

Who is favoured, and by how much?

86%
Pat Harrigan
run 0b33151b · house_district_prior/0.2.0 · as of 2026-10-02
-9.8
expected margin, D-R
run 0b33151b · house_district_prior/0.2.0 · as of 2026-10-02

The 90% interval runs from -24.9 to +5.3 points, D-R. It is wide because this district has never been polled.

What is this built on?

A model trained on every contested House race 2012-2024 predicts this district's lean from its own record: presidential and House results on the current lines, incumbency, both candidates' prior offices, outside and party money before 1 October, demographics and public-assistance shares from the Census release before the election, local unemployment and income, and religious tradition. The national margin comes from presidential approval, the economy, the midterm penalty and the generic ballot corrected for its measured lean. Draws share national and state errors, so the seat total and this district come from the same simulation.

Not answered here: district polls, which are not yet folded in.

Why does the model say this?

Each figure is how far this district's predicted lean moves when that one feature is set to the typical value across 2026 districts, everything else held: 2024 presidential lean (R+16.4): 3.4 pts toward the Republican; 2024 House lean: 2.8 pts toward the Republican; experience gap (-4 levels, D minus R): 2.2 pts toward the Republican; religion: mainline (14.4%): 0.9 pts toward the Democrat; religion: evangelical (31.2%): 0.6 pts toward the Democrat.

How sure is it, and of what?

Total sd 9.14 points, made of the seat's own volatility 91%, correlated polling error 9%. The decomposition is stored with the forecast rather than reconstructed, so a probability whose dominant input is a placeholder is visibly that.

Not answered here: a nowcast. 'If ballots were cast today' needs something that observes today, and for a House district nothing does. Publishing the election-day figure under both labels would make one forecast look like two.

How was this number made?

Run 0b33151b-a949-47f1-b845-564833a2b74d, house_district_prior/0.2.0, as of 2026-10-02. Promoted by a pre-registered gate: on 2016-2022 its Brier score was 0.036 against 0.049 for the previous method, and on a single 2024 run 0.023 against 0.032 (experiments/district_gate_result.md, with an independent review).