Paths to win
How Garrity could win, and what each path costs.
Mastriano lost by 792,695 votes in 2022. Replayed on today’s rolls, a tie needs a uniform 7.5-point gain over his two-party share in every county. The polls have her 4.4 points behind him, so the real distance is 11.9 points. Only the maps built on Trump’s 2024 coalition win.
2022 gap
792,695
Mastriano’s losing margin in votes
Swing for a tie
+7.5
points over Mastriano, every county
Poll average
Shapiro +23.3
-4.4 points vs Mastriano
Mastriano → Trump
87%
of the way, in every county, for a tie
Counties carried
54
on the tie path, vs 49 for Mastriano
Every scenario, on one scale
Garrity’s statewide margin in points. Bars right of center are wins. 3 of 11 scenarios win, and every winner borrows Trump’s 2024 shares.
| Perfect storm | Trump 2024 shares everywhere, Trump-won counties at 2024 turnout, Harris-won counties at 2022 turnout. | 3,228,351 | 2,919,940 | +4.9 |
| Trump 2024 map | Garrity matches Trump 2024 two-party share in every county, with 2022 turnout rates. | 2,741,837 | 2,622,411 | +2.2 |
| Three fronts at once | Suburban recovery, rural surge and Philadelphia collapse together; Mastriano 2022 shares and 2022 turnout everywhere else. | 2,910,107 | 2,787,773 | +2.1 |
| Uniform swing of 7.5 pts | Garrity gains the same share in every county over Mastriano. The swing shown is the smallest that ties the race. | 2,682,124 | 2,682,124 | +0.0 |
| Minimum winning path (87% of the way to Trump 2024) | In every county Garrity closes the same fraction of the gap between Mastriano 2022 and Trump 2024. The fraction shown is the smallest that ties the race. | 2,682,124 | 2,682,124 | +0.0 |
| Rural surge | In counties Trump won with 60%+ of the two-party vote, Garrity matches Trump 2024 and turnout hits 2024 presidential levels. Elsewhere 2022 repeats. | 2,742,787 | 3,063,373 | −5.4 |
| Turnout gap only | Mastriano 2022 shares everywhere, but counties he won vote at 2024 presidential rates and counties Shapiro won vote at 2014 rates. | 2,221,133 | 2,626,601 | −8.2 |
| Suburban recovery | Garrity matches Trump 2024 in the four Philly suburbs and Allegheny; Mastriano 2022 shares elsewhere. | 2,435,256 | 2,928,993 | −9.0 |
| Philadelphia collapse | Philadelphia turnout falls to its 2014 rate and votes like 2024 (Harris); everywhere else repeats 2022. | 2,294,977 | 2,960,991 | −12.4 |
| Repeat of 2022 | 2022 county shares and turnout rates on the current voter rolls. | 2,281,456 | 3,082,792 | −14.7 |
| Where the polls have her (-4.4 pts vs Mastriano) | A uniform swing from 2022 that reproduces the current poll average (Shapiro +23.3). | 2,045,741 | 3,318,508 | −23.3 |
Try any of these on the map in the simulator.
Where the 2022 gap came from
Republican net votes by region: Mastriano in 2022, Trump in 2024, and the net Garrity needs on the tie path. Trump’s nets came with presidential turnout, so they are larger in both directions.
- Mastriano 2022
- Trump 2024
- Garrity tie path
Philly suburbs
4 counties, 1,254,683 projected ballots. She needs to net 175,251 more votes here than Mastriano did.
Philadelphia
1 county, 512,370 projected ballots. She needs to net 61,747 more votes here than Mastriano did.
Allegheny
1 county, 563,650 projected ballots. She needs to net 92,451 more votes here than Mastriano did.
Swing metros
5 counties, 492,279 projected ballots. She needs to net 82,104 more votes here than Mastriano did.
Lehigh Valley & Berks
4 counties, 497,880 projected ballots. She needs to net 67,264 more votes here than Mastriano did.
Pittsburgh ring
5 counties, 483,014 projected ballots. She needs to net 92,945 more votes here than Mastriano did.
South-central GOP base
6 counties, 722,492 projected ballots. She needs to net 96,869 more votes here than Mastriano did.
Rural rest
41 counties, 936,154 projected ballots. She needs to net 132,710 more votes here than Mastriano did.
Where the tie-path votes sit
On the smallest uniform path from Mastriano to Trump she still loses Philadelphia, the suburbs and Allegheny, by less. The twelve biggest counties on this list hold 60% of the votes she has to find.
Gain needed over Mastriano
Darker red means a bigger jump in her share of the ballot. Select a county to open its page.
Most votes to find
Net votes she must gain over a repeat of 2022.
| Allegheny | Allegheny | 41.7% | 31.2% | 29.7% | 39.4% | 37.9% | +8.2 | 92,451 |
| Montgomery | Philly suburbs | 40.1% | 31.5% | 29.4% | 38.1% | 36.8% | +7.4 | 63,362 |
| Philadelphia | Philadelphia | 12.0% | 11.6% | 13.1% | 20.0% | 19.1% | +6.0 | 61,747 |
| Bucks | Philly suburbs | 47.7% | 40.1% | 39.2% | 49.6% | 47.8% | +8.7 | 54,616 |
| Westmoreland | Pittsburgh ring | 57.2% | 52.1% | 52.3% | 63.8% | 61.8% | +9.5 | 32,202 |
| Delaware | Philly suburbs | 39.1% | 32.1% | 30.6% | 37.6% | 36.5% | +5.9 | 29,460 |
| York | South-central GOP base | 57.1% | 53.6% | 52.9% | 62.1% | 60.2% | +7.4 | 29,024 |
| Lancaster | South-central GOP base | 59.1% | 50.6% | 50.0% | 57.5% | 56.1% | +6.1 | 28,633 |
| Chester | Philly suburbs | 48.2% | 37.1% | 35.9% | 42.3% | 41.1% | +5.3 | 27,813 |
| Berks | Lehigh Valley & Berks | 49.1% | 45.5% | 46.6% | 55.6% | 53.7% | +7.1 | 22,550 |
| Lehigh | Lehigh Valley & Berks | 45.2% | 38.2% | 39.2% | 48.1% | 46.5% | +7.3 | 20,739 |
| Luzerne | Swing metros | 43.9% | 47.0% | 48.5% | 59.2% | 57.3% | +8.7 | 20,719 |
| Erie | Swing metros | 41.9% | 38.7% | 38.3% | 50.0% | 48.1% | +9.8 | 20,243 |
| Washington | Pittsburgh ring | 51.9% | 49.3% | 50.3% | 62.4% | 60.3% | +10.0 | 18,939 |
| Northampton | Lehigh Valley & Berks | 45.0% | 41.3% | 42.3% | 50.4% | 48.9% | +6.6 | 17,776 |
| Lackawanna | Swing metros | 30.3% | 34.1% | 36.8% | 48.3% | 46.3% | +9.5 | 17,329 |
| Cumberland | South-central GOP base | 58.2% | 47.4% | 45.1% | 54.1% | 52.5% | +7.5 | 17,216 |
| Butler | Pittsburgh ring | 64.0% | 56.8% | 55.2% | 65.7% | 63.7% | +8.5 | 16,705 |
| Dauphin | Swing metros | 49.2% | 39.1% | 38.1% | 46.5% | 45.1% | +7.0 | 16,550 |
| Beaver | Pittsburgh ring | 48.8% | 45.1% | 47.5% | 59.9% | 57.6% | +10.2 | 14,978 |
| Cambria | Rural rest | 45.4% | 55.2% | 57.5% | 69.5% | 67.3% | +9.7 | 10,956 |
| Schuylkill | Rural rest | 45.5% | 54.7% | 59.5% | 70.6% | 68.3% | +8.8 | 10,196 |
| Fayette | Pittsburgh ring | 42.1% | 50.0% | 55.8% | 68.7% | 66.6% | +10.8 | 10,121 |
| Lebanon | South-central GOP base | 62.5% | 57.2% | 56.2% | 65.5% | 63.7% | +7.5 | 8,794 |
| Lawrence | Rural rest | 48.2% | 51.8% | 54.0% | 66.5% | 64.3% | +10.2 | 7,516 |
| Centre | Swing metros | 42.4% | 40.1% | 40.6% | 48.1% | 46.7% | +6.1 | 7,263 |
| Adams | South-central GOP base | 60.1% | 57.6% | 57.7% | 66.4% | 64.8% | +7.0 | 6,944 |
| Blair | Rural rest | 58.1% | 64.7% | 63.2% | 71.4% | 69.8% | +6.6 | 6,895 |
| Franklin | South-central GOP base | 67.5% | 64.9% | 65.4% | 71.1% | 69.9% | +4.5 | 6,258 |
| Monroe | Lehigh Valley & Berks | 43.1% | 40.6% | 43.5% | 49.9% | 48.6% | +5.1 | 6,199 |
| Indiana | Rural rest | 54.4% | 55.0% | 58.6% | 69.2% | 67.3% | +8.7 | 5,690 |
| Armstrong | Rural rest | 61.6% | 62.4% | 64.7% | 76.2% | 74.0% | +9.3 | 5,383 |
| Clearfield | Rural rest | 53.5% | 64.1% | 65.3% | 75.4% | 73.4% | +8.1 | 5,186 |
| Crawford | Rural rest | 56.9% | 58.5% | 59.5% | 69.2% | 67.2% | +7.7 | 5,040 |
| Mercer | Rural rest | 51.6% | 54.0% | 58.0% | 64.6% | 63.3% | +5.3 | 4,831 |
| Somerset | Rural rest | 57.8% | 66.2% | 69.3% | 78.3% | 76.4% | +7.2 | 4,551 |
| Northumberland | Rural rest | 49.6% | 55.9% | 57.9% | 69.5% | 65.2% | +7.3 | 4,542 |
| Carbon | Rural rest | 46.2% | 55.3% | 56.9% | 67.0% | 64.9% | +8.0 | 4,342 |
| Lycoming | Rural rest | 64.6% | 62.3% | 64.3% | 70.3% | 68.9% | +4.6 | 4,296 |
| Perry | Rural rest | 66.6% | 63.5% | 63.9% | 74.1% | 72.2% | +8.3 | 3,534 |
| Columbia | Rural rest | 56.6% | 54.9% | 56.5% | 65.0% | 63.1% | +6.6 | 3,374 |
| Venango | Rural rest | 55.1% | 58.3% | 60.9% | 70.6% | 68.7% | +7.8 | 3,311 |
| Greene | Rural rest | 43.8% | 51.3% | 58.6% | 71.5% | 69.6% | +11.0 | 2,845 |
| Mifflin | Rural rest | 67.7% | 68.4% | 68.0% | 77.9% | 76.0% | +7.9 | 2,734 |
| Clarion | Rural rest | 59.5% | 61.0% | 65.0% | 76.2% | 74.0% | +9.0 | 2,732 |
| Wayne | Rural rest | 55.6% | 58.5% | 61.0% | 68.2% | 66.6% | +5.6 | 2,663 |
| Bradford | Rural rest | 66.1% | 64.0% | 66.1% | 73.5% | 71.6% | +5.4 | 2,649 |
| Jefferson | Rural rest | 63.0% | 70.9% | 69.8% | 78.8% | 76.9% | +7.1 | 2,539 |
| Huntingdon | Rural rest | 56.9% | 66.6% | 68.2% | 76.1% | 74.6% | +6.4 | 2,318 |
| Bedford | Rural rest | 65.4% | 75.6% | 77.4% | 84.0% | 82.6% | +5.2 | 2,315 |
| Elk | Rural rest | 51.5% | 61.2% | 62.9% | 73.1% | 71.2% | +8.3 | 2,300 |
| Clinton | Rural rest | 46.2% | 53.9% | 60.5% | 70.0% | 68.1% | +7.6 | 2,214 |
| Warren | Rural rest | 55.5% | 60.5% | 60.4% | 69.2% | 67.3% | +6.9 | 2,131 |
| Susquehanna | Rural rest | 64.5% | 64.5% | 64.4% | 71.9% | 70.1% | +5.7 | 1,997 |
| Pike | Rural rest | 58.5% | 54.8% | 57.2% | 61.6% | 60.6% | +3.4 | 1,817 |
| Wyoming | Rural rest | 55.7% | 59.6% | 59.1% | 67.9% | 65.9% | +6.7 | 1,670 |
| Snyder | Rural rest | 59.2% | 62.1% | 66.5% | 73.2% | 71.6% | +5.1 | 1,652 |
| Juniata | Rural rest | 67.1% | 68.1% | 70.1% | 80.3% | 78.4% | +8.3 | 1,624 |
| Union | Rural rest | 52.8% | 53.3% | 55.2% | 61.2% | 59.9% | +4.7 | 1,523 |
| Montour | Rural rest | 57.7% | 51.9% | 51.4% | 60.0% | 58.2% | +6.8 | 1,081 |
| Tioga | Rural rest | 69.0% | 70.9% | 71.1% | 75.4% | 74.2% | +3.1 | 1,064 |
| McKean | Rural rest | 64.3% | 67.6% | 68.5% | 73.2% | 72.1% | +3.5 | 1,054 |
| Fulton | Rural rest | 70.5% | 79.3% | 81.0% | 86.1% | 85.0% | +4.0 | 554 |
| Potter | Rural rest | 67.3% | 75.0% | 73.7% | 80.7% | 76.8% | +3.2 | 452 |
| Sullivan | Rural rest | 63.0% | 61.5% | 63.6% | 73.1% | 70.7% | +7.1 | 437 |
| Forest | Rural rest | 50.2% | 59.8% | 61.1% | 71.8% | 70.2% | +9.1 | 388 |
| Cameron | Rural rest | 56.1% | 63.6% | 63.5% | 74.5% | 72.1% | +8.6 | 314 |
Statewide, she needs +792,695 net votes over 2022. If she is still near 34 percent of the ballot, none of these county targets matter.