2028 forecast · West Virginia · President · 4 electoral votes
The Republican is very likely to carry West Virginia.
A generic Democrat against JD Vance: R +31.2 in the average of 20,000 county simulations, with 80% of runs between R +24.4 and R +38.1. Projected votes: 252,154 Democratic, 481,062 Republican, 13,481 other, 746,697 in all.
<1%Democratic win chance
R +31.22028 margin
R +42.72024 actual
<1%Chance it is the tipping point
Every county
simulated marginD +40R +40
20,000 simulated elections
margin, R minus DFrom 2024 to 2028
| 2024 result | R +42.7 | Certified county votes. |
| National environment | R +26.7 | National swing by county elasticity, 2020 to 2024 trend and 2026 shifts. |
| Deaths and aging | 0.8 toward R | Older cohorts leave, every cohort ages four years. |
| New 18 to 21 voters | 0.3 toward D | 4.6% of the 2028 electorate here. |
| Life cycle drift | 0.3 toward R | Voters under 44 drifting a little right as they age. |
| Migration | 0.2 toward D | Movers in and out since 2020, carried to 2028. |
| 2028 model | R +31.2 | Includes Vance's own home and polling effects and the simulation's vote weighting. Votes: 762,390 in 2024, 746,698 projected. |
Democrats against Vance
West Virginia| Democrat | Margin | D win |
|---|---|---|
| Buttigieg | R +29.1 | <1% |
| Rob SandHYP | R +29.6 | <1% |
| BeshearHYP | R +30.0 | <1% |
| BrownHYP | R +30.2 | <1% |
| CooperHYP | R +30.3 | <1% |
| WalzHYP | R +30.4 | <1% |
| TalaricoHYP | R +30.5 | <1% |
| WhitmerHYP | R +30.6 | <1% |
| KellyHYP | R +30.8 | <1% |
| EmanuelHYP | R +30.9 | <1% |
| BookerHYP | R +31.0 | <1% |
| Cuban | R +31.0 | <1% |
| Generic Democrat | R +31.2 | <1% |
| Shapiro | R +31.4 | <1% |
| KlobucharHYP | R +31.6 | <1% |
| Harris | R +31.7 | <1% |
| GallegoHYP | R +31.7 | <1% |
| WarnockHYP | R +31.7 | <1% |
| MurphyHYP | R +31.8 | <1% |
| KhannaHYP | R +31.9 | <1% |
| PolisHYP | R +31.9 | <1% |
| Ossoff | R +32.0 | <1% |
| El-SayedHYP | R +32.1 | <1% |
| CrockettHYP | R +32.5 | <1% |
| MooreHYP | R +32.8 | <1% |
| Stephen A. Smith | R +32.8 | <1% |
| PritzkerHYP | R +32.9 | <1% |
| Newsom | R +33.2 | <1% |
| Ocasio-Cortez | R +37.5 | <1% |
Republicans against a generic Democrat
West Virginia| Republican | Margin | D win |
|---|---|---|
| HaleyHYP | R +28.3 | <1% |
| YoungkinHYP | R +29.0 | <1% |
| Rubio | R +29.1 | <1% |
| Tim ScottHYP | R +29.1 | <1% |
| Rand PaulHYP | R +29.2 | <1% |
| KempHYP | R +29.2 | <1% |
| Huckabee SandersHYP | R +29.3 | <1% |
| CottonHYP | R +29.4 | <1% |
| CruzHYP | R +29.6 | <1% |
| DonaldsHYP | R +29.6 | <1% |
| DeSantisHYP | R +30.2 | <1% |
| Trump Jr.HYP | R +30.6 | <1% |
| Vance | R +31.2 | <1% |
HYP marks a candidate with no head to head polling: home state and 2026 midterm effects only.
Projected vote in every county
55 counties, largest first| County | 2024 | 2028 | 80% range | D votes | R votes | Total | Generations | Migration |
|---|---|---|---|---|---|---|---|---|
| Kanawha County | R +17.8 | R +9.3 | R +2 to R +17 | 31,732 | 38,238 | 71,390 | R +0.42 | Even |
| Berkeley County | R +36.5 | R +20.4 | R +13 to R +28 | 24,507 | 37,085 | 62,729 | R +0.21 | D +1.27 |
| Monongalia County | R +4.5 | D +5.3 | D +13 to R +3 | 23,004 | 20,677 | 44,773 | R +0.06 | D +0.05 |
| Wood County | R +43.8 | R +29.7 | R +22 to R +38 | 12,439 | 22,964 | 35,998 | R +0.43 | Even |
| Cabell County | R +22.3 | R +14.4 | R +7 to R +22 | 14,664 | 19,590 | 34,925 | R +0.35 | Even |
| Jefferson County | R +16.1 | R +0.8 | D +7 to R +9 | 15,198 | 15,458 | 31,281 | R +0.23 | D +0.57 |
| Raleigh County | R +55.2 | R +44.5 | R +37 to R +52 | 8,045 | 20,945 | 29,449 | R +0.34 | Even |
| Harrison County | R +41.8 | R +30.3 | R +23 to R +38 | 9,743 | 18,225 | 28,522 | R +0.40 | Even |
| Putnam County | R +47.2 | R +30.8 | R +23 to R +39 | 9,158 | 17,316 | 26,964 | R +0.38 | Even |
| Marion County | R +32.0 | R +24.0 | R +16 to R +32 | 9,127 | 14,894 | 24,547 | R +0.37 | Even |
| Mercer County | R +58.2 | R +51.6 | R +44 to R +60 | 5,349 | 16,774 | 22,459 | R +0.35 | Even |
| Ohio County | R +26.6 | R +15.8 | R +8 to R +24 | 7,381 | 10,148 | 17,874 | R +0.44 | Even |
| Wayne County | R +54.3 | R +43.1 | R +35 to R +51 | 4,160 | 10,462 | 14,874 | R +0.41 | Even |
| Fayette County | R +42.6 | R +34.6 | R +26 to R +43 | 4,657 | 9,580 | 14,503 | R +0.44 | Even |
| Greenbrier County | R +43.0 | R +33.8 | R +26 to R +42 | 4,589 | 9,282 | 14,126 | R +0.45 | Even |
| Preston County | R +58.2 | R +46.3 | R +38 to R +54 | 3,724 | 10,142 | 14,131 | R +0.28 | Even |
| Mineral County | R +61.0 | R +47.1 | R +39 to R +55 | 3,291 | 9,150 | 12,616 | R +0.34 | D +0.12 |
| Marshall County | R +51.0 | R +39.2 | R +31 to R +47 | 3,711 | 8,497 | 12,419 | R +0.43 | Even |
| Jackson County | R +57.2 | R +45.1 | R +37 to R +53 | 3,351 | 8,851 | 12,403 | R +0.37 | D +0.06 |
| Hancock County | R +47.6 | R +38.4 | R +30 to R +46 | 3,707 | 8,321 | 12,219 | R +0.44 | Even |
| Randolph County | R +47.1 | R +40.0 | R +32 to R +48 | 3,259 | 7,602 | 11,060 | R +0.39 | Even |
| Logan County | R +67.4 | R +56.9 | R +49 to R +65 | 2,250 | 8,198 | 10,569 | R +0.34 | Even |
| Hampshire County | R +63.5 | R +50.1 | R +42 to R +58 | 2,585 | 7,782 | 10,513 | R +0.37 | D +0.81 |
| Mason County | R +59.2 | R +47.2 | R +39 to R +55 | 2,602 | 7,263 | 10,044 | R +0.39 | Even |
| Upshur County | R +57.9 | R +49.4 | R +41 to R +58 | 2,420 | 7,141 | 9,740 | R +0.35 | D +0.12 |
| Nicholas County | R +61.1 | R +48.5 | R +41 to R +56 | 2,400 | 6,913 | 9,456 | R +0.40 | Even |
| Morgan County | R +56.5 | R +42.4 | R +34 to R +51 | 2,615 | 6,459 | 9,220 | R +0.41 | D +0.88 |
| Brooke County | R +45.4 | R +39.0 | R +31 to R +47 | 2,726 | 6,219 | 9,099 | R +0.46 | Even |
| Mingo County | R +74.7 | R +66.6 | R +58 to R +75 | 1,261 | 6,298 | 7,648 | R +0.27 | Even |
| Boone County | R +58.7 | R +47.0 | R +39 to R +55 | 1,943 | 5,384 | 7,476 | R +0.40 | Even |
| Taylor County | R +52.4 | R +41.3 | R +33 to R +49 | 2,010 | 4,839 | 6,978 | R +0.41 | Even |
| Wyoming County | R +73.8 | R +65.1 | R +57 to R +73 | 1,191 | 5,629 | 6,898 | R +0.30 | Even |
| Lewis County | R +60.4 | R +50.9 | R +43 to R +59 | 1,621 | 4,987 | 6,723 | R +0.33 | Even |
| Lincoln County | R +63.7 | R +52.8 | R +44 to R +61 | 1,540 | 4,982 | 6,637 | R +0.36 | Even |
| Barbour County | R +61.8 | R +56.5 | R +48 to R +65 | 1,355 | 4,873 | 6,342 | R +0.32 | D +0.12 |
| Monroe County | R +63.0 | R +51.6 | R +43 to R +60 | 1,479 | 4,639 | 6,225 | R +0.38 | D +0.34 |
| Hardy County | R +58.8 | R +49.9 | R +42 to R +58 | 1,531 | 4,584 | 6,219 | R +0.35 | D +0.17 |
| Wetzel County | R +57.0 | R +47.9 | R +40 to R +56 | 1,469 | 4,175 | 5,772 | R +0.40 | Even |
| Grant County | R +79.9 | R +67.6 | R +59 to R +76 | 868 | 4,497 | 5,424 | R +0.23 | D +0.36 |
| Roane County | R +54.9 | R +43.5 | R +35 to R +52 | 1,421 | 3,611 | 5,127 | R +0.44 | Even |
| Braxton County | R +52.8 | R +48.7 | R +40 to R +57 | 1,258 | 3,645 | 4,984 | R +0.38 | Even |
| Summers County | R +52.5 | R +44.7 | R +37 to R +53 | 1,334 | 3,494 | 4,916 | R +0.42 | Even |
| McDowell County | R +61.2 | R +59.8 | R +51 to R +69 | 946 | 3,768 | 4,775 | R +0.31 | Even |
| Ritchie County | R +74.1 | R +59.8 | R +52 to R +68 | 749 | 2,981 | 3,784 | R +0.28 | Even |
| Pocahontas County | R +51.4 | R +44.0 | R +36 to R +52 | 1,009 | 2,596 | 3,678 | R +0.46 | Even |
| Tucker County | R +50.0 | R +38.3 | R +30 to R +46 | 1,037 | 2,324 | 3,426 | R +0.48 | Even |
| Tyler County | R +68.7 | R +55.8 | R +48 to R +64 | 730 | 2,571 | 3,361 | R +0.32 | Even |
| Pleasants County | R +60.1 | R +50.1 | R +42 to R +58 | 785 | 2,364 | 3,204 | R +0.32 | Even |
| Pendleton County | R +59.6 | R +53.4 | R +45 to R +61 | 725 | 2,389 | 3,163 | R +0.42 | Even |
| Clay County | R +63.5 | R +54.9 | R +46 to R +63 | 665 | 2,286 | 3,002 | R +0.36 | Even |
| Doddridge County | R +74.3 | R +63.8 | R +56 to R +72 | 509 | 2,308 | 2,857 | R +0.24 | Even |
| Calhoun County | R +66.1 | R +54.2 | R +46 to R +63 | 613 | 2,066 | 2,727 | R +0.38 | Even |
| Webster County | R +67.6 | R +59.9 | R +52 to R +68 | 536 | 2,136 | 2,708 | R +0.36 | Even |
| Wirt County | R +67.7 | R +53.8 | R +46 to R +62 | 543 | 1,810 | 2,398 | R +0.32 | Even |
| Gilmer County | R +57.9 | R +45.7 | R +38 to R +54 | 604 | 1,621 | 2,260 | R +0.13 | Even |