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

MA-3 · House

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

Safe D
100%
Lori Trahan
Democrat
0%
Gary Grossi
Republican
Expected margin and its 90% range
R+40R+20R+10EvenD+10D+20D+40D+31.9
What moves this district (points of margin; blue toward the Democrat, red toward the Republican)
2024 presidential lean+16.3
2024 House lean+11.0
PAC money balance+8.8
experience gap+6.3
2022 House lean+1.2

The district, in brief

Massachusetts's 3rd district is in northeastern and central Massachusetts and includes Lowell and Lawrence; the map in force was first used in 2022 and was not redrawn for this cycle. The text gives no presidential result for the district.

The incumbent is Lori Trahan, the Democratic nominee, who was re-elected uncontested in 2024 and took 99.2% (69,670 votes) in this year's Democratic primary with no named opponent. The Republican nominee is Gary Grossi, a retired U.S. Army colonel, who took 99.0% (22,068 votes) in his primary. As of March 31, 2026 Trahan had raised $1,295,055 with $1,683,185 on hand; Grossi had raised $4,550 with $4,529 on hand. Independent Dennis R. Conlon is listed as declared, and computer programmer Kevin Ades did not qualify.

Every rater that gives a call lists the seat as D: Decision Desk HQ (July 14, 2026), the Cook Political Report (February 6, 2025), Inside Elections (March 7, 2025) and Sabato's Crystal Ball (July 15, 2025); Silver Bulletin appears with a date of August 20, 2026 but no rating. The text records no district 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

Incumbent
Lori Trahan (D)The incumbent is Lori Trahan, who was re-elected uncontested in 2024.
Open seat
noLori Trahan, incumbent U.S. representative
Democratic nominee
Lori Trahannominee1: Lori Trahan party1: Democratic Party (United States)
Republican nominee
Gary GrossiGary Grossi, retired U.S. Army colonel
Democrat's background
incumbent U.S. representativeLori Trahan, incumbent U.S. representative
Republican's background
retired U.S. Army colonelGary Grossi, retired U.S. Army colonel
Last result
Trahan re-elected uncontested in 2024who was re-elected uncontested in 2024
Primaries
Trahan took 99.2% (69,670 votes) in the Democratic primary with no named opponent; Grossi took 99.0% (22,068 votes) in the Republican primary with no named opponentcandidate: Lori Trahan (incumbent) votes: 69,670 percentage: 99.2
Raters
Decision Desk HQ: D (July 14, 2026); Cook: D (February 6, 2025); Inside Elections: D (March 7, 2025); Sabato's Crystal Ball: D (July 15, 2025); Silver Bulletin listed with date August 20, 2026 but no ratingDecision Desk HQ D July 14, 2026 The Cook Political Report D February 6, 2025
Money
As of March 31, 2026: Trahan raised $1,295,055, spent $1,067,021, $1,683,185 on hand; Grossi raised $4,550, spent $21, $4,529 on handLori Trahan (D) $1,295,055 $1,067,021 $1,683,185
Also
Independent Dennis R. Conlon is listed as declared; computer programmer Kevin Ades did not qualify*Dennis R. Conlon ====Did not qualify==== *Kevin Ades, computer programmer

Not in the source: The text gives no presidential result for the district in any year.; No general-election ratings finer than 'D' are given, and the Silver Bulletin row carries a date but no rating.; No district polls appear in the text, and the model's basis is prior only with no district polls.; No fundraising figures later than March 31, 2026 are given for either nominee.

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

Lori Trahan (Democrat), in this chamber since 2019, 4 terms. Committees: House Committee on Energy and Commerce.

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
PresidentD+31.3D+37.0D+29.8

A shift of 1.5 points toward the Republicans 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 degree38%59% / 47%37%42%
White, degree29%80% / 73%44%80%
Black4%29% / 36%3%92%
Hispanic18%36% / 24%9%69%
Asian8%26% / 22%4%80%
Other / multiracial3%59% / 50%3%70%

Of about 534,060 adults 25 and over. In 2020 the district voted 64.0% Democratic (two-party) for president. With the same preferences and a 2022-style midterm turnout, it would vote 65.1% Democratic: the midterm electorate alone moves the margin 2.3 points toward Democrats. 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
Trahan, Lori (DEM)
incumbent
$1,639,978$1,773,38950%0%$0$0
Grossi, Gary J. (REP)
challenger
$7,121$5,7758%56%$0$0

FEC bulk candidate summaries through August 12, 2026; no independent expenditures reported for or against any candidate, which usually means nobody outside the district thinks it is in play.

The district in numbers

MeasureDistrictNationDifference
Bachelor's degree or higher, 25+39.6%34.9%+4.6 pts
White, non-Hispanic61.1%58.2%+2.9 pts
Black, non-Hispanic4.0%12.0%-8.0 pts
Hispanic or Latino22.2%19.0%+3.2 pts
Asian, non-Hispanic7.8%5.8%+2.1 pts
Foreign-born20.2%13.9%+6.3 pts
Median age39.239.2-0.0
Median household income$97,616$84,362$+13,254
Median home value$466,900$379,737$+87,163
Owner-occupied homes63.9%65.1%-1.2 pts
Unemployment, July 2026 (BLS county data)4.5%4.4%+0.1 pts
Change in unemployment, past 12 months-0.1 pts——
Change since the last election (24 months)+0.2 pts——
Unemployment (ACS)5.6%5.2%+0.4 pts
Federal government workers2.0%2.6%-0.6 pts
Work from home15.0%13.5%+1.6 pts
Households on SNAP17.3%11.8%+5.5 pts
Households with Social Security income28.4%31.2%-2.8 pts
Households with public assistance income5.1%2.7%+2.4 pts
Moved in from another state, past year1.4%2.3%-0.9 pts
Gini index0.500.440.06
Per-capita personal income (BEA), 2024$98,140$73,248$+24,892
Per-capita income growth since 2019, nominal, 202429.1%32.0%-2.8 pts
Government and other transfers, share of income, 202412.7%19.6%-6.9 pts
Social Security, share of income, 20223.8%5.8%-2.0 pts
Medicare, share of income, 20223.1%4.5%-1.4 pts
Medicaid, share of income, 20222.5%4.0%-1.5 pts
SNAP, share of income, 20220.4%0.6%-0.2 pts
Earned Income Tax Credit, share of income, 20220.1%0.4%-0.2 pts
Veterans' benefits, share of income, 20220.3%0.9%-0.6 pts
Federal civilian jobs, share of all jobs, 20220.8%1.3%-0.5 pts
Military jobs, share of all jobs, 20220.4%0.9%-0.6 pts

ACS 5-year 2023, the Census Bureau's own tabulation of this district (118th Congress lines). 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?

>99%
Lori Trahan
run 6f211e6f · house_district_prior/0.2.0 · as of 2026-10-02
+31.8
expected margin, D-R
run 6f211e6f · house_district_prior/0.2.0 · as of 2026-10-02

The 90% interval runs from +17.8 to +45.9 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 (D+20.9): 16.3 pts toward the Democrat; 2024 House lean: 11.0 pts toward the Democrat; PAC money balance: 8.8 pts toward the Democrat; experience gap (+4 levels, D minus R): 6.3 pts toward the Democrat; 2022 House lean (D+29.5): 1.2 pts toward the Democrat.

How sure is it, and of what?

Total sd 8.51 points, made of the seat's own volatility 90%, correlated polling error 10%. 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 6f211e6f-2bdc-4dda-8f72-81fc628dab0b, 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).