2028 forecast · Virginia · President · 13 electoral votes
The Democrat is very likely to carry Virginia.
A generic Democrat against JD Vance: D +17.8 in the average of 20,000 county simulations, with 80% of runs between D +24.1 and D +11.6. Projected votes: 2,663,641 Democratic, 1,857,810 Republican, 76,047 other, 4,597,498 in all.
>99%Democratic win chance
D +17.82028 margin
D +5.92024 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 | D +5.9 | Certified county votes. |
| National environment | D +19.4 | National swing by county elasticity, 2020 to 2024 trend and 2026 shifts. |
| Deaths and aging | 0.2 toward R | Older cohorts leave, every cohort ages four years. |
| New 18 to 21 voters | 0.9 toward D | 5.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.1 toward D | Movers in and out since 2020, carried to 2028. |
| 2028 model | D +17.8 | Includes Vance's own home and polling effects and the simulation's vote weighting. Votes: 4,482,576 in 2024, 4,597,499 projected. |
Democrats against Vance
Virginia| Democrat | Margin | D win |
|---|---|---|
| Harris | D +19.5 | >99% |
| Buttigieg | D +19.1 | >99% |
| BookerHYP | D +18.6 | >99% |
| Ossoff | D +18.4 | >99% |
| Cuban | D +18.4 | >99% |
| CooperHYP | D +18.4 | >99% |
| Rob SandHYP | D +18.3 | >99% |
| WarnockHYP | D +18.3 | >99% |
| TalaricoHYP | D +18.3 | >99% |
| PritzkerHYP | D +18.2 | >99% |
| CrockettHYP | D +18.2 | >99% |
| MurphyHYP | D +18.1 | >99% |
| PolisHYP | D +18.1 | >99% |
| KhannaHYP | D +18.1 | >99% |
| Generic Democrat | D +17.8 | >99% |
| EmanuelHYP | D +17.8 | >99% |
| BeshearHYP | D +17.8 | >99% |
| WhitmerHYP | D +17.7 | >99% |
| WalzHYP | D +17.7 | >99% |
| BrownHYP | D +17.5 | >99% |
| KellyHYP | D +17.5 | >99% |
| GallegoHYP | D +17.4 | >99% |
| El-SayedHYP | D +17.2 | >99% |
| KlobucharHYP | D +17.1 | >99% |
| MooreHYP | D +17.1 | >99% |
| Shapiro | D +17.0 | >99% |
| Stephen A. Smith | D +16.9 | >99% |
| Newsom | D +15.9 | >99% |
| Ocasio-Cortez | D +15.1 | >99% |
Republicans against a generic Democrat
Virginia| Republican | Margin | D win |
|---|---|---|
| CottonHYP | D +17.9 | >99% |
| Vance | D +17.8 | >99% |
| DeSantisHYP | D +17.8 | >99% |
| Trump Jr.HYP | D +17.7 | >99% |
| DonaldsHYP | D +17.6 | >99% |
| CruzHYP | D +17.6 | >99% |
| Rand PaulHYP | D +17.5 | >99% |
| HaleyHYP | D +17.3 | >99% |
| KempHYP | D +17.3 | >99% |
| Huckabee SandersHYP | D +17.3 | >99% |
| Tim ScottHYP | D +17.2 | >99% |
| Rubio | D +17.1 | >99% |
| YoungkinHYP | D +14.3 | >99% |
HYP marks a candidate with no head to head polling: home state and 2026 midterm effects only.
Projected vote in every county
133 counties, largest first| County | 2024 | 2028 | 80% range | D votes | R votes | Total | Generations | Migration |
|---|---|---|---|---|---|---|---|---|
| Fairfax County | D +36.0 | D +52.4 | D +61 to D +44 | 433,471 | 135,349 | 582,570 | D +0.31 | R +0.07 |
| Loudoun County | D +16.8 | D +34.3 | D +42 to D +26 | 157,373 | 76,963 | 240,365 | D +0.32 | Even |
| Prince William County | D +18.5 | D +36.5 | D +44 to D +29 | 156,862 | 72,886 | 235,216 | D +0.54 | Even |
| Virginia Beach city | D +2.7 | D +13.7 | D +21 to D +6 | 127,756 | 97,025 | 228,340 | D +0.17 | Even |
| Chesterfield County | D +9.1 | D +19.8 | D +27 to D +13 | 133,069 | 89,040 | 225,525 | D +0.21 | D +0.18 |
| Henrico County | D +29.3 | D +44.9 | D +52 to D +37 | 130,000 | 49,395 | 182,313 | D +0.30 | Even |
| Chesapeake city | D +3.8 | D +16.4 | D +24 to D +9 | 75,615 | 54,268 | 131,758 | D +0.31 | D +0.06 |
| Arlington County | D +59.9 | D +77.5 | D +86 to D +69 | 114,677 | 14,560 | 131,900 | D +0.20 | R +0.19 |
| Richmond city | D +67.8 | D +87.8 | D +96 to D +80 | 105,973 | 6,878 | 115,235 | D +0.31 | R +0.20 |
| Stafford County | D +0.8 | D +16.0 | D +23 to D +9 | 51,648 | 37,423 | 90,588 | D +0.36 | D +0.26 |
| Spotsylvania County | R +8.7 | D +2.1 | D +9 to R +5 | 43,656 | 41,844 | 86,740 | D +0.14 | D +0.50 |
| Norfolk city | D +42.2 | D +59.0 | D +67 to D +51 | 67,949 | 17,515 | 86,902 | D +0.54 | Even |
| Alexandria city | D +58.9 | D +78.3 | D +87 to D +70 | 69,007 | 8,403 | 78,934 | D +0.20 | R +0.23 |
| Hanover County | R +26.1 | R +19.6 | R +12 to R +27 | 30,424 | 45,275 | 76,735 | R +0.17 | D +0.46 |
| Newport News city | D +29.2 | D +47.5 | D +55 to D +40 | 55,649 | 19,796 | 76,664 | D +0.59 | Even |
| Albemarle County | D +34.6 | D +43.9 | D +52 to D +36 | 49,590 | 19,349 | 70,074 | R +0.06 | R +0.08 |
| Hampton city | D +40.5 | D +58.5 | D +67 to D +50 | 49,995 | 13,098 | 64,068 | D +0.59 | Even |
| Suffolk city | D +16.1 | D +31.4 | D +39 to D +24 | 38,038 | 19,861 | 58,705 | D +0.43 | D +0.13 |
| Roanoke County | R +22.7 | R +17.8 | R +11 to R +25 | 22,758 | 32,610 | 56,140 | R +0.29 | D +0.05 |
| Frederick County | R +28.7 | R +20.7 | R +13 to R +28 | 21,750 | 33,113 | 55,636 | R +0.23 | D +0.75 |
| James City County | D +6.3 | D +15.0 | D +23 to D +8 | 29,641 | 21,890 | 52,256 | R +0.25 | D +0.20 |
| Bedford County | R +50.8 | R +46.1 | R +39 to R +53 | 13,836 | 37,465 | 51,877 | R +0.28 | D +0.60 |
| Rockingham County | R +37.4 | R +32.5 | R +25 to R +40 | 16,878 | 33,143 | 50,693 | R +0.30 | D +0.60 |
| Montgomery County | D +3.5 | D +11.6 | D +19 to D +4 | 27,062 | 21,449 | 49,427 | Even | D +0.05 |
| Fauquier County | R +21.9 | R +11.8 | R +5 to R +19 | 20,152 | 25,526 | 46,355 | R +0.13 | D +0.32 |
| Augusta County | R +48.0 | R +43.7 | R +36 to R +51 | 12,314 | 31,392 | 44,254 | R +0.33 | D +0.29 |
| Portsmouth city | D +39.2 | D +57.3 | D +65 to D +49 | 32,338 | 8,783 | 41,747 | D +0.56 | Even |
| Roanoke city | D +24.0 | D +35.1 | D +42 to D +28 | 27,481 | 13,205 | 41,346 | D +0.11 | Even |
| Lynchburg city | R +8.0 | D +3.9 | D +11 to R +3 | 20,758 | 19,185 | 40,617 | D +0.49 | D +0.12 |
| York County | R +6.2 | D +3.9 | D +11 to R +4 | 20,681 | 19,134 | 40,453 | Even | D +0.09 |
| Pittsylvania County | R +43.4 | R +41.9 | R +34 to R +50 | 9,508 | 23,217 | 32,990 | R +0.17 | Even |
| Campbell County | R +49.0 | R +43.6 | R +36 to R +51 | 8,636 | 21,973 | 30,956 | R +0.16 | D +0.06 |
| Franklin County | R +45.7 | R +43.2 | R +36 to R +51 | 8,657 | 21,817 | 30,816 | R +0.35 | D +0.34 |
| Culpeper County | R +25.2 | R +16.9 | R +10 to R +24 | 12,436 | 17,502 | 30,337 | Even | D +0.64 |
| Washington County | R +53.7 | R +51.0 | R +44 to R +58 | 6,995 | 21,566 | 28,826 | R +0.39 | D +0.13 |
| Louisa County | R +26.4 | R +22.9 | R +16 to R +30 | 10,062 | 16,039 | 26,403 | R +0.21 | D +1.07 |
| Isle of Wight County | R +20.0 | R +13.6 | R +6 to R +21 | 11,033 | 14,517 | 25,856 | Even | D +0.49 |
| Shenandoah County | R +42.7 | R +38.8 | R +31 to R +46 | 7,449 | 16,911 | 24,673 | R +0.35 | D +0.46 |
| Henry County | R +33.0 | R +31.8 | R +24 to R +40 | 8,180 | 15,798 | 24,182 | R +0.17 | Even |
| Orange County | R +24.9 | R +20.1 | R +13 to R +27 | 9,488 | 14,259 | 24,031 | R +0.17 | D +0.81 |
| Charlottesville city | D +70.0 | D +85.3 | D +93 to D +77 | 21,618 | 1,711 | 23,767 | D +0.17 | R +0.12 |
| Gloucester County | R +38.7 | R +32.8 | R +25 to R +40 | 7,827 | 15,458 | 23,568 | R +0.27 | D +0.42 |
| Warren County | R +38.1 | R +32.7 | R +25 to R +40 | 7,769 | 15,309 | 23,399 | R +0.20 | D +0.45 |
| Goochland County | R +18.8 | R +10.2 | R +3 to R +18 | 9,756 | 11,982 | 22,035 | R +0.22 | D +1.13 |
| Powhatan County | R +44.5 | R +37.4 | R +30 to R +45 | 6,767 | 14,863 | 21,897 | R +0.22 | D +0.79 |
| Botetourt County | R +45.5 | R +41.3 | R +34 to R +49 | 6,322 | 15,216 | 21,779 | R +0.38 | D +0.29 |
| New Kent County | R +32.1 | R +23.8 | R +17 to R +31 | 7,448 | 12,092 | 19,751 | R +0.10 | D +1.72 |
| Caroline County | R +8.9 | R +3.2 | D +4 to R +11 | 9,225 | 9,826 | 19,299 | D +0.12 | D +0.55 |
| Tazewell County | R +69.3 | R +67.7 | R +60 to R +76 | 3,002 | 15,605 | 18,758 | R +0.29 | Even |
| Prince George County | R +21.5 | R +14.8 | R +7 to R +22 | 7,877 | 10,622 | 18,711 | D +0.46 | D +0.09 |
| Harrisonburg city | D +25.9 | D +37.1 | D +44 to D +30 | 12,348 | 5,668 | 18,391 | D +0.38 | Even |
| Amherst County | R +36.8 | R +34.3 | R +27 to R +42 | 5,686 | 11,622 | 17,492 | R +0.13 | D +0.27 |
| Fluvanna County | R +6.3 | R +0.7 | D +7 to R +8 | 8,555 | 8,674 | 17,456 | R +0.18 | D +0.33 |
| Pulaski County | R +45.0 | R +42.8 | R +35 to R +50 | 4,899 | 12,227 | 17,309 | R +0.36 | Even |
| Danville city | D +21.3 | D +35.0 | D +43 to D +27 | 11,547 | 5,556 | 17,287 | D +0.43 | Even |
| Halifax County | R +21.2 | R +15.9 | R +8 to R +24 | 7,188 | 9,898 | 17,232 | Even | Even |
| King George County | R +25.4 | R +16.9 | R +10 to R +24 | 6,943 | 9,771 | 16,979 | D +0.06 | D +0.78 |
| Accomack County | R +13.4 | R +9.6 | R +2 to R +17 | 7,418 | 8,999 | 16,567 | R +0.08 | D +0.10 |
| Wise County | R +63.6 | R +61.3 | R +54 to R +69 | 3,112 | 12,980 | 16,210 | R +0.24 | Even |
| Manassas city | D +15.1 | D +32.2 | D +40 to D +25 | 10,446 | 5,362 | 16,111 | D +0.52 | Even |
| Mecklenburg County | R +20.9 | R +18.1 | R +11 to R +26 | 6,471 | 9,328 | 15,909 | R +0.07 | D +0.18 |
| Dinwiddie County | R +23.3 | R +18.9 | R +11 to R +27 | 6,393 | 9,368 | 15,898 | D +0.09 | D +0.26 |
| Carroll County | R +63.6 | R +62.6 | R +55 to R +70 | 2,925 | 12,703 | 15,750 | R +0.36 | D +0.26 |
| Wythe County | R +59.9 | R +58.6 | R +51 to R +66 | 3,084 | 11,833 | 15,054 | R +0.32 | Even |
| Fredericksburg city | D +32.3 | D +43.4 | D +51 to D +36 | 10,508 | 4,143 | 14,938 | D +0.46 | R +0.09 |
| Fairfax city | D +34.3 | D +48.4 | D +56 to D +40 | 10,389 | 3,613 | 14,334 | D +0.29 | R +0.14 |
| Staunton city | D +13.6 | D +18.9 | D +26 to D +12 | 8,172 | 5,577 | 13,976 | R +0.23 | D +0.07 |
| Smyth County | R +60.8 | R +59.0 | R +51 to R +67 | 2,796 | 10,852 | 13,773 | R +0.34 | Even |
| Salem city | R +19.5 | R +14.7 | R +7 to R +22 | 5,675 | 7,624 | 13,480 | R +0.21 | D +0.12 |
| Petersburg city | D +73.7 | D +91.1 | D +99 to D +82 | 12,623 | 584 | 13,363 | D +0.36 | R +0.07 |
| Russell County | R +67.8 | R +68.1 | R +60 to R +76 | 2,063 | 10,880 | 13,033 | R +0.31 | Even |
| Page County | R +54.6 | R +52.9 | R +45 to R +61 | 3,024 | 9,824 | 12,983 | R +0.35 | D +0.12 |
| King William County | R +40.9 | R +35.8 | R +28 to R +43 | 4,000 | 8,464 | 12,600 | R +0.05 | D +0.97 |
| Greene County | R +25.0 | R +17.5 | R +10 to R +25 | 5,099 | 7,265 | 12,558 | R +0.24 | D +0.52 |
| Rockbridge County | R +34.1 | R +32.8 | R +26 to R +40 | 4,127 | 8,156 | 12,436 | R +0.47 | D +0.14 |
| Waynesboro city | R +5.8 | R +0.3 | D +7 to R +8 | 5,904 | 5,942 | 12,036 | R +0.13 | D +0.37 |
| Winchester city | D +9.9 | D +17.0 | D +24 to D +10 | 6,848 | 4,859 | 11,896 | Even | Even |
| Westmoreland County | R +14.4 | R +12.6 | R +5 to R +20 | 4,712 | 6,074 | 10,896 | R +0.10 | D +0.48 |
| Scott County | R +70.8 | R +68.2 | R +60 to R +76 | 1,673 | 8,865 | 10,619 | R +0.30 | Even |
| Prince Edward County | R +2.6 | D +2.8 | D +10 to R +5 | 5,208 | 4,923 | 10,267 | D +0.56 | D +0.10 |
| Appomattox County | R +51.4 | R +47.2 | R +40 to R +55 | 2,636 | 7,339 | 10,076 | R +0.17 | D +0.84 |
| Clarke County | R +17.1 | R +9.6 | R +2 to R +17 | 4,465 | 5,408 | 10,039 | R +0.32 | D +0.39 |
| Lee County | R +72.4 | R +72.8 | R +65 to R +81 | 1,306 | 8,310 | 9,680 | R +0.25 | Even |
| Southampton County | R +25.7 | R +20.2 | R +13 to R +28 | 3,835 | 5,777 | 9,701 | Even | D +0.10 |
| Floyd County | R +37.6 | R +33.7 | R +26 to R +41 | 3,134 | 6,315 | 9,577 | R +0.42 | D +0.29 |
| Patrick County | R +60.8 | R +61.2 | R +53 to R +69 | 1,776 | 7,388 | 9,247 | R +0.36 | D +0.09 |
| Colonial Heights city | R +32.7 | R +27.4 | R +20 to R +35 | 3,284 | 5,766 | 9,156 | R +0.06 | D +0.31 |
| Hopewell city | D +13.9 | D +27.8 | D +36 to D +19 | 5,781 | 3,269 | 9,162 | D +0.46 | Even |
| Nelson County | R +7.6 | R +5.5 | D +2 to R +13 | 4,265 | 4,763 | 9,141 | R +0.39 | D +0.10 |
| Falls Church city | D +63.3 | D +80.7 | D +90 to D +72 | 8,148 | 870 | 9,179 | D +0.05 | R +0.12 |
| Giles County | R +54.9 | R +52.8 | R +45 to R +61 | 2,107 | 6,830 | 9,026 | R +0.34 | Even |
| Williamsburg city | D +45.2 | D +56.8 | D +64 to D +49 | 6,902 | 1,900 | 8,947 | D +0.20 | R +0.08 |
| Madison County | R +35.5 | R +33.7 | R +26 to R +41 | 2,778 | 5,601 | 8,473 | R +0.31 | D +0.33 |
| Buchanan County | R +70.8 | R +71.2 | R +63 to R +79 | 1,203 | 7,160 | 8,413 | R +0.28 | Even |
| Poquoson city | R +46.5 | R +37.9 | R +31 to R +45 | 2,574 | 5,711 | 8,415 | R +0.27 | D +0.76 |
| Northumberland County | R +21.3 | R +15.0 | R +8 to R +22 | 3,440 | 4,658 | 8,179 | R +0.36 | D +0.60 |
| Amelia County | R +44.6 | R +39.4 | R +32 to R +47 | 2,435 | 5,599 | 8,098 | R +0.10 | D +0.36 |
| Buckingham County | R +23.7 | R +18.2 | R +10 to R +26 | 3,206 | 4,633 | 7,929 | Even | D +0.19 |
| Radford city | D +0.5 | D +9.0 | D +16 to D +2 | 4,236 | 3,536 | 7,930 | D +0.12 | D +0.22 |
| Grayson County | R +62.6 | R +62.4 | R +55 to R +70 | 1,457 | 6,300 | 7,829 | R +0.31 | D +0.08 |
| Alleghany County | R +48.5 | R +48.4 | R +41 to R +56 | 1,987 | 5,717 | 7,787 | R +0.42 | Even |
| Brunswick County | D +8.6 | D +20.3 | D +29 to D +12 | 4,575 | 3,032 | 7,654 | D +0.45 | Even |
| Bristol city | R +39.9 | R +37.1 | R +30 to R +45 | 2,196 | 4,783 | 7,050 | R +0.39 | Even |
| Lancaster County | R +7.1 | R +2.7 | D +5 to R +10 | 3,309 | 3,496 | 6,875 | R +0.38 | D +0.16 |
| Nottoway County | R +22.5 | R +15.8 | R +8 to R +24 | 2,865 | 3,938 | 6,867 | D +0.19 | D +0.09 |
| Middlesex County | R +27.6 | R +26.3 | R +19 to R +34 | 2,422 | 4,152 | 6,642 | R +0.41 | D +0.31 |
| Dickenson County | R +62.5 | R +61.7 | R +54 to R +70 | 1,240 | 5,236 | 6,519 | R +0.37 | Even |
| Northampton County | D +6.2 | D +11.9 | D +19 to D +5 | 3,543 | 2,787 | 6,392 | R +0.10 | Even |
| Essex County | R +7.8 | R +0.7 | D +7 to R +9 | 2,942 | 2,982 | 5,980 | D +0.09 | D +0.07 |
| Charlotte County | R +32.7 | R +30.4 | R +23 to R +38 | 2,028 | 3,799 | 5,876 | R +0.08 | Even |
| Lunenburg County | R +22.9 | R +18.2 | R +10 to R +26 | 2,348 | 3,395 | 5,788 | Even | D +0.13 |
| Manassas Park city | D +20.5 | D +37.2 | D +45 to D +30 | 3,883 | 1,777 | 5,785 | D +0.66 | Even |
| Mathews County | R +39.7 | R +38.0 | R +31 to R +45 | 1,753 | 3,906 | 5,722 | R +0.39 | D +0.19 |
| Martinsville city | D +22.9 | D +36.5 | D +44 to D +29 | 3,864 | 1,795 | 5,733 | D +0.36 | Even |
| Cumberland County | R +22.3 | R +17.2 | R +10 to R +25 | 2,304 | 3,259 | 5,613 | R +0.08 | D +0.51 |
| Rappahannock County | R +18.1 | R +14.2 | R +7 to R +22 | 2,107 | 2,805 | 4,973 | R +0.41 | D +0.16 |
| Sussex County | D +4.5 | D +18.8 | D +27 to D +10 | 2,884 | 1,970 | 4,894 | D +0.54 | Even |
| Surry County | R +0.7 | D +10.0 | D +18 to D +2 | 2,396 | 1,959 | 4,407 | D +0.24 | D +0.07 |
| Greensville County | D +9.3 | D +23.3 | D +32 to D +15 | 2,610 | 1,625 | 4,267 | D +0.56 | Even |
| Richmond County | R +30.4 | R +26.2 | R +19 to R +34 | 1,534 | 2,622 | 4,191 | R +0.05 | D +0.37 |
| Charles City County | D +10.9 | D +21.9 | D +30 to D +14 | 2,522 | 1,616 | 4,184 | D +0.31 | Even |
| King and Queen County | R +25.9 | R +20.9 | R +13 to R +29 | 1,618 | 2,475 | 4,133 | R +0.13 | D +0.23 |
| Franklin city | D +23.0 | D +35.9 | D +44 to D +28 | 2,678 | 1,262 | 3,985 | D +0.42 | Even |
| Bland County | R +70.2 | R +67.3 | R +60 to R +75 | 551 | 2,824 | 3,407 | R +0.27 | Even |
| Lexington city | D +27.1 | D +34.6 | D +42 to D +27 | 2,248 | 1,092 | 3,394 | D +0.19 | Even |
| Craig County | R +65.1 | R +60.9 | R +53 to R +69 | 588 | 2,420 | 3,034 | R +0.25 | Even |
| Buena Vista city | R +45.3 | R +42.9 | R +35 to R +50 | 824 | 2,063 | 2,947 | R +0.23 | D +0.16 |
| Galax city | R +44.2 | R +42.9 | R +35 to R +51 | 749 | 1,878 | 2,650 | R +0.34 | D +0.05 |
| Bath County | R +54.1 | R +54.6 | R +47 to R +63 | 548 | 1,866 | 2,436 | R +0.39 | Even |
| Covington city | R +33.5 | R +33.3 | R +25 to R +41 | 805 | 1,608 | 2,437 | R +0.20 | Even |
| Emporia city | D +31.2 | D +46.4 | D +55 to D +37 | 1,520 | 556 | 2,093 | D +0.68 | Even |
| Norton city | R +43.9 | R +41.4 | R +34 to R +49 | 449 | 1,086 | 1,550 | R +0.43 | Even |
| Highland County | R +44.9 | R +44.1 | R +37 to R +52 | 422 | 1,088 | 1,530 | R +0.52 | D +0.65 |