HVAC technician salary in Michigan
Median $29.26 an hour for 12,590 hvac and refrigeration technicians, May 2025, with the union scale by county and the trend since 1999.
HVAC technician pay in Michigan: the full range
Michigan ranks 25th of 51 states for median hvac technician pay, and 30th once adjusted for cost of living (the cost-of-living-adjusted median is $30.42). 12,590 hvac and refrigeration technicians work in the state.
| Career stage (approximate) | Hourly | Annual | Where it sits in the distribution |
|---|---|---|---|
| Apprentice / entry | $19.33 – $23.09 | $40,210 – $48,040 | roughly the 10th–25th percentile |
| Journeyman | $23.09 – $37.40 | $48,040 – $77,780 | the middle half, around the median |
| Master / foreman / specialist | $37.40 – $45.81 | $77,780 – $95,290 | the 75th–90th percentile and above |
Where does your pay fall?
HVAC technician pay by metro in Michigan
| Metro | 10th | Median $/hr | 90th | Jobs | vs state |
|---|---|---|---|---|---|
| Ann Arbor | $22.41 | $36.06 | $48.71 | 460 | 23% above |
| Detroit | $20.60 | $30.37 | $45.97 | 5,740 | 4% above |
| Kalamazoo | $21.12 | $29.46 | $47.08 | 430 | 1% above |
| Jackson | $21.16 | $29.43 | $47.03 | 110 | 1% above |
| Traverse City | $18.76 | $29.13 | $43.97 | 210 | about the same as |
| Lansing | $19.24 | $29.06 | $44.94 | 490 | 1% below |
| Grand Rapids | $21.02 | $28.94 | $45.48 | 1,920 | 1% below |
| Bay City | $17.33 | $28.93 | $39.10 | 70 | 1% below |
| Battle Creek | $19.85 | $28.90 | $35.53 | 130 | 1% below |
| Saginaw | $18.65 | $28.88 | $47.24 | 210 | 1% below |
| Flint | $18.81 | $28.79 | $45.95 | 430 | 2% below |
| South Bend | $18.59 | $28.59 | $46.87 | 370 | 2% below |
| Monroe | $18.00 | $28.53 | $45.81 | 130 | 2% below |
| Niles | $18.61 | $27.95 | $38.26 | 240 | 4% below |
| Muskegon | $18.39 | $27.19 | $37.93 | 180 | 7% below |
| Midland | $17.05 | $27.16 | $38.77 | 90 | 7% below |
HVAC technician wages in Michigan over time
Table
| Year | Michigan $/hr | In 2025 $ | US $/hr | Jobs |
|---|---|---|---|---|
| 1999 | $16.08 | $31.07 | $14.50 | 3,920 |
| 2000 | $17.95 | $33.56 | $15.76 | 3,950 |
| 2001 | $17.12 | $31.12 | $16.35 | 5,580 |
| 2002 | $19.38 | $34.68 | $16.78 | 5,980 |
| 2003 | $20.94 | $36.64 | $16.90 | 6,600 |
| 2004 | $21.19 | $36.11 | $17.43 | 8,280 |
| 2005 | $21.23 | $35.00 | $17.81 | 7,470 |
| 2006 | $21.49 | $34.32 | $18.11 | 7,060 |
| 2007 | $21.27 | $33.03 | $18.44 | 7,130 |
| 2008 | $21.83 | $32.64 | $19.08 | 7,710 |
| 2009 | $21.70 | $32.56 | $19.76 | 6,820 |
| 2010 | $21.76 | $32.13 | $20.45 | 5,800 |
| 2011 | $21.56 | $30.86 | $20.86 | 6,080 |
| 2012 | $21.58 | $30.26 | $20.98 | 6,140 |
| 2013 | $21.54 | $29.77 | $21.10 | 6,460 |
| 2014 | $21.46 | $29.18 | $21.46 | 6,920 |
| 2015 | $21.88 | $29.72 | $21.69 | 7,900 |
| 2016 | $22.34 | $29.97 | $22.07 | 8,170 |
| 2017 | $22.85 | $30.01 | $22.64 | 8,970 |
| 2018 | $22.51 | $28.86 | $22.89 | 9,100 |
| 2019 | $22.85 | $28.77 | $23.43 | 9,010 |
| 2020 | $24.08 | $29.95 | $24.32 | 8,260 |
| 2021 | $23.76 | $28.23 | $23.38 | 9,480 |
| 2022 | $24.06 | $26.47 | $24.71 | 9,480 |
| 2023 | $24.55 | $25.94 | $27.55 | 10,580 |
| 2024 | $28.89 | $29.65 | $28.75 | 13,720 |
| 2025 | $29.26 | $29.26 | $29.33 | 12,590 |
In today's dollars, the median hvac technician wage in Michigan changed by -1.5% over the last ten years of data.
Union scale and prevailing wage for hvac technicians in Michigan
On federally funded construction in Michigan, contractors must pay hvac technicians at least the Davis-Bacon rate for the county. 54 of the 60 counties with a Building rate use a union contract rate (typical package $60.50 an hour including fringe); the rest use a survey rate (typical $19.50). 6 of the 60 counties still use a survey rate dated 2011 or earlier (for example Barry County at $19.50). The market median for the state is $29.26.
| County | Rate source | Base | Fringe | Total | Determination |
|---|---|---|---|---|---|
| Branch | Union PLUM0333-005 2025-06-01 | $46.29 | $25.43 | $71.72 | MI20260110 |
| Hillsdale | Union PLUM0333-005 2025-06-01 | $46.29 | $25.43 | $71.72 | MI20260123 |
| Huron | Union PLUM0085-008 2026-05-04 | $47.00 | $24.18 | $71.18 | MI20260125 |
| Allegan | Union PLUM0174-001 2025-07-01 | $47.40 | $23.35 | $70.75 | MI20260104 |
| Arenac | Union PLUM0085-004 2024-05-01 | $45.50 | $21.75 | $67.25 | MI20260107 |
| Clare | Union PLUM0085-004 2024-05-01 | $45.50 | $21.75 | $67.25 | MI20260114 |
| Gladwin | Union PLUM0085-004 2024-05-01 | $45.50 | $21.75 | $67.25 | MI20260119 |
| Gratiot | Union PLUM0085-004 2024-05-01 | $45.50 | $21.75 | $67.25 | MI20260122 |
| Midland | Union PLUM0085-004 2024-05-01 | $45.50 | $21.75 | $67.25 | MI20260138 |
| Tuscola | Union PLUM0085-004 2024-05-01 | $45.50 | $21.75 | $67.25 | MI20260153 |
| Lenawee | Union PLUM0190-002 2025-06-01 | $42.26 | $23.70 | $65.96 | MI20260131 |
| Isabella | Union PLUM0085-007 2025-05-04 | $43.50 | $22.10 | $65.60 | MI20260127 |
| Alger | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260103 |
| Baraga | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260108 |
| Chippewa | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260113 |
| Delta | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260116 |
| Gogebic | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260120 |
| Houghton | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260124 |
| Iron | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260155 |
| Keweenaw | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260155 |
| Luce | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260132 |
| Mackinac | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260133 |
| Marquette | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260135 |
| Menominee | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260156 |
| Ontonagon | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260156 |
| Schoolcraft | Union PLUM0111-002 2025-05-27 | $34.59 | $27.53 | $62.12 | MI20260150 |
| Dickinson | Union PLUM0111-003 2025-05-27 | $36.39 | $24.87 | $61.26 | MI20260117 |
| Alcona | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260102 |
| Alpena | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260105 |
| Antrim | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260106 |
| Benzie | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260109 |
| Charlevoix | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260111 |
| Cheboygan | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260112 |
| Crawford | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260115 |
| Emmet | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260118 |
| Grand Traverse | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260121 |
| Iosco | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260126 |
| Kalkaska | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260128 |
| Leelanau | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260130 |
| Missaukee | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260139 |
| Montmorency | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260141 |
| Ogemaw | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260143 |
| Oscoda | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260145 |
| Otsego | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260146 |
| Presque Isle | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260147 |
| Roscommon | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260148 |
| Wexford | Union PLUM0085-001 2023-05-04 | $38.01 | $21.73 | $59.74 | MI20260154 |
| Lake | Union PLUM0174-006 2021-07-01 | $37.09 | $22.52 | $59.61 | MI20260129 |
| Mecosta | Union PLUM0174-006 2021-07-01 | $37.09 | $22.52 | $59.61 | MI20260137 |
| Montcalm | Union PLUM0174-006 2021-07-01 | $37.09 | $22.52 | $59.61 | MI20260140 |
| Oceana | Union PLUM0174-006 2021-07-01 | $37.09 | $22.52 | $59.61 | MI20260142 |
| Osceola | Union PLUM0174-006 2021-07-01 | $37.09 | $22.52 | $59.61 | MI20260144 |
| Manistee | Union PLUM0174-007 2021-07-01 | $35.26 | $22.52 | $57.78 | MI20260134 |
| St. Joseph | Union PLUM0357-016 2025-07-01 | $32.50 | $24.97 | $57.47 | MI20260152 |
| Muskegon | Survey SUMI2011-018 2011-02-01 | $21.32 | $8.01 | $29.33 | MI20260093 |
| Ottawa | Survey SUMI2011-021 2011-02-01 | $18.92 | $4.71 | $23.63 | MI20260096 |
| Barry | Survey SUMI2011-001 2011-02-01 | $16.75 | $2.75 | $19.50 | MI20260076 |
| Ionia | Survey SUMI2011-010 2011-02-01 | $16.75 | $2.75 | $19.50 | MI20260085 |
| Kent | Survey SUMI2011-013 2011-02-01 | $16.75 | $2.75 | $19.50 | MI20260088 |
| Newaygo | Survey SUMI2011-019 2011-02-01 | $16.75 | $2.75 | $19.50 | MI20260094 |
Building construction type, current revisions as of 2026-09-28. Residential, Heavy and Highway rates differ; look them up on the Michigan prevailing wage page. This is not the official wage determination.
Is construction work growing in Michigan?
Contractor pay by county
Average pay at plumbing, heating and air-conditioning contractors establishments by county (all employees, not just hvac technicians), from the Quarterly Census of Employment and Wages, 2025 annual averages.
| County | Employees | Average annual pay | Avg weekly wage |
|---|---|---|---|
| Monroe County | 498 | $119,020 | $2,289 |
| Wayne County | 4,129 | $102,402 | $1,969 |
| Oakland County | 4,355 | $96,266 | $1,851 |
| Genesee County | 2,120 | $96,110 | $1,848 |
| St. Joseph County | 311 | $93,942 | $1,807 |
| Kent County | 5,043 | $91,456 | $1,759 |
| Saginaw County | 603 | $91,080 | $1,752 |
| Washtenaw County | 929 | $89,281 | $1,717 |
| Kalamazoo County | 1,988 | $88,285 | $1,698 |
| Macomb County | 2,804 | $87,558 | $1,684 |
| Jackson County | 480 | $87,321 | $1,679 |
| Ingham County | 644 | $84,822 | $1,631 |
| Montcalm County | 192 | $83,040 | $1,597 |
| Muskegon County | 490 | $81,523 | $1,568 |
| Grand Traverse County | 468 | $78,536 | $1,510 |
| Emmet County | 256 | $76,526 | $1,472 |
| St. Clair County | 334 | $75,704 | $1,456 |
| Midland County | 243 | $74,723 | $1,437 |
| Livingston County | 771 | $74,437 | $1,431 |
| Van Buren County | 89 | $72,749 | $1,399 |
| Calhoun County | 335 | $72,724 | $1,399 |
| Ottawa County | 599 | $71,456 | $1,374 |
| Lapeer County | 313 | $71,254 | $1,370 |
| Marquette County | 175 | $70,878 | $1,363 |
| Allegan County | 467 | $70,329 | $1,352 |
| Gratiot County | 42 | $69,523 | $1,337 |
| Cass County | 60 | $69,475 | $1,336 |
| Barry County | 107 | $69,081 | $1,328 |
| Berrien County | 400 | $67,309 | $1,294 |
| Newaygo County | 46 | $66,947 | $1,287 |
| Eaton County | 291 | $66,343 | $1,276 |
| Otsego County | 98 | $65,739 | $1,264 |
| Lenawee County | 139 | $65,507 | $1,260 |
| Menominee County | 39 | $64,516 | $1,241 |
| Sanilac County | 94 | $64,350 | $1,238 |
| Chippewa County | 78 | $62,566 | $1,203 |
| Delta County | 79 | $61,255 | $1,178 |
| Antrim County | 75 | $60,952 | $1,172 |
| Manistee County | 49 | $60,665 | $1,167 |
| Roscommon County | 62 | $58,939 | $1,133 |
| Clare County | 33 | $58,348 | $1,122 |
| Houghton County | 104 | $57,330 | $1,102 |
| Benzie County | 18 | $57,039 | $1,097 |
| Cheboygan County | 50 | $56,805 | $1,092 |
| Branch County | 75 | $56,075 | $1,078 |
| Ionia County | 72 | $54,745 | $1,053 |
| Huron County | 152 | $54,653 | $1,051 |
| Tuscola County | 62 | $53,669 | $1,032 |
| Ogemaw County | 22 | $53,515 | $1,029 |
| Iosco County | 66 | $53,201 | $1,023 |
| Mason County | 84 | $53,088 | $1,021 |
| Charlevoix County | 71 | $51,487 | $990 |
| Wexford County | 37 | $51,363 | $988 |
| Hillsdale County | 68 | $49,028 | $943 |
| Leelanau County | 30 | $48,418 | $931 |
| Arenac County | 22 | $48,245 | $928 |
| Oceana County | 31 | $48,173 | $926 |
Keep comparing
HVAC technician pay in neighbouring states
Other trades in Michigan
Questions this page answers
How much do hvac technicians make in Michigan?
The median hvac technician in Michigan earned $29.26 an hour ($60,850 a year) in May 2025, about the same as the national median of $29.33. The middle half earn $23.09–$37.40; the top 10% earn more than $45.81.
Where does Michigan rank for hvac technician pay?
Michigan ranks 25th of 51 states for hvac technician pay, with a median of $29.26 an hour, and 30th after adjusting for Michigan's cost of living (BEA price parity 96.2, US = 100).
What is the union hvac technician rate in Michigan?
Davis-Bacon determinations list a union contract rate for hvac technicians in 54 counties, with a typical package of $60.50 an hour including fringe benefits; see the county table above.
How many hvac technicians work in Michigan?
BLS counted 12,590 hvac and refrigeration technicians in Michigan in May 2025, 2.9 per 1,000 jobs (location quotient 1.09; 1.0 is the national average concentration).
Sources and notes
- BLS Occupational Employment and Wage Statistics, May 2025, Michigan and metro areas, SOC 49-9021.
- 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.