Frost dates in West Virginia
Across West Virginia's 99 NOAA stations with a frost every year, the typical last spring frost ranges from April 7 at London Locks (630 feet above sea level) to May 15 at Glady 1 N (2,840 feet above sea level). The middle station's date is April 26.
Look up your ZIP code
Last frost across West Virginia
The frost-free season runs from 138 days at Canaan Valley #2 to 209 days at London Locks.
The station with the latest frost sits about 2,200 feet higher than the one with the earliest.
These are typical dates: in half of springs the last frost comes later. Each place's page, and each ZIP code lookup, also gives the late-year date, after which only 1 spring in 10 has a frost. That's the safer date for tender plants.
Frost dates for West Virginia's larger places
| Place | Last spring frost | First fall frost | Season | Zone |
|---|---|---|---|---|
| Charleston | April 16 | October 26 | 192 days | 7a |
| Huntington | April 14 | October 26 | 195 days | 7a |
| Morgantown | April 23 | October 24 | 182 days | 7a |
Typical (1-in-2) dates. Each place's page has the early and late years, a planting calendar and a printable planner. Zones are for the ZIP code nearest each place's center.
Hardiness zones in West Virginia
West Virginia's 843 ZIP codes in the USDA list fall in zones 5b to 7a: 5b (1 percent), 6a (7 percent), 6b (43 percent) and 7a (49 percent). Compared with the 2012 map, 79 percent of them moved to a warmer half zone (11 by a full zone or more), 21 percent stayed the same and 1 moved to a colder one.
A hardiness zone is about the coldest night of winter, which decides which shrubs, trees and perennials survive. Frost dates are about spring and fall, which decide when to plant. You need both. Read more about what the zones mean and what changed in 2023.
Every NOAA station in West Virginia
All 99 stations in West Virginia with frost statistics in NOAA's 1991 to 2020 normals, from A to Z. Station names are usually a town, an airport, or a distance and direction from a town. Find one near you and at a similar elevation.
| Station | Elevation (feet) | Last spring frost | First fall frost | Season (days) |
|---|---|---|---|---|
| Alderson | 1,550 | April 26 | October 17 | 173 |
| Anstead Hawks Nest SP | 1,300 | April 22 | October 22 | 181 |
| Athens | 2,500 | April 30 | October 10 | 161 |
| Bartow 1 S | 3,020 | May 9 | October 5 | 149 |
| Bayard | 2,410 | May 13 | October 3 | 140 |
| Beckley Raleigh Co Airport | 2,510 | April 22 | October 21 | 180 |
| Beckley Va Hospital | 2,330 | May 6 | October 10 | 156 |
| Belington | 1,770 | May 6 | October 13 | 159 |
| Bluefield | 2,870 | April 30 | October 15 | 168 |
| Bluefield Mercer Co Airport | 2,870 | April 21 | October 22 | 182 |
| Bluestone Lake | 1,390 | April 10 | October 30 | 200 |
| Buckeye | 2,120 | May 3 | October 14 | 161 |
| Buckhannon | 1,460 | April 29 | October 20 | 173 |
| Burton | 1,240 | May 4 | October 12 | 158 |
| Cacapon St Park #2 | 960 | April 23 | October 21 | 180 |
| Canaan Valley #2 | 3,250 | May 15 | October 2 | 138 |
| Charleston WFO | 920 | April 23 | October 20 | 180 |
| Charleston Yeager Airport | 910 | April 16 | October 26 | 192 |
| Clarksburg 1 | 990 | April 22 | October 23 | 181 |
| Clarksburg Benedum Airport | 1,200 | April 18 | October 24 | 188 |
| Clendenin | 700 | April 21 | October 28 | 187 |
| Creston | 650 | April 29 | October 19 | 172 |
| Davis 3 SE | 3,710 | May 9 | October 10 | 153 |
| Dunlow 1 SW | 1,110 | April 13 | October 26 | 197 |
| Elkhorn | 1,950 | April 24 | October 17 | 175 |
| Elkins 21 ENE | 3,390 | May 7 | October 7 | 151 |
| Elkins Randolph Co Airport | 1,980 | May 5 | October 12 | 159 |
| Fairmont | 1,300 | April 18 | October 28 | 192 |
| Franklin 2 NE | 1,900 | April 30 | October 11 | 162 |
| Frost 3 NE | 2,900 | May 10 | October 5 | 149 |
| Gassaway | 850 | April 20 | October 25 | 185 |
| Glady 1 N | 2,840 | May 15 | October 3 | 139 |
| Glenville | 740 | April 25 | October 24 | 180 |
| Grantsville 1 ESE | 710 | April 26 | October 20 | 175 |
| Hacker Valley | 1,580 | May 7 | October 10 | 155 |
| Hamlin | 680 | April 23 | October 21 | 180 |
| Harrisville | 820 | April 26 | October 17 | 173 |
| Hogsett RC Byrd Dam | 570 | April 18 | October 29 | 192 |
| Huntington SWG PL | 520 | April 12 | October 30 | 200 |
| Huntington Tri State Airport | 820 | April 14 | October 26 | 195 |
| Keyser 2 SSW | 960 | April 30 | October 15 | 167 |
| Kumbrabow | 3,230 | May 7 | October 6 | 150 |
| Lake Lynn | 900 | April 25 | October 24 | 181 |
| Lewisburg 3 N | 2,300 | May 3 | October 9 | 158 |
| Logan | 670 | April 8 | November 2 | 208 |
| London Locks | 630 | April 7 | November 4 | 209 |
| Lost River | 1,690 | May 3 | October 12 | 160 |
| Madison 3 NNW | 690 | April 16 | October 27 | 192 |
| Mannington 8 WNW | 1,100 | May 3 | October 10 | 159 |
| Marlinton | 2,150 | May 11 | October 6 | 148 |
| Martinsburg 2 | 460 | April 17 | October 23 | 187 |
| Martinsburg E WV Regional Airport | 530 | April 20 | October 22 | 183 |
| Middlebourne 3 ESE | 780 | May 1 | October 15 | 167 |
| Moorefield 1 SSE | 890 | April 29 | October 15 | 167 |
| Morgantown Hart Field | 1,240 | April 23 | October 24 | 182 |
| Morgantown L&D | 830 | April 26 | October 23 | 180 |
| Moundsville | 620 | April 26 | October 21 | 177 |
| Mount Nebo 1 S | 1,950 | May 5 | October 7 | 154 |
| Mullens 3 E | 1,560 | April 24 | October 20 | 178 |
| New Cumberland L/D | 680 | April 22 | October 28 | 186 |
| Oak Hill | 2,040 | April 21 | October 19 | 179 |
| Oceana 2 SE | 1,320 | April 22 | October 24 | 184 |
| Parkersburg | 620 | April 14 | October 30 | 197 |
| Parkersburg Wood Co Airport | 830 | April 23 | October 22 | 180 |
| Parsons 3 SE | 1,770 | April 24 | October 24 | 182 |
| Pea Ridge PSD | 580 | April 8 | November 1 | 205 |
| Petersburg | 960 | April 23 | October 20 | 179 |
| Pickens 2 N | 2,880 | April 25 | October 19 | 176 |
| Pike Island(lock & Dam) | 640 | April 18 | November 1 | 196 |
| Pineville | 1,320 | April 16 | October 28 | 193 |
| Richwood 1 SSE | 3,090 | April 30 | October 18 | 171 |
| Ripley | 610 | April 23 | October 21 | 178 |
| Road Bailey Lake | 1,280 | April 15 | October 27 | 194 |
| Rock Cave 2 NE | 1,750 | April 26 | October 21 | 175 |
| Romney 1 SW | 720 | April 26 | October 18 | 172 |
| Rosedale 3 NNW | 750 | April 29 | October 19 | 171 |
| Rowlesburg 1 | 1,420 | April 28 | October 23 | 179 |
| Rupert 4 N | 3,320 | May 2 | October 11 | 160 |
| Saint Albans | 650 | April 18 | October 26 | 189 |
| Sandyville 9 NE | 670 | May 1 | October 14 | 165 |
| Sissonville 1 SW | 630 | April 29 | October 16 | 169 |
| Snowshoe | 4,850 | May 12 | October 7 | 147 |
| Southside 3 NNW | 580 | April 28 | October 19 | 173 |
| Spencer | 970 | April 30 | October 17 | 169 |
| Stonewall Jackson Dam | 1,050 | April 26 | October 23 | 179 |
| Summersville Lake | 1,770 | April 27 | October 19 | 173 |
| Sutton Lake | 870 | April 22 | October 28 | 187 |
| Terra Alta #1 | 2,630 | May 7 | October 11 | 156 |
| Tygart Dam | 1,230 | April 26 | October 22 | 178 |
| Union 3 SSE | 2,110 | April 30 | October 12 | 165 |
| W Union 2 | 810 | April 28 | October 21 | 176 |
| Wardensville R M Farm | 960 | May 6 | October 12 | 159 |
| Webster Springs 8 N | 1,850 | May 4 | October 12 | 160 |
| Weston | 1,020 | April 23 | October 26 | 185 |
| Wheeling | 650 | April 20 | October 29 | 192 |
| Wheeling Ohio Co Airport | 1,180 | April 23 | October 25 | 185 |
| White Sulphur Springs | 1,920 | May 2 | October 13 | 165 |
| Williamson | 760 | April 8 | November 2 | 206 |
| Winfield Locks | 620 | April 18 | October 30 | 193 |
Typical (1-in-2) dates at 32°F. For the early and late years, and a planting calendar built from your own dates, look up your ZIP code.