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

Iowa · Senate

election 2026-11-03 · forecast as of 2026-10-01 · margins and probabilities are for Josh Turek

Toss-up
42%
Josh Turek
Democrat
58%
Ashley Hinson
Republican
Expected margin and its 90% range
R+40R+20R+10EvenD+10D+20D+40R+1.1

Who is running?

Josh Turek (Democratic), Ashley Hinson (Republican), Thomas Laehn (Libertarian). The margin below is Josh Turek minus the other candidate in the main contest; the rest are on the ballot and not in it.

The race, in brief

Iowa elects a senator on November 3, 2026, for an open seat: Republican incumbent Joni Ernst is not seeking a third term. The text describes Iowa as trending Republican since voting for Obama in 2008 and 2012, with Donald Trump winning it by 8 points in 2020 and 13 points in 2024; Ernst won in 2014 and was re-elected in 2020 by 6.5 points over Theresa Greenfield. Democrats have not won a Senate election in the state since 2008. The state profile on file gives a non-Hispanic white share of 0.8, a college share of 0.3 and a median age of 38.6.

The Republican nominee is U.S. Representative Ashley Hinson, endorsed by Donald Trump, who beat former state senator Jim Carlin in the June 2 primary; the lead gives her 73.9% while the results table shows 74.2% (153,059 votes). The Democratic nominee is state representative Josh Turek, who won 62.6% over state senator Zach Wahls. As of April 18, 2026 Hinson had raised $7,267,266 with $6,516,143 on hand. Ernst's May 2025 remark "Well, we all are going to die" at a town hall on Medicaid cuts drew criticism before she announced her retirement in September 2025.

The text lists no rater predictions and no general-election polls.

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

Open seat
yesRepublican incumbent Joni Ernst is not seeking a third term.
Democratic nominee
Josh TurekTurek won the Democratic nomination with 62.6% of the vote over state senator Zach Wahls.
Republican nominee
Ashley HinsonEndorsed by President Donald Trump, Hinson won the Republican nomination with 73.9% of the vote over former state senator Jim Carlin.
Democrat's background
state representative from the 20th district (2023–present)Josh Turek, state representative from the 20th district (2023–present)
Republican's background
U.S. representative from Iowa's 2nd district (2021–present)Ashley Hinson, U.S. representative from 2 (2021–present)
Presidential vote
Trump won Iowa by 8 points in 2020 and by 13 points in 2024Republican nominee Donald Trump won Iowa in 2020 by 8 percentage points, and in 2024 grew his margin to 13 percentage points.
Last result
Ernst re-elected in 2020 over Theresa Greenfield by 6.5 pointsShe was re-elected in 2020 defeating Theresa Greenfield by 6.5 percentage points in what was expected to be a dead heat.
Primaries
June 2 primaries: results table has Hinson 153,059 votes (74.2%) to Carlin 53,196 (25.8%), while the lead says 73.9%; Turek beat Zach Wahls with 62.6%candidate: Ashley Hinson votes: 153,059 percentage: 74.2
Money
As of April 18, 2026: Hinson raised $7,267,266 with $6,516,143 on hand; Carlin raised $293,966 with $14,578 on handAshley Hinson (R) $7,267,266 $2,679,198 $6,516,143
Also
Ernst's May 2025 town-hall remark "Well, we all are going to die" on Medicaid cuts drew criticism; she announced in September 2025 she would not seek reelectionErnst announced in September 2025 that she would not seek reelection.
Hinson is endorsed by Donald Trump, Joni Ernst, Attorney General Brenna Bird and Rep. Zach NunnZach Nunn, U.S. representative from 3 (2023–present) (running for re-election; endorsed Hinson)
Withdrawn Democrats Nathan Sage and J. D. Scholten endorsed Turek; Turek is also endorsed by VoteVets and Defend The VoteJ. D. Scholten, state representative from the 1st district (2023–present) and nominee for 4 in 2018 and 2020 (endorsed Turek)
Only poll in the text is a Republican primary poll: JMC Analytics (R), May 27–28, 2026, 550 adults, Hinson 58%, Carlin 19%, undecided 23%JMC Analytics (R) May 27–28, 2026 550 (A) ± 4.2% |58% 19% 23%
Democrats have not won a Senate election in Iowa since 2008; first open Senate race concurrent with an open governor's race since 1968Democrats have not won a Senate election in Iowa since 2008.

Not in the source: No rater predictions (Cook, Sabato, etc.) in the text.; No general-election polls in the text; the only poll is a Republican primary poll.; No fundraising figures for Turek or other Democrats.; The lead (73.9%) and the results table (74.2%) disagree on Hinson's primary share.; The facts give no forecast basis, so it is not known whether the model uses any polls.

Read from the district's section of Wikipedia's state page (CC BY-SA), archived as 71f7c9691675; 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

Chuck Grassley (Republican), in this chamber since 1981, 8 terms, class 3 (term ends 2029). Committees: Senate Committee on Agriculture, Nutrition, and Forestry; Senate Committee on Finance; Senate Committee on the Budget; Senate Committee on the Judiciary (Chairman); Joint Committee on Taxation; United States Senate Caucus on International Narcotics Control.

Joni Ernst (Republican), in this chamber since 2015, 2 terms, class 2 (term ends 2027). Committees: Senate Committee on Agriculture, Nutrition, and Forestry; Senate Committee on Armed Services; Senate Committee on Homeland Security and Governmental Affairs; Senate Committee on Small Business and Entrepreneurship (Chairman).

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.

The money

CandidateRaisedCash on handPAC shareSelf-fundedOutside $ forOutside $ against
Arenholz, Ashley Hinson (REP)
open seat · not on our roster
$10,217,845$6,749,49121%0%$4,319,917$3,839,911
Turek, Joshua (DEM)
open seat
$6,276,527$2,362,3146%0%$10,011,735$213,032
Ernst, Joni K (REP)
incumbent · not on our roster
$2,002,592$1,934,47832%0%$0$15,475
Sage, Nathan (DEM)
open seat · not on our roster
$1,433,544$561%0%$0$0
Carlin, James (REP)
open seat · not on our roster
$494,420$5,2660%71%$0$0
Norris, Jackie (DEM)
open seat · not on our roster
$363,563$01%2%$0$0
Scholten, James (DEM)
open seat · not on our roster
$213,415$8,1445%0%$0$0
Laehn, Thomas Raymond Dr. (LIB)
open seat · not on our roster
$31,908$8,3340%1%$0$0

FEC bulk candidate summaries through June 30, 2026; $18,400,070 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.

How it has voted for president

Two-party margin201620202024
PresidentR+10.1R+8.4R+13.4

A shift of 3.3 points toward the Republicans from 2016 to 2024. county returns summed; 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.

The state in numbers

MeasureStateAverage stateDifference
Bachelor's degree or higher, 25+, 202330.9%34.0%-3.1 pts
White, non-Hispanic, 202383.1%66.3%+16.8 pts
Black, non-Hispanic, 20233.8%10.1%-6.3 pts
Hispanic or Latino, 20237.0%12.9%-5.9 pts
Asian, non-Hispanic, 20232.4%4.4%-1.9 pts
Foreign-born, 20235.7%9.6%-3.9 pts
Median age, 202338.639.1-0.48
Median household income, 2023$73,147$77,633$-4,486
Median home value, 2023$195,900$314,132$-118,232
Owner-occupied homes, 202371.5%67.4%+4.2 pts
Unemployment (ACS), 20233.6%4.8%-1.2 pts
Federal government workers, 20231.8%3.0%-1.2 pts
Work from home, 202310.4%12.3%-1.8 pts
Households on SNAP, 20239.2%11.1%-1.9 pts
Households with Social Security income, 202331.5%32.1%-0.6 pts
Households with public assistance income, 20232.1%2.6%-0.5 pts
Moved in from another state, past year, 20232.3%2.9%-0.6 pts
Gini index, 20230.440.47-0.02
Unemployment, latest month (BLS), 2026-073.5%4.0%-0.5 pts
Change in unemployment, past 12 months, 2026-07-0.3 pts-0.1 pts-0.2 pts
Change since the last election (24 months), 2026-07-0.1 pts-0.1 pts-0.0 pts
Per-capita personal income (BEA), 2024$65,225$70,662$-5,437
Per-capita income growth since 2019, nominal, 202431.3%32.4%-1.1 pts
Government and other transfers, share of income, 202420.0%19.4%+0.7 pts
Social Security, share of income, 20226.5%6.1%+0.4 pts
Medicare, share of income, 20224.3%4.4%-0.0 pts
Medicaid, share of income, 20223.6%3.8%-0.2 pts
SNAP, share of income, 20220.3%0.6%-0.3 pts
Earned Income Tax Credit, share of income, 20220.3%0.3%-0.1 pts
Veterans' benefits, share of income, 20220.7%0.9%-0.2 pts
Federal civilian jobs, share of all jobs, 20220.8%1.5%-0.7 pts
Military jobs, share of all jobs, 20220.5%1.2%-0.6 pts

ACS 5-year state tables; BLS county unemployment and BEA county income, transfers and jobs summed to the state. Every figure is a named column of a named public-domain table, archived before it was read.

Who is ahead, and by how much?

-1.1
NOWCAST
run b2e118ed · single_race_latent/0.8.1 · as of 2026-10-01
-1.8
ELECTION-DAY
run f27ff0c3 · single_race_latent/0.8.1 · as of 2026-10-01

Two numbers because they answer two questions. The nowcast is where opinion stands; the election-day forecast is where it is likely to end up.

How likely is each to win?

41%
Josh Turek
run b2e118ed · single_race_latent/0.8.1 · as of 2026-10-01
39%
Josh Turek
run f27ff0c3 · single_race_latent/0.8.1 · as of 2026-10-01

Monte Carlo error is ±0.2 points. A change smaller than that is simulation noise rather than news, and this page will not describe it as movement.

How wide is the range?

Nowcast: 90% of simulations fall between -10.0 and +7.8 points. Election day: -12.8 to +9.1. The election-day interval is 4.1 points wider, which is the 33 days of movement still to come.

What is the uncertainty made of?

Total sd 6.99 points, made of race-specific polling error 51%, drift to election day 33%, correlated polling error 12%, latent opinion 4%. The decomposition is stored with the forecast rather than reconstructed, so a probability whose dominant input is a placeholder is visibly that.

What evidence is this built on?

23 polls, most recent 2026-09-29. 42% verified against a primary source.

What changed since the last run?

tied-11+9single_race_latent/0.3.0single_race_latent/0.4.0single_race_latent/0.5.0single_race_latent/0.6.0single_race_latent/0.7.0single_race_latent/0.8.0single_race_latent/0.8.124 Sep1 Oct

Shaded band is the 90% interval, line is the central estimate, positive is Josh Turek ahead of Ashley Hinson. Over 16 stored forecasts the central estimate moved -2.2 points. There were 7 specification changes (marked on the axis) and 3 new polls arrived over this window — so the movement mixes new evidence with changes to the model.

Since 2026-10-01: margin +0.00 points, win probability +0.0 points, on +0 polls.

Not answered here: why it changed. Splitting a move into new polls, time and specification means re-running the earlier model against the later inputs -- two extra posterior fits -- so it is computed on a cadence (scripts/attribute_forecasts.py) rather than while you wait. This pair of runs has not been decomposed yet. The size of the move is shown; the cause is not guessed at.

How has this model done before?

Measured on 230 forecasts across 230 races in cycles 2016,2018,2020,2022,2024: mean absolute error 4.56 points, Brier score 0.0543. The nominal 90% interval contained the result 94% of the time, the 80% interval 84%, and the 50% interval 47%. Read that with care: a national polling miss moves every race in a cycle at once, so the sample size for a question about the intervals is 5 cycle(s), not 230 forecasts. Per cycle -- bias +1.644 pts; 2016: n=43 bias=+4.68 cov90=0.860; 2018: n=63 bias=-0.52 cov90=1.000; 2020: n=35 bias=+5.44 cov90=0.886; 2022: n=54 bias=-0.60 cov90=0.944; 2024: n=35 bias=+1.48 cov90=1.000.

Where did every number come from?

Nowcast run b2e118ed-b181-4be4-948b-70f6ffcb0968 and election-day run f27ff0c3-eefd-4d48-8262-0e08bebcafe3, model single_race_latent/0.8.1 at commit bdf7e83107c17a2399efe61a44ef1bbee48f9284, seeds 20260924 and 20260924.