← Election Series · All house races

Our verdict

LiberalMind endorses Marie Gluesenkamp Perez

Election Day is Tuesday, November 3, 2026. Washington votes by mail, and ballots are already in voters' hands. This is the whole race — the records, the claims against each candidate, and what the sources actually show. Read the research, and decide which flaw you can live with.

The setup

Washington's 3rd District — southwest Washington, centered on Vancouver — is one of only 23 Democratic-held House districts that Donald Trump won in 2024. He has carried it in all three of his presidential runs (50.3%–47.0% in 2024); Cook's Partisan Voting Index is R+2. Rep. Marie Gluesenkamp Perez (D) has held it anyway: 50.1%–49.3% in 2022 and 51.7%–47.9% in 2024, both times against Joe Kent, both times while Trump was winning her district.

Washington's top-two primary changed the shape of the race. In the certified August 4, 2026 primary (certified by the Secretary of State on August 18), state Sen. John Braun (R) finished first with 85,064 votes, 39.66%; Gluesenkamp Perez finished second with 78,025 votes, 36.38% — a sitting incumbent, second in her own primary. Progressive Democrat Brent Hennrich finished third and is not on the general-election ballot — exactly two candidates are, by the structure of the top-two system. Hennrich's share is reported three ways in the sources (15.3% on the early count; 16.7% and 16.8% in later accounts, as the certified denominator grew) — we print the variance rather than pick one, because his exact number is not yet pulled from the Secretary of State's certified statement. What is not in doubt is why Braun finished first: Democrats collectively took about 55–56% of the primary vote to Republicans' 42–43%. The Democratic vote split; the Republican vote did not.

And Hennrich is not reconciling. He told the Washington State Standard he will not support Perez — "I want her out of office" — and in October: "Absolutely no way, shape or form will I support her"; he plans to write in another candidate and says he would be comfortable with Braun winning, though he will not vote for him.

The raters: Cook Lean D (Oct 23, 2026), Sabato's Crystal Ball Lean D (Oct 20), Inside Elections Tossup (Oct 15). The polls are a tie by every instrument: DHM Research for Oregon Public Broadcasting (Oct 1, 543 likely voters, ±4.2) has Braun 46, Perez 44 — and 48–47 with undecideds pushed; the Northwest Progressive Institute's autumn survey (a progressive-aligned sponsor, labeled as such) has Perez 45, Braun 44. The money is the strangest split in the tranche: through October 14, Perez raised $9.47 million to Braun's $3.25 million — 2.9-to-1 — yet Braun ends with roughly $671,900 on hand against her $234,500. She outraises him three-to-one and he out-saves her three-to-one; her burn rate is the story of those figures. Outside, a Trump-tied super PAC (No Going Back PAC) had spent $1.7 million against her by October 1, against $354,000 of Democratic outside spending. Speaker Johnson came to Vancouver in August and called the race a choice "between common sense and crazy."

Marie Gluesenkamp Perez (Democratic)

The record: Perez co-owns an auto repair shop (in Portland, across the river — an attack point since 2022) and lives in Skamania County. Her campaign calls her "one of the most bipartisan lawmakers in the House." What makes this race hard is that the roll calls underneath the slogan are specific, checkable, and expensive for a Democrat to cast:

And the other side of her ledger, printed with the same care: she voted against the One Big Beautiful Bill, including its roughly $140 billion enforcement allocation; she called for Secretary Noem to step down after the January 24, 2026 killing of Alex Pretti, calling the shooting "un-American"; she supports abortion access as, per KGW, "a tenet of her campaign"; she voted in September 2026 for a War Powers resolution to withdraw U.S. forces from hostilities with Iran ("I've voted six times to do that already"). And she is, mechanically, an organizing vote for a Democratic House majority — the fact her whole independent record is spent arguing against, and the fact that organizes the House anyway.

The worst claims — and the record:

Claim: she helped write her party's far-left 2020 platform. KVI reported she "helped craft" the 2020 Washington State Democratic Party platform, adopted 1,052–43, which called for shifting money from police to alternative response, decriminalizing drugs and sex work, phasing out most new gas cars, and government-funded healthcare regardless of immigration status. The platform document is real and checkable; her personal drafting role rests on a single conservative outlet's reporting and is unverified in our pass. It is printed at that strength — an opposition claim with a real document underneath and an unproven personal role.

Claim (from her challenger): she "had passed only one bill in four years, to name a post office." Braun's debate line. Her enacted-bill count was not independently compiled in our research; it is printed as his characterization, not as a finding.

Pros: The strongest documented record of in-service breaks toward this district's values of any Democrat in this series — on voter-ID/citizenship proof, on enforcement funding cast against her own caucus mid-crisis, on borders, on student debt. Twice elected in a three-time Trump district. $9.47 million raised.

Cons: She finished second in her own primary, with a sixth of her party's voters choosing a challenger who now says he'd be comfortable with her losing — her independence is priced by her own base as betrayal. She enters the final stretch with $234,500 on hand after burning more than $9 million. The organizing vote remains: whatever she votes against, her seat votes for the majority that sets the floor.

The flaw, plainly: Perez's flaw is caucus math in its purest House form — a reliable organizing vote for her party's majority, cast by a member who votes against that party on many of its signature bills. There is no conduct flaw and no failed signature claim in her own record in our research. The question her race poses is the standing one this publication's doctrine exists to answer, and it is genuinely close — which is why it is priced in OUR CALL rather than assumed.

John Braun (Republican)

The record: Braun is the deepest governing résumé among this tranche's challengers: state senator for the 20th District since 2013, Senate minority leader, former chair of Senate Ways and Means and lead budget negotiator/architect of the 2017–19 state budget and its property-tax changes in the McCleary school-funding settlement. A retired Navy captain with 31 years in the submarine force, he grew Braun Northwest, a Chehalis emergency-vehicle manufacturer, to 350 employees. He voted against the state's new high-earners income tax in the 2026 session (SB 6346, the 9.9% tax on income over $1 million; passed 27–21 on March 11, 2026) and attacked it in the debate as "wrong-headed… clearly unconstitutional." He publicly supports the federal tax-and-spending law his opponent voted against. Trump endorsed him in April 2026 — in terms ("a true Radical Left Extremist with a Track Record that REEKS") that are the endorser's rhetoric and are contradicted in their plain sense by the documented cross-party record above; we print the endorsement as a fact and the label as rhetoric. Former Rep. Jaime Herrera Beutler, who held this seat for twelve years, backs him and calls the race a "jump ball." A Braun-specific statement on ICE and federal immigration-enforcement operations was not located in our research — his documented emphases are supporting law enforcement and his role in restoring criminal penalties for drug possession after the State v. Blake decision; the absence is printed, not filled in.

The worst claim — and the record:

Claim: he architected a tax deal that cut his own company's taxes. The DCCC's backup document charges that Braun was "the architect of the largest property tax increase in Washington state history — $1.6 billion" in the 2017 McCleary budget deal "while in the very same budget deal he voted to cut his own company's taxes by 40 percent," that he "sponsored legislation to lower the property tax bill on land he personally owns," and that his company "has taken more than $2.5 million in taxpayer subsidies." This is the most serious unadjudicated charge in the tranche, and we price it exactly at its sourcing: it rests on an opposition research document; neither side's dollar figures ($1.6 billion / 40 percent / $2.5 million) were independently verified from the underlying budget and tax records in our research pass. The counter-record is also on file: former Sen. Tim Sheldon — a Democrat who served with Braun — argues the 2017 legislation shifted school funding from local levies to the state and reduced property-tax rates for many, especially rural, homeowners, that the spending growth attacked in the ads occurred under later Democratic majorities Braun fought, and that the "72% pay raise" charge fails because an independent citizens' commission sets legislative pay, which Braun publicly opposed raising. Sheldon's rebuttal answers the property-tax and pay-raise charges. In the material retrieved, it does not address the company-tax-cut charge or the sponsored-land-bill charge. The 2017 budget documents would decide this; nobody in this race's coverage has produced them, and neither have we. Voters should hold the charge as unproven — and should know which half of it stands unrebutted.

Pros: Fourteen years of state service and four-plus as his caucus's leader; a Ways and Means chair's command of budgets; a 31-year Navy career and a 350-employee in-district business; first place in the certified primary; more cash on hand than the incumbent; the pre-Kent Republican coalition (Herrera Beutler) reunified behind him.

Cons: The self-dealing file above — unverified, specific, and half-unanswered. He has never won a district-wide race in WA-03 itself; his Senate district is a slice of it. An anti-abortion voting record running against the district median as his opponent's campaign defines it. No located position on federal immigration enforcement, the era's signature federal question, in a race for federal office.

The flaw, plainly: Braun's flaw is the unadjudicated self-dealing charge — personal-conduct species if it verifies, and currently unproven at this pass's sourcing level, with a partial rebuttal on the record. Absent that verification, his proven record is a party-line state conservative record priced against a ticket-splitting district. An endorsement from this publication must be earned with diligence on the endorsee's own file; on the signature deal of his career, the file is open in a way we cannot close and will not wave through.

OUR CALL

LiberalMind endorses Marie Gluesenkamp Perez.

The criteria, applied plainly, because this is the race where they collide. The Manchin test asks whether a Democrat has documented breaks toward our values, in service, in substance. Perez's file is the strongest answer any Democrat in this series has produced: the SAVE Act twice, when only four or five of her caucus would; the Laken Riley Act twice; a DHS funding vote cast with seven Democrats against her own party's shutdown posture in the middle of the Minneapolis crisis; Title 42 and Remain in Mexico in her own stated positions; the student-debt vote with one other Democrat. Those are not candidacy positions or office courtesies. They are roll calls, on the exact questions this publication prices highest, cast at cost — the cost is visible in her own primary, where a sixth of her party's voters tried to end her career over them.

Against that file stands a proven and able in-tent candidate. John Braun finished first in the certified primary, ahead of the incumbent, and his state-senate record is printed above at full strength. The one dark item in his file — the charge that the 2017 budget deal he architected cut his own company's taxes — is unproven opposition research: specific, sourced to a document we could read but not verify, and answered by his defenders on every point except that one. Our doctrine is explicit, and it binds in both directions: an unproven charge is not a flaw. It does not convict Braun, and it does not decide this race. If the 2017 records ever close that file against him, future races price differently; on this record, the charge prices at zero, for him and against him.

So the call rests where the doctrine puts it: on the exception itself. We have failed Democrats whose break was a single vote, whose marquee break was vetoed by their own hand, and whose breaks were apologized for the moment they cost something. Perez's breaks are none of those — they are repeated, they are on the decisive questions, they were cast at visible cost in her own primary, and she has never taken one of them back. That is what the Manchin test exists to find. We price the cost honestly: she is a Democrat, her majority still organizes against our values on the days she doesn't break, and at House weight — a stalled House under a held Senate is not a lost House — that organizing vote is a real price, not a footnote. But the exception was written for exactly this record: a member who votes our values when her own party punishes her for it. We endorse the breaks, not the party — and if the breaks stop, the exception stops with them.

This race is one of hundreds in LiberalMind's Election 2026 coverage. For the complete breakdown — every race, claim by claim — go to liberalmindhq.com.

Vote early. Research your candidates. Choose the best moderates, whatever their party — no extremism from either side. And encourage your friends and family to do the same.


Sources

Election result — November 4, 2026

Winner: Marie Gluesenkamp Perez (Democratic) — called by the Associated Press. This result was appended on November 4, 2026 (results wave 2); the original article above is unchanged, exactly as published before Election Day.

AI-assisted article — but the sources are human, and the facts are very real.

← Back to the Election Series