Heavy equipment operator salary in Iowa
Median $29.01 an hour for 5,530 operating engineers and other construction equipment operators, May 2025, with the union scale by county and the trend since 1999.
Heavy equipment operator pay in Iowa: the full range
Iowa ranks 30th of 51 states for median heavy equipment operator pay, and 17th once adjusted for cost of living (the cost-of-living-adjusted median is $33.04). 5,530 operating engineers and other construction equipment operators work in the state.
| Career stage (approximate) | Hourly | Annual | Where it sits in the distribution |
|---|---|---|---|
| Apprentice / entry | $22.45 – $25.77 | $46,690 – $53,610 | roughly the 10th–25th percentile |
| Journeyman | $25.77 – $34.93 | $53,610 – $72,660 | the middle half, around the median |
| Master / foreman / specialist | $34.93 – $42.05 | $72,660 – $87,460 | the 75th–90th percentile and above |
Where does your pay fall?
Heavy equipment operator pay by metro in Iowa
| Metro | 10th | Median $/hr | 90th | Jobs | vs state |
|---|---|---|---|---|---|
| Waterloo | $26.50 | $47.01 | $47.01 | 420 | 62% above |
| Davenport | $20.63 | $31.18 | $46.66 | 570 | 7% above |
| Cedar Rapids | $23.77 | $30.44 | $41.69 | 490 | 5% above |
| Des Moines | $22.46 | $30.10 | $39.89 | 1,260 | 4% above |
| Ames | $23.31 | $30.00 | $38.77 | 190 | 3% above |
| Dubuque | $23.39 | $29.93 | $43.99 | 160 | 3% above |
| Iowa City | $24.04 | $29.10 | $38.02 | 210 | about the same as |
| Omaha | $22.54 | $28.86 | $37.46 | 1,380 | 1% below |
| Sioux City | $22.57 | $28.43 | $35.11 | 200 | 2% below |
Heavy equipment operator wages in Iowa over time
Table
| Year | Iowa $/hr | In 2025 $ | US $/hr | Jobs |
|---|---|---|---|---|
| 1999 | $13.95 | $26.96 | $15.31 | 4,360 |
| 2000 | $13.98 | $26.14 | $15.99 | 3,760 |
| 2001 | $15.00 | $27.27 | $16.42 | 4,000 |
| 2002 | $15.91 | $28.47 | $16.94 | 3,910 |
| 2003 | $16.64 | $29.11 | $16.84 | 3,910 |
| 2004 | $16.83 | $28.68 | $17.00 | 4,080 |
| 2005 | $16.87 | $27.81 | $17.23 | 4,450 |
| 2006 | $17.58 | $28.07 | $17.74 | 4,900 |
| 2007 | $18.91 | $29.36 | $18.33 | 4,970 |
| 2008 | $19.41 | $29.02 | $18.88 | 5,250 |
| 2009 | $19.66 | $29.50 | $19.12 | 5,110 |
| 2010 | $18.39 | $27.15 | $19.42 | 4,780 |
| 2011 | $19.08 | $27.31 | $19.96 | 4,860 |
| 2012 | $19.19 | $26.91 | $20.13 | 4,830 |
| 2013 | $20.08 | $27.75 | $20.45 | 4,970 |
| 2014 | $20.48 | $27.85 | $20.92 | 5,390 |
| 2015 | $21.53 | $29.24 | $21.44 | 5,710 |
| 2016 | $21.69 | $29.09 | $22.06 | 5,710 |
| 2017 | $22.02 | $28.92 | $22.61 | 6,060 |
| 2018 | $22.64 | $29.03 | $22.98 | 5,620 |
| 2019 | $23.50 | $29.59 | $23.55 | 5,920 |
| 2020 | $24.15 | $30.04 | $23.93 | 5,690 |
| 2021 | $23.46 | $27.87 | $23.25 | 6,500 |
| 2022 | $25.01 | $27.51 | $24.73 | 6,530 |
| 2023 | $28.33 | $29.93 | $27.00 | 6,190 |
| 2024 | $29.43 | $30.20 | $28.23 | 5,440 |
| 2025 | $29.01 | $29.01 | $28.78 | 5,530 |
In today's dollars, the median heavy equipment operator wage in Iowa changed by -0.8% over the last ten years of data.
Union scale and prevailing wage for heavy equipment operators in Iowa
On federally funded construction in Iowa, contractors must pay heavy equipment operators at least the Davis-Bacon rate for the county. 10 of the 99 counties with a Building rate use a union contract rate (typical package $57.35 an hour including fringe); the rest use a survey rate (typical $41.11). 87 of the 99 counties still use a survey rate dated 2016 or earlier (for example Adair County at $35.63). The market median for the state is $29.01.
| County | Rate source | Base | Fringe | Total | Determination |
|---|---|---|---|---|---|
| Lee | Union ENGI0150-038 2025-06-01 | $41.50 | $41.25 | $82.75 | IA20260047 |
| Scott | Union ENGI0150-038 2025-06-01 | $41.50 | $41.25 | $82.75 | IA20260073 |
| Benton | Union ENGI0234-003 2025-05-01 | $39.00 | $18.35 | $57.35 | IA20260078 |
| Dubuque | Union ENGI0234-003 2025-05-01 | $39.00 | $18.35 | $57.35 | IA20260065 |
| Jones | Union ENGI0234-003 2025-05-01 | $39.00 | $18.35 | $57.35 | IA20260078 |
| Linn | Union ENGI0234-003 2025-05-01 | $39.00 | $18.35 | $57.35 | IA20260069 |
| Dallas | Union ENGI0234-005 2025-05-01 | $35.02 | $21.94 | $56.96 | IA20260064 |
| Polk | Union ENGI0234-005 2025-05-01 | $35.02 | $21.94 | $56.96 | IA20260071 |
| Story | Union ENGI0234-005 2025-05-01 | $35.02 | $21.94 | $56.96 | IA20260074 |
| Warren | Union ENGI0234-005 2025-05-01 | $35.02 | $21.94 | $56.96 | IA20260075 |
| Guthrie | uavg UAVGIA0003 2025-01-01 | $33.57 | $20.75 | $54.32 | IA20260079 |
| Madison | uavg UAVGIA0003 2025-01-01 | $33.57 | $20.75 | $54.32 | IA20260079 |
| Appanoose | Survey SUIA2016-005 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260032 |
| Cedar | Survey SUIA2016-009 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260036 |
| Clinton | Survey SUIA2016-011 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260038 |
| Davis | Survey SUIA2016-013 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260040 |
| Henry | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Iowa | Survey SUIA2016-018 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260045 |
| Jackson | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Jasper | Survey SUIA2016-019 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260046 |
| Jefferson | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Keokuk | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Louisa | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Mahaska | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Marion | Survey SUIA2016-021 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260048 |
| Marshall | Survey SUIA2016-022 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260049 |
| Monroe | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Muscatine | Survey SUIA2016-023 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260050 |
| Poweshiek | Survey SUIA2016-025 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260052 |
| Tama | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Van Buren | Survey SUIA2016-036 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260061 |
| Wapello | Survey SUIA2016-028 2016-07-19 | $27.31 | $15.35 | $42.66 | IA20260055 |
| Allamakee | Survey SUIA2016-004 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260031 |
| Buchanan | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Buena Vista | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Butler | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Calhoun | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Cerro Gordo | Survey SUIA2016-010 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260037 |
| Cherokee | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Chickasaw | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Clay | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Clayton | Survey SUIA2016-034 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260059 |
| Delaware | Survey SUIA2016-034 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260059 |
| Dickinson | Survey SUIA2016-015 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260042 |
| Emmet | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Fayette | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Floyd | Survey SUIA2016-016 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260043 |
| Franklin | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Hamilton | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Hancock | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Hardin | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Howard | Survey SUIA2016-017 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260044 |
| Humboldt | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Ida | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Kossuth | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Lyon | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Mitchell | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| O'Brien | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Osceola | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Palo Alto | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Plymouth | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Pocahontas | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Sac | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Sioux | Survey SUIA2016-026 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260053 |
| Webster | Survey SUIA2016-029 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260056 |
| Winnebago | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Winneshiek | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Worth | Survey SUIA2016-055 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260080 |
| Wright | Survey SUIA2016-031 2016-07-19 | $26.64 | $14.47 | $41.11 | IA20260057 |
| Black Hawk | Survey SUIA2016-037 2016-07-19 | $26.13 | $13.56 | $39.69 | IA20260062 |
| Bremer | Survey SUIA2016-038 2016-07-19 | $26.13 | $13.56 | $39.69 | IA20260063 |
| Grundy | Survey SUIA2016-041 2016-07-19 | $26.13 | $13.56 | $39.69 | IA20260066 |
| Johnson | Survey SUIA2016-043 2016-07-19 | $26.13 | $13.56 | $39.69 | IA20260068 |
| Washington | Survey SUIA2016-051 2016-07-19 | $26.13 | $13.56 | $39.69 | IA20260076 |
| Adair | Survey SUIA2016-002 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260029 |
| Adams | Survey SUIA2016-003 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260030 |
| Audubon | Survey SUIA2016-006 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260033 |
| Boone | Survey SUIA2016-007 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260034 |
| Carroll | Survey SUIA2016-008 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260035 |
| Cass | Survey SUIA2016-033 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260058 |
| Clarke | Survey SUIA2016-033 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260058 |
| Crawford | Survey SUIA2016-012 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260039 |
| Decatur | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Fremont | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Greene | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Lucas | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Monona | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Montgomery | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Page | Survey SUIA2016-024 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260051 |
| Ringgold | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Shelby | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Taylor | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Union | Survey SUIA2016-027 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260054 |
| Wayne | Survey SUIA2016-035 2016-07-19 | $24.43 | $11.20 | $35.63 | IA20260060 |
| Des Moines | Survey SUIA2016-014 2016-07-19 | $18.00 | $2.70 | $20.70 | IA20260041 |
| Harrison | Survey SUIA2016-042 2016-07-19 | $17.41 | $0.00 | $17.41 | IA20260067 |
| Mills | Survey SUIA2016-045 2016-07-19 | $17.41 | $0.00 | $17.41 | IA20260070 |
| Pottawattamie | Survey SUIA2016-047 2016-07-19 | $17.41 | $0.00 | $17.41 | IA20260072 |
| Woodbury | Survey SUIA2016-052 2016-07-19 | $17.41 | $0.00 | $17.41 | IA20260077 |
Building construction type, current revisions as of 2026-09-28. Residential, Heavy and Highway rates differ; look them up on the Iowa prevailing wage page. This is not the official wage determination.
Is construction work growing in Iowa?
Contractor pay by county
Average pay at specialty trade contractors establishments by county (all employees, not just heavy equipment operators), from the Quarterly Census of Employment and Wages, 2025 annual averages.
| County | Employees | Average annual pay | Avg weekly wage |
|---|---|---|---|
| Crawford County | 235 | $89,187 | $1,715 |
| Sioux County | 1,658 | $88,688 | $1,706 |
| Scott County | 4,874 | $86,416 | $1,662 |
| Ringgold County | 83 | $83,981 | $1,615 |
| Polk County | 15,121 | $83,791 | $1,611 |
| Linn County | 6,073 | $79,926 | $1,537 |
| Lee County | 771 | $79,246 | $1,524 |
| Jefferson County | 168 | $77,394 | $1,488 |
| Woodbury County | 2,137 | $76,259 | $1,467 |
| Pottawattamie County | 1,528 | $76,138 | $1,464 |
| Webster County | 663 | $74,914 | $1,441 |
| Cass County | 173 | $73,664 | $1,417 |
| Boone County | 448 | $73,092 | $1,406 |
| Wapello County | 409 | $72,616 | $1,396 |
| Marion County | 452 | $72,053 | $1,386 |
| Monroe County | 132 | $71,174 | $1,369 |
| Dubuque County | 1,477 | $70,681 | $1,359 |
| Black Hawk County | 1,668 | $70,120 | $1,348 |
| Obrien County | 145 | $69,513 | $1,337 |
| Jasper County | 615 | $68,303 | $1,314 |
| Story County | 1,189 | $68,184 | $1,311 |
| Mitchell County | 165 | $68,070 | $1,309 |
| Guthrie County | 156 | $67,827 | $1,304 |
| Union County | 86 | $67,535 | $1,299 |
| Benton County | 279 | $67,482 | $1,298 |
| Floyd County | 114 | $67,167 | $1,292 |
| Warren County | 799 | $65,713 | $1,264 |
| Butler County | 84 | $65,685 | $1,263 |
| Cerro Gordo County | 606 | $65,426 | $1,258 |
| Johnson County | 1,602 | $65,150 | $1,253 |
| Des Moines County | 564 | $65,140 | $1,253 |
| Winneshiek County | 260 | $64,796 | $1,246 |
| Clinton County | 457 | $64,464 | $1,240 |
| Dallas County | 1,423 | $64,315 | $1,237 |
| Plymouth County | 226 | $63,351 | $1,218 |
| Fayette County | 215 | $62,835 | $1,208 |
| Winnebago County | 120 | $62,757 | $1,207 |
| Clay County | 313 | $62,735 | $1,206 |
| Grundy County | 124 | $62,708 | $1,206 |
| Kossuth County | 168 | $62,611 | $1,204 |
| Tama County | 99 | $62,127 | $1,195 |
| Hardin County | 308 | $62,099 | $1,194 |
| Carroll County | 343 | $61,682 | $1,186 |
| Adair County | 118 | $61,547 | $1,184 |
| Franklin County | 113 | $61,466 | $1,182 |
| Dickinson County | 341 | $61,320 | $1,179 |
| Davis County | 58 | $59,759 | $1,149 |
| Delaware County | 204 | $59,237 | $1,139 |
| Montgomery County | 222 | $59,049 | $1,136 |
| Buena Vista County | 157 | $58,959 | $1,134 |
| Muscatine County | 364 | $58,895 | $1,133 |
| Washington County | 511 | $58,200 | $1,119 |
| Clayton County | 226 | $57,639 | $1,108 |
| Cedar County | 184 | $57,398 | $1,104 |
| Jackson County | 124 | $57,287 | $1,102 |
| Worth County | 60 | $57,284 | $1,102 |
| Marshall County | 242 | $57,026 | $1,097 |
| Henry County | 187 | $56,871 | $1,094 |
| Mills County | 147 | $56,704 | $1,090 |
| Howard County | 107 | $56,568 | $1,088 |
| Emmet County | 103 | $56,508 | $1,087 |
| Appanoose County | 111 | $56,294 | $1,083 |
| Palo Alto County | 141 | $56,184 | $1,080 |
| Mahaska County | 151 | $56,098 | $1,079 |
| Jones County | 326 | $56,058 | $1,078 |
| Calhoun County | 63 | $56,024 | $1,077 |
| Bremer County | 264 | $55,732 | $1,072 |
| Chickasaw County | 154 | $55,532 | $1,068 |
| Madison County | 238 | $55,104 | $1,060 |
| Ida County | 43 | $54,714 | $1,052 |
| Lyon County | 240 | $54,690 | $1,052 |
| Iowa County | 218 | $54,610 | $1,050 |
| Wright County | 121 | $52,955 | $1,018 |
| Cherokee County | 125 | $52,945 | $1,018 |
| Hamilton County | 157 | $52,489 | $1,009 |
| Allamakee County | 146 | $52,100 | $1,002 |
| Poweshiek County | 162 | $52,083 | $1,002 |
| Osceola County | 78 | $51,969 | $999 |
| Keokuk County | 66 | $50,653 | $974 |
| Buchanan County | 245 | $50,613 | $973 |
| Lucas County | 62 | $49,360 | $949 |
| Audubon County | 43 | $48,255 | $928 |
| Harrison County | 124 | $48,204 | $927 |
| Page County | 114 | $48,178 | $927 |
| Sac County | 50 | $47,706 | $917 |
| Shelby County | 72 | $47,679 | $917 |
| Monona County | 48 | $47,180 | $907 |
| Louisa County | 54 | $46,155 | $888 |
| Decatur County | 62 | $45,400 | $873 |
| Van Buren County | 48 | $43,771 | $842 |
| Fremont County | 30 | $40,353 | $776 |
| Clarke County | 106 | $37,843 | $728 |
| Greene County | 43 | $34,529 | $664 |
| Adams County | — | — | — |
| Hancock County | — | — | — |
| Humboldt County | — | — | — |
| Pocahontas County | — | — | — |
| Taylor County | — | — | — |
| Wayne County | — | — | — |
Keep comparing
Heavy equipment operator pay in neighbouring states
Other trades in Iowa
Questions this page answers
How much do heavy equipment operators make in Iowa?
The median heavy equipment operator in Iowa earned $29.01 an hour ($60,330 a year) in May 2025, 1% above the national median of $28.78. The middle half earn $25.77–$34.93; the top 10% earn more than $42.05.
Where does Iowa rank for heavy equipment operator pay?
Iowa ranks 30th of 51 states for heavy equipment operator pay, with a median of $29.01 an hour, and 17th after adjusting for Iowa's cost of living (BEA price parity 87.8, US = 100).
What is the union heavy equipment operator rate in Iowa?
Davis-Bacon determinations list a union contract rate for heavy equipment operators in 10 counties, with a typical package of $57.35 an hour including fringe benefits; see the county table above.
How many heavy equipment operators work in Iowa?
BLS counted 5,530 operating engineers and other construction equipment operators in Iowa in May 2025, 3.5 per 1,000 jobs (location quotient 1.15; 1.0 is the national average concentration).
Sources and notes
- BLS Occupational Employment and Wage Statistics, May 2025, Iowa and metro areas, SOC 47-2073.
- 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.