Roofer salary in Ohio
Median $23.74 an hour for 4,610 roofers, May 2025, with the union scale by county, the job trend since 1999 and the state's own outlook.
Roofer pay in Ohio: the full range
Ohio ranks 29th of 51 states for median roofer pay, and 31st once adjusted for cost of living (the cost-of-living-adjusted median is $25.58). 4,610 roofers work in the state. The top 10% earn 1.9× what the bottom 10% earn.
| Career stage (approximate) | Hourly | Annual | Where it sits in the distribution |
|---|---|---|---|
| Apprentice / entry level | $19.20 – $22.14 | $39,940 – $46,060 | roughly the 10th to 25th percentile |
| Journeyman | $22.14 – $30.40 | $46,060 – $63,230 | the middle half, around the median |
| Master, foreman or specialist | $30.40 – $36.22 | $63,230 – $75,340 | the 75th to 90th percentile and above |
Where does your pay fall?
Roofer pay by metro in Ohio
| Metro | 10th | Median $/hr | Cost-of-living adjusted | 90th | Jobs | vs state |
|---|---|---|---|---|---|---|
| Wheeling | $19.71 | $28.96 | $32.80 | $33.57 | 110 | 22% above |
| Canton | $18.77 | $28.57 | $31.96 | $35.42 | 140 | 20% above |
| Toledo | $18.94 | $27.74 | $30.32 | $35.99 | 230 | 17% above |
| Cleveland | $19.33 | $26.77 | $28.51 | $40.60 | 780 | 13% above |
| Akron | $19.20 | $26.28 | $28.14 | $37.30 | 370 | 11% above |
| Dayton | $19.04 | $24.72 | $26.67 | $35.27 | 320 | 4% above |
| Columbus | $20.51 | $23.76 | $24.88 | $35.30 | 700 | about the same as |
| Cincinnati | $19.66 | $23.66 | $24.80 | $35.48 | 770 | about the same as |
| Huntington | $17.07 | $23.54 | $26.63 | $32.23 | 110 | 1% below |
| Youngstown | $18.52 | $22.99 | $26.30 | $34.26 | 380 | 3% below |
| Mansfield | $18.20 | $22.82 | $25.67 | $30.01 | 60 | 4% below |
| Lima | $18.53 | $21.63 | $24.11 | $44.99 | 40 | 9% below |
Cost-of-living adjusted: median divided by the BEA regional price parity for the metro (2024, US = 100).
Roofer wages in Ohio over time
Table
| Year | Ohio $/hr | In 2025 $ | US $/hr | Jobs |
|---|---|---|---|---|
| 1999 | $13.42 | $25.93 | $12.94 | 5,240 |
| 2000 | $14.56 | $27.22 | $13.95 | 6,020 |
| 2001 | $15.98 | $29.05 | $14.16 | 4,740 |
| 2002 | $15.52 | $27.77 | $14.51 | 4,910 |
| 2003 | $16.09 | $28.15 | $14.43 | 4,860 |
| 2004 | $15.95 | $27.18 | $14.83 | 4,950 |
| 2005 | $15.88 | $26.18 | $15.01 | 4,930 |
| 2006 | $15.76 | $25.17 | $15.51 | 4,610 |
| 2007 | $16.31 | $25.32 | $15.98 | 4,430 |
| 2008 | $16.39 | $24.51 | $16.17 | 4,610 |
| 2009 | $16.15 | $24.24 | $16.33 | 4,250 |
| 2010 | $16.40 | $24.21 | $16.45 | 3,650 |
| 2011 | $16.62 | $23.79 | $16.96 | 4,150 |
| 2012 | $16.46 | $23.08 | $16.97 | 4,790 |
| 2013 | $16.91 | $23.37 | $17.08 | 4,810 |
| 2014 | $17.29 | $23.51 | $17.19 | 4,660 |
| 2015 | $17.85 | $24.25 | $17.65 | 4,710 |
| 2016 | $17.96 | $24.09 | $18.15 | 4,730 |
| 2017 | $17.53 | $23.02 | $18.74 | 4,370 |
| 2018 | $18.65 | $23.91 | $19.22 | 4,620 |
| 2019 | $19.39 | $24.42 | $20.24 | 5,070 |
| 2020 | $21.80 | $27.12 | $20.95 | 4,760 |
| 2021 | $22.53 | $26.77 | $22.65 | 4,840 |
| 2022 | $22.79 | $25.07 | $23.04 | 4,910 |
| 2023 | $24.53 | $25.92 | $24.05 | 4,840 |
| 2024 | $27.13 | $27.84 | $24.51 | 4,230 |
| 2025 | $23.74 | $23.74 | $26.65 | 4,610 |
In today's dollars, the median roofer wage in Ohio changed by -2.1% over the last ten years of data and by -2.8% since 2019.
Are there more roofer jobs in Ohio?
Since 1999, the number of roofers counted in Ohio has changed by -12.0%, against +17.5% for the country as a whole. Since 2019 the state count changed by -9.1%.
Table
| Year | Ohio jobs | Ohio index | US index |
|---|---|---|---|
| 1999 | 5,240 | 100 | 100 |
| 2000 | 6,020 | 115 | 99 |
| 2001 | 4,740 | 90 | 102 |
| 2002 | 4,910 | 94 | 102 |
| 2003 | 4,860 | 93 | 103 |
| 2004 | 4,950 | 94 | 104 |
| 2005 | 4,930 | 94 | 104 |
| 2006 | 4,610 | 88 | 108 |
| 2007 | 4,430 | 84 | 107 |
| 2008 | 4,610 | 88 | 104 |
| 2009 | 4,250 | 81 | 94 |
| 2010 | 3,650 | 70 | 86 |
| 2011 | 4,150 | 79 | 83 |
| 2012 | 4,790 | 91 | 85 |
| 2013 | 4,810 | 92 | 86 |
| 2014 | 4,660 | 89 | 90 |
| 2015 | 4,710 | 90 | 95 |
| 2016 | 4,730 | 90 | 101 |
| 2017 | 4,370 | 83 | 105 |
| 2018 | 4,620 | 88 | 112 |
| 2019 | 5,070 | 97 | 112 |
| 2020 | 4,760 | 91 | 112 |
| 2021 | 4,840 | 92 | 113 |
| 2022 | 4,910 | 94 | 114 |
| 2023 | 4,840 | 92 | 117 |
| 2024 | 4,230 | 81 | 119 |
| 2025 | 4,610 | 88 | 118 |
Job counts are BLS OEWS survey estimates built from three years of samples, so moves of a few percent from one year to the next are within the survey's margin. Self-employed tradespeople are not counted. Areas with fewer than 3,000 jobs or a large sampling error are shown as a single figure rather than a trend.
Outlook for roofers in Ohio
Ohio's labor market agency projects the number of roofers in the state to change by +4.4% between 2024 and 2034, from 5,090 to 5,310, with about 380 openings a year. Nationally, BLS projects +5.3% over 2025-35. State counts include the self-employed, so the base is larger than the 4,610 counted by the BLS employer survey.
Source: Ohio labor market information agency via Projections Central, 2024–2034 long-term projections (state projections page).
Union scale and prevailing wage for roofers in Ohio
On federally funded construction in Ohio, contractors must pay roofers at least the Davis-Bacon rate for the county. 57 of the 88 counties with a Building rate use a union contract rate (typical package $54.32 an hour including fringe); the rest use a survey rate (typical $44.76). 9 of the 88 counties still use a survey rate dated 2014 or earlier (for example Delaware County at $36.62). The market median for the state is $23.74.
| County | Rate source | Base | Fringe | Total | Determination |
|---|---|---|---|---|---|
| Ashland | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260031 |
| Ashtabula | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260032 |
| Columbiana | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260036 |
| Crawford | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260037 |
| Cuyahoga | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260074 |
| Geauga | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260080 |
| Holmes | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260067 |
| Huron | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260044 |
| Knox | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260045 |
| Lake | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260084 |
| Lorain | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260087 |
| Mahoning | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260090 |
| Marion | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260067 |
| Medina | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260091 |
| Portage | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260097 |
| Sandusky | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260054 |
| Seneca | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260056 |
| Summit | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260100 |
| Trumbull | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260101 |
| Wyandot | Union ROOF0044-003 2025-04-27 | $40.15 | $21.28 | $61.43 | OH20260063 |
| Brown | Union ROOF0042-007 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260070 |
| Butler | Union ROOF0042-007 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260071 |
| Clark | Union ROOF0042-001 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260072 |
| Clermont | Union ROOF0042-007 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260073 |
| Greene | Union ROOF0042-001 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260081 |
| Hamilton | Union ROOF0042-007 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260082 |
| Miami | Union ROOF0042-001 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260092 |
| Montgomery | Union ROOF0042-001 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260093 |
| Preble | Union ROOF0042-001 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260098 |
| Warren | Union ROOF0042-007 2025-08-01 | $34.38 | $19.94 | $54.32 | OH20260103 |
| Belmont | Union ROOF0088-003 2024-06-01 | $32.10 | $21.45 | $53.55 | OH20260069 |
| Carroll | Union ROOF0088-003 2024-06-01 | $32.10 | $21.45 | $53.55 | OH20260106 |
| Jefferson | Union ROOF0088-003 2024-06-01 | $32.10 | $21.45 | $53.55 | OH20260083 |
| Lawrence | Union ROOF0088-003 2024-06-01 | $32.10 | $21.45 | $53.55 | OH20260085 |
| Stark | Union ROOF0088-003 2024-06-01 | $32.10 | $21.45 | $53.55 | OH20260106 |
| Washington | Union ROOF0088-003 2024-06-01 | $32.10 | $21.45 | $53.55 | OH20260104 |
| Wayne | Union ROOF0088-003 2024-06-01 | $32.10 | $21.45 | $53.55 | OH20260061 |
| Allen | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260068 |
| Auglaize | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260034 |
| Champaign | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260035 |
| Darke | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260038 |
| Defiance | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260039 |
| Erie | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260076 |
| Fulton | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260079 |
| Hancock | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260042 |
| Hardin | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260066 |
| Henry | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260043 |
| Logan | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260046 |
| Lucas | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260088 |
| Mercer | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260048 |
| Ottawa | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260095 |
| Paulding | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260066 |
| Putnam | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260052 |
| Shelby | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260057 |
| Van Wert | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260059 |
| Williams | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260062 |
| Wood | Union ROOF0134-006 2021-07-01 | $29.07 | $19.84 | $48.91 | OH20260105 |
| Scioto | uavg UAVGOH0018 2019-01-01 | $30.52 | $15.75 | $46.27 | OH20260055 |
| Adams | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260030 |
| Athens | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260033 |
| Clinton | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260064 |
| Fayette | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260040 |
| Gallia | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260041 |
| Highland | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260064 |
| Hocking | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260064 |
| Jackson | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260064 |
| Meigs | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260047 |
| Pike | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260051 |
| Ross | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260053 |
| Vinton | uavg UAVGOH0002 2019-01-01 | $30.19 | $15.73 | $45.92 | OH20260060 |
| Coshocton | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260065 |
| Guernsey | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260065 |
| Harrison | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260065 |
| Monroe | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260049 |
| Morgan | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260065 |
| Muskingum | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260050 |
| Noble | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260065 |
| Perry | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260065 |
| Tuscarawas | uavg UAVGOH0017 2019-01-01 | $29.59 | $15.17 | $44.76 | OH20260058 |
| Franklin | Survey SUOH2012-080 2014-08-29 | $25.33 | $11.37 | $36.70 | OH20260078 |
| Delaware | Survey SUOH2012-077 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260075 |
| Fairfield | Survey SUOH2012-079 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260077 |
| Licking | Survey SUOH2012-088 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260086 |
| Madison | Survey SUOH2012-091 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260089 |
| Morrow | Survey SUOH2012-096 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260094 |
| Pickaway | Survey SUOH2012-098 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260096 |
| Richland | Survey SUOH2012-101 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260099 |
| Union | Survey SUOH2012-104 2014-08-29 | $25.24 | $11.38 | $36.62 | OH20260102 |
Building construction type, current revisions as of 2026-11-06. Residential, Heavy and Highway rates differ; look them up on the Ohio prevailing wage page. This is not the official wage determination.
Is construction work growing in Ohio?
Keep comparing
Roofer pay in neighbouring states
Other trades in Ohio
More on Ohio
Questions this page answers
How much do roofers make in Ohio?
The median roofer in Ohio earned $23.74 an hour ($49,390 a year) in May 2025, 11% below the national median of $26.65. The middle half earn $22.14–$30.40; the top 10% earn more than $36.22.
Where does Ohio rank for roofer pay?
Ohio ranks 29th of 51 states for roofer pay, with a median of $23.74 an hour, and 31st after adjusting for Ohio's cost of living (BEA price parity 92.8, US = 100).
What is the union roofer rate in Ohio?
Davis-Bacon determinations list a union contract rate for roofers in 57 counties, with a typical package of $54.32 an hour including fringe benefits; see the county table above.
How many roofers work in Ohio?
BLS counted 4,610 roofers in Ohio in May 2025, 0.8 per 1,000 jobs (location quotient 0.95; 1.0 is the national average concentration).
Is roofer work growing in Ohio?
The BLS employer survey count of roofers in Ohio went from 4,710 in 2015 to 4,610 in 2025, -2.1%, and -9.1% since 2019. Ohio's labor market agency projects +4.4% growth for roofers between 2024 and 2034, from 5,090 to 5,310 jobs.
How many roofer openings a year are there in Ohio?
Ohio projects about 380 openings a year for roofers over 2024–2034, counting both new positions and replacements for people who retire or change occupation. Nationally BLS projects about 12,000 a year.
Sources and notes
- BLS Occupational Employment and Wage Statistics, May 2025, Ohio and metro areas, SOC 47-2181. Job counts are survey estimates and exclude the self-employed.
- BLS Current Employment Statistics, state construction employment through 2026-09.
- BLS Quarterly Census of Employment and Wages, 2025 annual averages.
- BEA Regional Price Parities, 2024 (cost-of-living adjustment).
- SAM.gov Davis-Bacon wage determinations, current revisions as of 2026-11-06. Not the official determination.
- BLS Employment Projections, national, 2025-35.
- State projection: Ohio labor market information agency via Projections Central, 2024–2034, fetched 2026-10-05.