Virginia Climate Data
Climate normals for 120 cities from 235 NOAA weather stations.
Avg Temperature
56°F (13°C)
Avg Precipitation
46.0"
Avg Snowfall
14.3"
Cities / Stations
120 / 235
Virginia Climate in Context
U.S. land-mean temperature anomaly (NOAA NCEI) tracked against global anomaly (NASA GISTEMP). Paris Agreement 1.5°C and 2.0°C thresholds shown as reference lines. Virginia sits within this national warming envelope; individual cities below show local readings against this trend.
- United States (incl. Virginia) +0.11 °C/decade
- Global (NASA GISTEMP) +0.11 °C/decade
- Paris Agreement thresholds 1.5°C / 2.0°C
Cities in Virginia
120 cities with climate data
| City | Avg Temp | High | Low | Precip | Snow | Comfort |
|---|---|---|---|---|---|---|
| Abingdon | 55°F | 66°F | 43°F | 47.3" | N/A | 67/100 |
| Amelia Courthouse | 58°F | 70°F | 47°F | 45.4" | 8.3" | 77/100 |
| Appomattox | 56°F | 67°F | 46°F | 46.2" | 11.3" | 77/100 |
| Ashland | 58°F | 68°F | 47°F | 45.3" | 14.7" | 77/100 |
| Ashland Hanover CO Muni | 58°F | 69°F | 47°F | 45.8" | N/A | 77/100 |
| Bedford | 57°F | 67°F | 47°F | 46.3" | N/A | 77/100 |
| Big Meadows | 48°F | 56°F | 39°F | N/A | N/A | 52/100 |
| Big Stone Gap | 55°F | 66°F | 43°F | 56.0" | 9.2" | 57/100 |
| Blacksburg Nwso | 52°F | 63°F | 41°F | 42.6" | 24.7" | 62/100 |
| Bland | 51°F | 63°F | 39°F | 43.3" | 26.9" | 62/100 |
| Boston | 54°F | 66°F | 43°F | N/A | N/A | 52/100 |
| Breaks Interstate Park | 54°F | 64°F | 43°F | N/A | N/A | 52/100 |
| Bremo Bluff | 57°F | 71°F | 42°F | 46.9" | N/A | 77/100 |
| Brookneal | 57°F | 69°F | 44°F | 46.0" | 7.4" | 77/100 |
| Buchanan | 57°F | 67°F | 46°F | 43.6" | 11.4" | 77/100 |
| Burkes Garden | 49°F | 60°F | 38°F | 47.6" | 46.9" | 62/100 |
| Cape Charles | 59°F | 66°F | 51°F | 44.5" | N/A | 77/100 |
| Charlotte Court House | 57°F | 68°F | 47°F | 46.6" | 7.7" | 77/100 |
| Charlottesville | 56°F | 65°F | 48°F | 48.2" | N/A | 77/100 |
| Chase City | 59°F | 70°F | 47°F | 46.4" | 5.0" | 77/100 |
| Chatham | 56°F | 68°F | 43°F | 47.7" | 5.8" | 77/100 |
| Christiansburg | 53°F | 63°F | 42°F | 42.1" | 21.7" | 62/100 |
| Clarksville | 60°F | 71°F | 48°F | 46.3" | 3.7" | 82/100 |
| Clintwood | 52°F | 64°F | 40°F | 49.2" | 38.4" | 62/100 |
| Copper Hill | 51°F | 61°F | 42°F | 49.9" | 18.4" | 67/100 |
| Corbin | 57°F | 67°F | 46°F | 44.8" | 11.5" | 77/100 |
| Covington Fltr Plt | 53°F | 64°F | 41°F | 39.5" | 10.1" | 67/100 |
| Crozier | 56°F | 67°F | 45°F | 44.9" | 10.2" | 77/100 |
| Dale Enterprise | 54°F | 65°F | 42°F | 39.0" | 19.4" | 67/100 |
| Danville | 59°F | 71°F | 46°F | 47.1" | 4.6" | 82/100 |
| Danville Rgnl | 58°F | 70°F | 47°F | 43.7" | 7.6" | 77/100 |
| Disputanta | 58°F | 70°F | 47°F | 49.9" | N/A | 77/100 |
| Eastville | 59°F | 67°F | 52°F | N/A | N/A | 62/100 |
| Edinburg | 53°F | 65°F | 41°F | 37.2" | 21.0" | 62/100 |
| Elk Creek | 52°F | 61°F | 43°F | N/A | N/A | 52/100 |
| Emporia | 60°F | 71°F | 48°F | 46.2" | 1.4" | 82/100 |
| Farmville | 57°F | 69°F | 46°F | 44.5" | 6.1" | 77/100 |
| Fentress Naas | 63°F | 74°F | 52°F | 48.6" | N/A | 87/100 |
| Floyd | 51°F | 62°F | 41°F | N/A | N/A | 52/100 |
| Fredericksburg Sewage | 57°F | 68°F | 46°F | 43.4" | 11.3" | 77/100 |
| Free Union | 55°F | 67°F | 43°F | 46.8" | 10.9" | 67/100 |
| Front Royal | 55°F | 66°F | 44°F | 43.4" | 21.1" | 62/100 |
| FT Pickett | 58°F | 69°F | 46°F | 46.8" | 3.3" | 82/100 |
| Galax Radio Wbrf | 53°F | 64°F | 42°F | 45.6" | 16.6" | 67/100 |
| Galax Wtp | 53°F | 64°F | 42°F | 51.0" | N/A | 57/100 |
| Gathright Dam | 52°F | 63°F | 42°F | 40.1" | 18.3" | 67/100 |
| Greenbay | 58°F | 68°F | 47°F | N/A | N/A | 62/100 |
| Grundy | 54°F | 65°F | 43°F | 46.9" | 16.0" | 67/100 |
| Holland | 59°F | 70°F | 49°F | 47.9" | 4.1" | 82/100 |
| Hopewell | 61°F | 71°F | 51°F | 50.1" | 3.5" | 82/100 |
| Hot Springs | 51°F | 62°F | 41°F | 46.5" | 25.3" | 62/100 |
| John H Kerr Dam | 60°F | 72°F | 49°F | 43.5" | N/A | 87/100 |
| Keysville | 57°F | 69°F | 46°F | 43.9" | 4.5" | 82/100 |
| Langley | 60°F | 68°F | 51°F | 47.8" | 2.7" | 82/100 |
| Lawrenceville | 59°F | 71°F | 47°F | N/A | N/A | 62/100 |
| Lebanon | 54°F | 66°F | 41°F | 45.9" | 12.4" | 67/100 |
| Lexington | 55°F | 67°F | 43°F | 42.9" | 13.5" | 67/100 |
| Louisa | 56°F | 67°F | 44°F | 44.2" | 15.8" | 77/100 |
| Luray | 54°F | 66°F | 43°F | 44.1" | 18.6" | 67/100 |
| Lynchburg #2 | 55°F | 67°F | 44°F | 43.6" | 12.4" | 77/100 |
| Lynchburg Rgnl | 56°F | 67°F | 45°F | 42.8" | 11.6" | 77/100 |
| Manassas | 56°F | 66°F | 46°F | N/A | N/A | 62/100 |
| Martinsville Fltr Plt | 56°F | 69°F | 43°F | 47.4" | 9.4" | 77/100 |
| Meadows OF Dan | 54°F | 65°F | 43°F | 58.9" | 7.1" | 57/100 |
| Mill Gap | 48°F | 61°F | 35°F | 45.3" | 33.7" | 62/100 |
| Montebello Fish Cultural Stn | 51°F | 63°F | 39°F | N/A | N/A | 52/100 |
| Monticello | 56°F | 65°F | 46°F | 47.1" | 15.6" | 77/100 |
| MT WX | 53°F | 62°F | 44°F | 46.4" | N/A | 67/100 |
| Mustoe | 49°F | 61°F | 37°F | 46.9" | 39.1" | 62/100 |
| N | 58°F | 66°F | 49°F | 51.9" | 8.5" | 67/100 |
| Newport News | 60°F | 70°F | 50°F | 45.1" | N/A | 77/100 |
| Nora | 53°F | 62°F | 45°F | 47.7" | 38.3" | 62/100 |
| Norfolk | 62°F | 70°F | 53°F | 49.2" | 6.2" | 87/100 |
| Norfolk Rich | 60°F | 71°F | 49°F | 49.7" | N/A | 77/100 |
| Norfolk S | 60°F | 69°F | 51°F | 53.3" | N/A | 77/100 |
| Oceana | 60°F | 69°F | 51°F | 46.6" | 3.4" | 82/100 |
| Painter | 59°F | 68°F | 49°F | 47.2" | 6.6" | 77/100 |
| Palmyra | 55°F | 67°F | 44°F | 43.7" | 12.3" | 77/100 |
| Pearisburg | 53°F | 64°F | 41°F | 42.2" | 22.7" | 62/100 |
| Pennington Gap | 55°F | 67°F | 42°F | 49.7" | 9.3" | 67/100 |
| Petersburg | 59°F | 70°F | 48°F | 47.0" | N/A | 77/100 |
| Philpott Dam | 57°F | 69°F | 45°F | 47.1" | N/A | 77/100 |
| Piedmont Rsch Stn | 56°F | 66°F | 46°F | 43.7" | 16.4" | 77/100 |
| Pulaski | 53°F | 64°F | 42°F | 40.0" | 15.8" | 67/100 |
| Purcellville | 54°F | 64°F | 44°F | 43.8" | N/A | 67/100 |
| Quantico Mcas | 58°F | 67°F | 49°F | 41.0" | 12.4" | 77/100 |
| Radford | 53°F | 64°F | 42°F | 42.1" | N/A | 67/100 |
| Richlands | 53°F | 65°F | 41°F | 44.6" | 17.6" | 67/100 |
| Richmond | 59°F | 70°F | 48°F | 45.5" | 8.8" | 77/100 |
| Roanoke | 56°F | 67°F | 44°F | 45.7" | 11.4" | 77/100 |
| Roanoke Rgnl | 58°F | 69°F | 48°F | 42.8" | 14.8" | 77/100 |
| Rocky MT | 56°F | 68°F | 44°F | 49.2" | 12.6" | 77/100 |
| S Boston | 59°F | 71°F | 46°F | 46.4" | 5.5" | 77/100 |
| Saltville | 54°F | 66°F | 42°F | 48.1" | 10.3" | 67/100 |
| Sandston | 58°F | 69°F | 46°F | N/A | N/A | 62/100 |
| Somerset | 56°F | 67°F | 44°F | 45.0" | 15.5" | 77/100 |
| Sperryville | 54°F | 65°F | 43°F | 48.8" | 21.0" | 62/100 |
| Star Tannery | 52°F | 64°F | 41°F | 40.1" | 25.1" | 62/100 |
| Staunton Wtp | 54°F | 64°F | 44°F | 40.6" | 21.6" | 62/100 |
| Stony Creek | 58°F | 70°F | 47°F | 47.6" | 4.3" | 82/100 |
| Stuart | 56°F | 68°F | 44°F | 52.3" | 6.4" | 67/100 |
| Suffolk Lake Kilby | 59°F | 69°F | 50°F | 51.8" | 5.8" | 67/100 |
| Tye Rvr | 57°F | 69°F | 45°F | 46.3" | N/A | 77/100 |
| Vienna | 54°F | 64°F | 44°F | 43.6" | 18.5" | 67/100 |
| W PT | 59°F | 70°F | 48°F | 47.9" | 9.6" | 77/100 |
| Wakefield | 59°F | 71°F | 47°F | 51.4" | 6.4" | 67/100 |
| Walkerton | 59°F | 70°F | 49°F | 45.6" | 7.8" | 77/100 |
| Wallaceton-lake Drummond | 58°F | 73°F | 43°F | 54.1" | N/A | 67/100 |
| Wallops Island Flight Fac | 58°F | 66°F | 49°F | 43.3" | 8.4" | 77/100 |
| Warrenton | 55°F | 65°F | 45°F | N/A | N/A | 52/100 |
| Warsaw | 58°F | 69°F | 48°F | 45.2" | 11.5" | 77/100 |
| Washington DC Dulles | 56°F | 66°F | 45°F | 43.2" | 21.0" | 72/100 |
| Washington Reagan | 59°F | 68°F | 51°F | 41.8" | 13.7" | 77/100 |
| Waynesboro Wtp | 54°F | 66°F | 42°F | 45.3" | N/A | 67/100 |
| Wfo Sterling | 55°F | 66°F | 45°F | 45.1" | N/A | 77/100 |
| Williamsburg | 60°F | 69°F | 50°F | 51.2" | 4.3" | 72/100 |
| Winchester | 54°F | 64°F | 44°F | 40.7" | 23.1" | 62/100 |
| Wise | 53°F | 64°F | 43°F | 51.6" | 47.1" | 52/100 |
| Woodstock | 53°F | 65°F | 41°F | 39.5" | 23.7" | 62/100 |
| Wytheville | 53°F | 64°F | 41°F | 41.7" | 18.4" | 67/100 |
Source: NOAA National Centers for Environmental Information U.S. Climate Normals v1.0.1 · 1991-2020 Statewide aggregates for Virginia computed from 235 reporting stations.
Climate Insight: Virginia
Virginia's climate profile is aggregated from 120 cities and 235 NOAA weather stations reporting under the 1991–2020 U.S. Climate Normals program. The statewide average annual temperature sits at 56°F, which represents a population-weighted mean across all measured localities rather than any single city's reading. Because Virginia spans multiple latitudes, elevations, and proximities to large water bodies, local conditions can differ from this headline number by wide margins — coastal, valley, and mountain stations often diverge by ten degrees or more even within a single month.
Precipitation and snowfall averages round out the climatological picture. Across Virginia, annual precipitation averages 46.0 inches, with typical seasonal snowfall near 14.3 inches statewide. These numbers combine rain, sleet, and snow water-equivalent and describe the thirty-year normal rather than any particular recent year. Readers evaluating a specific destination should drill into one of the 120 individual city pages below — each city's climate varies based on local geography, and the statewide figures here are averages that mask meaningful intrastate differences.
For planning purposes, the city table above is sorted to help you compare averages side-by-side: annual mean temperature, average daily high and low, precipitation totals, snowfall, and PlainClimate's composite comfort score. A city's comfort score weighs temperature mildness, humidity, and extreme-weather frequency into a single 0–100 rating, which is especially useful when contrasting locations at different elevations or distances from the coast. Use these rankings as a starting point, then open each city page for monthly breakdowns, degree-day totals, frost dates, and humidity metrics that matter for gardening, energy budgeting, and relocation decisions.
Data source: NOAA U.S. Climate Normals v1.0.1 (1991-2020). For informational purposes only.
Read our methodology — how this data is sourced, computed, and verified.