2026 election for Pennsylvania's 7th District
U.S. House · Pennsylvania
Bob Brooks (D) won with 56.1% of the vote, defeating Ryan Mackenzie (R) by 12.2 points, flipping a seat Republicans held.
Source: civicAPI unofficial results and race callsUpdated Nov 7, 2026, 7:00 PM ET
The seat over time
D − R margin in this seat's races around 2026
The seat's recent races
Source: Past results: 99chambers results archive (MEDSL, Klarner, state election offices)
Money in this race
Each line compares the two sides on one scale: their campaigns, and outside groups spending for them or against their opponent.
Top funders
Outside groups and direct contributors, ranked by what they put in; the color shows which candidate it helps.
| HMPAgainst Mackenzie | $7.7M | |
| Stronger Together PAFor Brooks | $1.7M | |
| SAFETY & AFFORDABILITY PAC INC.Against Brooks | $1.2M | |
| NO GOING BACK PAC INC.For Mackenzie, against Brooks | $663.3K | |
| America PACFor Mackenzie, against Brooks | $634.3K | |
| LCV Victory FundAgainst Mackenzie | $584.3K | |
| Progressive Turnout ProjectFor Brooks | $515K | |
| LEAD LEFT PACAgainst Brooks | $312.4K | |
| J Street Action FundAgainst Mackenzie | $278.6K | |
| JOBS AND DEMOCRACY PACFor Brooks | $263.3K | |
| AMERICA FIRST AGRICULTURE ACTION INC.For Mackenzie | $239.1K | |
| American Federation of State County & Municipal Employees PEOPLEAgainst Mackenzie | $232.9K | |
| SEIU COPE (Service Employees International Union Committee On Political Education)For Brooks | $227.7K |
Show 5 more
Campaign money: FEC, through Oct 14, 2026. Outside spending: independent expenditures by super PACs, parties and other groups, primary and general, as reported to the FEC through Nov 1, 2026, updated Nov 3, 2026. It leaves out spending not reported as independent expenditures (most issue ads and much dark money), so it understates all outside money. The FEC lists only each candidate's largest spenders; totals count every spender.
Source: FEC campaign filings; FEC independent expendituresUpdated Nov 3, 2026, 1:05 AM ET
Polls against the result
The final average had Brooks ahead by 5.2. Brooks won by 12.2: a 7.0-point miss toward Republicans.
- Poll with Brooks ahead
- Poll with Mackenzie ahead
- Final polling average
- Result
| Pollster | Dates | Sample | Brooks | Mackenzie | Margin | Adjusted | Miss vs result | Grade | Release |
|---|---|---|---|---|---|---|---|---|---|
| The New York Times/Siena University for The Philadelphia Inquirer | Oct 16–Oct 22 | 401 LV | 49.25 | 44.15 | D+5.1 | D+4.9 | −7.1 | A | nytimes.com ↗ |
| Muhlenberg College | Oct 6–Oct 15 | 529 LV | 49 | 43 | D+6 | D+6.1 | −6.2 | A | muhlenberg.edu ↗ |
| Franklin & Marshall College | Sep 9–Sep 20 | 350 RV | 45 | 40 | D+5 | D+2.6 | −7.2 | B− | wgal.com ↗ |
| GBAO for House Majority PACD-sponsored | Jun 29–Jul 2 | — LV | 47 | 43 | D+4 | D+4.2 | −8.2 | C | notus.org ↗ |
Adjusted: after correcting for the pollster's house effect and likely-voter screens. Miss: the poll's margin minus the result; + means the poll leaned Democratic. Grade: the pollster's accuracy in past elections, A+ to D (pollster ratings).
Source: Each poll's release, via The New York Times poll listsUpdated Oct 22, 2026
Pre-election forecast (final, Nov 3)
Our model's last run before Election Day, Nov 3, 2026. It no longer updates.
- Bob Brooks
- 85%
- Ryan Mackenzie
- 15%
- Projected margin
- D+5.6
The candidates
Changes to this page
- · Race called for Brooks.