Roofer salary in Virginia
Median $23.28 an hour for 2,070 roofers, May 2025, with the union scale by county and the trend since 1999.
Roofer pay in Virginia: the full range
Virginia ranks 35th of 51 states for median roofer pay, and 48th once adjusted for cost of living (the cost-of-living-adjusted median is $23.03). 2,070 roofers work in the state.
| Career stage (approximate) | Hourly | Annual | Where it sits in the distribution |
|---|---|---|---|
| Apprentice / entry | $18.37 – $22.00 | $38,220 – $45,760 | roughly the 10th–25th percentile |
| Journeyman | $22.00 – $27.69 | $45,760 – $57,590 | the middle half, around the median |
| Master / foreman / specialist | $27.69 – $31.93 | $57,590 – $66,420 | the 75th–90th percentile and above |
Where does your pay fall?
Roofer pay by metro in Virginia
| Metro | 10th | Median $/hr | 90th | Jobs | vs state |
|---|---|---|---|---|---|
| Washington DC | $22.70 | $28.05 | $38.27 | 1,940 | 20% above |
| Richmond | $19.05 | $23.10 | $29.39 | 330 | 1% below |
| Virginia Beach | $18.76 | $22.34 | $28.13 | 350 | 4% below |
| Roanoke | $14.89 | $22.25 | $28.34 | 90 | 4% below |
| Lynchburg | $18.25 | $22.19 | $24.03 | 70 | 5% below |
| Harrisonburg | $18.32 | $22.12 | $28.28 | 90 | 5% below |
| Winchester | $15.29 | $21.97 | $22.64 | 40 | 6% below |
| Kingsport | $16.94 | $19.10 | $27.64 | 90 | 18% below |
Roofer wages in Virginia over time
Table
| Year | Virginia $/hr | In 2025 $ | US $/hr | Jobs |
|---|---|---|---|---|
| 1999 | $12.22 | $23.61 | $12.94 | 2,990 |
| 2000 | $12.84 | $24.01 | $13.95 | 2,460 |
| 2001 | $13.30 | $24.18 | $14.16 | 2,790 |
| 2002 | $13.45 | $24.07 | $14.51 | 2,550 |
| 2003 | $13.54 | $23.69 | $14.43 | 2,610 |
| 2004 | $13.41 | $22.85 | $14.83 | 2,840 |
| 2005 | $13.34 | $21.99 | $15.01 | 3,340 |
| 2006 | $14.47 | $23.11 | $15.51 | 3,170 |
| 2007 | $15.09 | $23.43 | $15.98 | 3,280 |
| 2008 | $15.99 | $23.91 | $16.17 | 2,790 |
| 2009 | $15.94 | $23.92 | $16.33 | 2,520 |
| 2010 | $16.51 | $24.38 | $16.45 | 2,200 |
| 2011 | $16.82 | $24.07 | $16.96 | 2,550 |
| 2012 | $16.82 | $23.59 | $16.97 | 2,360 |
| 2013 | $16.69 | $23.07 | $17.08 | 2,480 |
| 2014 | $17.38 | $23.64 | $17.19 | 2,120 |
| 2015 | $18.24 | $24.78 | $17.65 | 2,120 |
| 2016 | $20.01 | $26.84 | $18.15 | 2,310 |
| 2017 | $20.06 | $26.35 | $18.74 | 2,500 |
| 2018 | $20.25 | $25.96 | $19.22 | 2,460 |
| 2019 | $22.05 | $27.77 | $20.24 | 2,600 |
| 2020 | $22.54 | $28.04 | $20.95 | 2,860 |
| 2021 | $22.56 | $26.80 | $22.65 | 2,590 |
| 2022 | $22.62 | $24.88 | $23.04 | 2,410 |
| 2023 | $22.84 | $24.13 | $24.05 | 2,320 |
| 2024 | $23.52 | $24.14 | $24.51 | 2,360 |
| 2025 | $23.28 | $23.28 | $26.65 | 2,070 |
In today's dollars, the median roofer wage in Virginia changed by -6.0% over the last ten years of data.
Union scale and prevailing wage for roofers in Virginia
On federally funded construction in Virginia, contractors must pay roofers at least the Davis-Bacon rate for the county. 0 of the 102 counties with a Building rate use a union contract rate (typical package — an hour including fringe); the rest use a survey rate (typical $18.89). 102 of the 102 counties still use a survey rate dated 2016 or earlier (for example Accomack County at $18.62). The market median for the state is $23.28.
| County | Rate source | Base | Fringe | Total | Determination |
|---|---|---|---|---|---|
| Fairfax | Survey SUVA2013-034 2016-01-11 | $21.55 | $7.01 | $28.56 | VA20260178 |
| Gloucester | Survey SUVA2013-064 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260176 |
| Isle of Wight | Survey SUVA2013-039 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260156 |
| James City | Survey SUVA2013-040 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260157 |
| Mathews | Survey SUVA2013-064 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260176 |
| York | Survey SUVA2013-054 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260169 |
| Chesapeake | Survey SUVA2013-030 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260016 |
| Hampton | Survey SUVA2013-037 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260022 |
| Newport News | Survey SUVA2013-042 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260159 |
| Norfolk | Survey SUVA2013-043 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260160 |
| Portsmouth | Survey SUVA2013-045 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260161 |
| Suffolk | Survey SUVA2013-064 2016-01-11 | $18.40 | $2.31 | $20.71 | VA20260176 |
| Albemarle | Survey SUVA2013-023 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260011 |
| Amherst | Survey SUVA2013-057 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260171 |
| Appomattox | Survey SUVA2013-024 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260012 |
| Augusta | Survey SUVA2013-026 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260014 |
| Bedford | Survey SUVA2013-057 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260171 |
| Botetourt | Survey SUVA2013-059 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260172 |
| Buckingham | Survey SUVA2013-060 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260173 |
| Campbell | Survey SUVA2013-057 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260171 |
| Craig | Survey SUVA2013-059 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260172 |
| Floyd | Survey SUVA2013-063 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260175 |
| Fluvanna | Survey SUVA2013-060 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260173 |
| Franklin | Survey SUVA2013-059 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260172 |
| Giles | Survey SUVA2013-063 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260175 |
| Greene | Survey SUVA2013-060 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260173 |
| Montgomery | Survey SUVA2013-063 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260175 |
| Nelson | Survey SUVA2013-060 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260173 |
| Pulaski | Survey SUVA2013-047 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260163 |
| Roanoke | Survey SUVA2013-059 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260172 |
| Rockingham | Survey SUVA2013-049 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260164 |
| Scott | Survey SUVA2013-068 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260177 |
| Washington | Survey SUVA2013-068 2016-01-11 | $16.17 | $3.73 | $19.90 | VA20260177 |
| Virginia Beach | Survey SUVA2013-052 2016-01-11 | $17.50 | $2.20 | $19.70 | VA20260167 |
| Amelia | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| Caroline | Survey SUVA2013-028 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260015 |
| Charles City | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| Chesterfield | Survey SUVA2013-031 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260017 |
| Dinwiddie | Survey SUVA2013-033 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260019 |
| Goochland | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| Hanover | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| Henrico | Survey SUVA2013-038 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260155 |
| King William | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| New Kent | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| Powhatan | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| Prince George | Survey SUVA2013-056 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260170 |
| Sussex | Survey SUVA2013-051 2016-01-11 | $17.40 | $1.55 | $18.95 | VA20260166 |
| Arlington | Survey SUVA2013-025 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260013 |
| Clarke | Survey SUVA2013-032 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260018 |
| Culpeper | Survey SUVA2013-062 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260174 |
| Fauquier | Survey SUVA2013-035 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260020 |
| Frederick | Survey SUVA2013-036 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260021 |
| Loudoun | Survey SUVA2013-041 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260158 |
| Prince William | Survey SUVA2013-046 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260162 |
| Rappahannock | Survey SUVA2013-062 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260174 |
| Spotsylvania | Survey SUVA2013-050 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260165 |
| Stafford | Survey SUVA2013-062 2016-01-11 | $15.83 | $3.06 | $18.89 | VA20260174 |
| Accomack | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Alleghany | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Bath | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Bland | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Brunswick | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Buchanan | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Carroll | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Charlotte | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Cumberland | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Dickenson | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Essex | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Grayson | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Greensville | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Halifax | Survey SUVA2013-012 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260002 |
| Henry | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Highland | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| King and Queen | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| King George | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Lancaster | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Lee | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Louisa | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Lunenburg | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Madison | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Mecklenburg | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Middlesex | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Northampton | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Northumberland | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Nottoway | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Orange | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Page | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Patrick | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Pittsylvania | Survey SUVA2013-013 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260003 |
| Prince Edward | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Richmond | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Rockbridge | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Russell | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Shenandoah | Survey SUVA2013-017 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260008 |
| Smyth | Survey SUVA2013-014 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260005 |
| Southampton | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Surry | Survey SUVA2013-019 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260010 |
| Tazewell | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Westmoreland | Survey SUVA2013-016 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260007 |
| Wise | Survey SUVA2013-015 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260006 |
| Wythe | Survey SUVA2013-018 2016-01-11 | $15.56 | $3.06 | $18.62 | VA20260009 |
| Warren | Survey SUVA2013-053 2016-01-11 | $15.00 | $2.74 | $17.74 | VA20260168 |
Building construction type, current revisions as of 2026-09-28. Residential, Heavy and Highway rates differ; look them up on the Virginia prevailing wage page. This is not the official wage determination.
Is construction work growing in Virginia?
Keep comparing
Roofer pay in neighbouring states
Other trades in Virginia
Questions this page answers
How much do roofers make in Virginia?
The median roofer in Virginia earned $23.28 an hour ($48,420 a year) in May 2025, 13% below the national median of $26.65. The middle half earn $22.00–$27.69; the top 10% earn more than $31.93.
Where does Virginia rank for roofer pay?
Virginia ranks 35th of 51 states for roofer pay, with a median of $23.28 an hour, and 48th after adjusting for Virginia's cost of living (BEA price parity 101.1, US = 100).
What is the union roofer rate in Virginia?
Davis-Bacon determinations do not list a roofer classification for most Virginia counties, or the trade is not covered; the BLS wage figures above are the best available measure.
How many roofers work in Virginia?
BLS counted 2,070 roofers in Virginia in May 2025, 0.5 per 1,000 jobs (location quotient 0.58; 1.0 is the national average concentration).
Sources and notes
- BLS Occupational Employment and Wage Statistics, May 2025, Virginia and metro areas, SOC 47-2181.
- BLS Current Employment Statistics, state construction employment through 2026-08.
- BLS Quarterly Census of Employment and Wages, 2025 annual averages.
- BEA Regional Price Parities (cost-of-living adjustment).
- SAM.gov Davis-Bacon wage determinations, current revisions as of 2026-09-28. Not the official determination.