Home / Minnesota
Minnesota prevailing wage rates
Pick a county to see every trade's rate there, or pick a trade to compare it across the state. All 5,846 rates in force come from the Minnesota Department of Labor and Industry (DLI): DLI certifications of Nov 3 and Dec 22, 2025 (revised to Feb 9, 2026).
DLI certifies new rates at least once a year from a spring survey, and may revise them at any time. The rates "must be ascertained before the state asks for bids" and written into the contract, with their dated steps (Minn. Stat. 177.43). Checked against dli.mn.gov on October 25, 2026. Federally funded work here also uses the Davis-Bacon rates, shown on each rate page; what changed in them.
What is the prevailing wage rate in Minnesota?
It depends on the trade and on the county where the work is done. Taking each trade's main rate in each county, DLI's figures run from $11.41 an hour (field surveyor, Clay County) to $111.42 (elevator constructor, Aitkin County). Each figure is the base wage plus fringe. Pick a county or a trade below for the exact rate.
Prevailing wage rates by county
- Aitkin32 trades
- Anoka33 trades
- Becker31 trades
- Beltrami31 trades
- Benton32 trades
- Big Stone30 trades
- Blue Earth32 trades
- Brown32 trades
- Carlton32 trades
- Carver33 trades
- Cass32 trades
- Chippewa30 trades
- Chisago33 trades
- Clay31 trades
- Clearwater31 trades
- Cook30 trades
- Cottonwood31 trades
- Crow Wing32 trades
- Dakota33 trades
- Dodge33 trades
- Douglas31 trades
- Faribault32 trades
- Fillmore32 trades
- Freeborn32 trades
- Goodhue33 trades
- Grant31 trades
- Hennepin33 trades
- Houston30 trades
- Hubbard32 trades
- Isanti33 trades
- Itasca32 trades
- Jackson32 trades
- Kanabec31 trades
- Kandiyohi31 trades
- Kittson26 trades
- Koochiching32 trades
- Lac qui Parle27 trades
- Lake32 trades
- Lake of the Woods30 trades
- Le Sueur33 trades
- Lincoln29 trades
- Lyon29 trades
- Mahnomen30 trades
- Marshall32 trades
- Martin32 trades
- McLeod32 trades
- Meeker32 trades
- Mille Lacs32 trades
- Morrison32 trades
- Mower31 trades
- Murray29 trades
- Nicollet32 trades
- Nobles27 trades
- Norman30 trades
- Olmsted32 trades
- Otter Tail32 trades
- Pennington31 trades
- Pine31 trades
- Pipestone29 trades
- Polk32 trades
- Pope31 trades
- Ramsey33 trades
- Red Lake27 trades
- Redwood31 trades
- Renville32 trades
- Rice33 trades
- Rock25 trades
- Roseau31 trades
- Scott33 trades
- Sherburne33 trades
- Sibley33 trades
- St. Louis32 trades
- Stearns32 trades
- Steele33 trades
- Stevens31 trades
- Swift31 trades
- Todd32 trades
- Traverse28 trades
- Wabasha32 trades
- Wadena32 trades
- Waseca33 trades
- Washington33 trades
- Watonwan32 trades
- Wilkin32 trades
- Winona32 trades
- Wright33 trades
- Yellow Medicine32 trades
Rates by trade
Each trade page maps that trade's main rate in every county. Carpenter rates, for example, range from $37.36 to $81.40 an hour.
- Asbestos & Lead Abatement Laborer$25.86–$67.52
- Boilermaker$11.85–$80.28
- Bricklayer$77.81–$85.60
- Carpenter$37.36–$81.40
- Carpet & Soft Floor Layer$35.21–$78.38
- Cement Mason$42.99–$80.08
- Drywall Finisher$42.88–$77.34
- Drywall Installer / Lather$19.00–$80.35
- Electrician$20.00–$99.38
- Elevator Constructor$92.03–$111.42
- Field Surveyor$11.41–$74.12
- Flagger$15.08–$74.12
- Glazier$45.33–$82.28
- Insulator (Heat & Frost / Asbestos Worker)$24.60–$93.24
- Ironworker$32.77–$87.36
- Laborer$21.00–$74.12
- Landscape & Irrigation Laborer$11.41–$54.44
- Millwright$11.41–$83.96
- Operating Engineer$28.00–$85.21
- Painter$25.00–$77.34
- Pile Driver$43.57–$79.69
- Plasterer$14.00–$79.42
- Plumber / Pipefitter$39.72–$97.10
- Roofer$28.18–$76.86
- Sheet Metal Worker$27.77–$96.78
- Sign Installer$24.89–$57.07
- Striping & Traffic Control Worker$11.41–$74.12
- Teamster (Truck Driver)$17.00–$65.58
- Telecommunications Technician$33.47–$78.46
- Terrazzo Worker$41.19–$78.69
- Tile Finisher$14.00–$64.12
- Tile Setter$23.25–$78.66
- Tunnel Worker$48.14–$71.62
How Minnesota's prevailing wage rules work
- Which projects. Projects "financed in whole or part by state funds", from demolition and construction to repair (Minn. Stat. 177.42). The Act doesn't apply under $2,500 with one trade, or under $25,000 with more than one (177.43, subd. 7). State business subsidies can trigger it too (116J.871).
- Commercial by county, highway by area. DLI sets commercial rates county by county and highway and heavy rates for 10 areas (DLI's PDFs call them regions) (Minn. R. 5200.1030, 5200.1035). County pages show both.
- No published residential rates. Residential rates are set only on request for a specific contract (call 651-284-5091) (Minn. R. 5200.1020).
- Dated steps are part of the rate. Where a union rate changes within 12 months, DLI certifies the change on its effective date, so classes have several dated lines (Minn. R. 5200.1060). Rate pages list them.
- Fixed in the contract. Rates are set before bids and stated in the contract; if the authority leaves them out it must make the contractor whole for increases (177.43, subd. 3–4).
- Overtime. Over 8 hours a day or 40 a week is paid at 1½ times the basic rate; the fringe isn't multiplied (177.42, subd. 4).
- Adjacent-county rates and call-DLI classes. Where a county lacks data, DLI uses adjacent counties' and marks the class *. Some classes print "FOR RATE CALL 651-284-5091" instead of a rate (Minn. R. 5200.1035).
- Payroll and enforcement. Contractors give payroll copies to the agency within 14 days of each pay period and post the rates on site. DLI enforces most projects; MnDOT enforces its own highway contracts (177.44).
How we read DLI's data
We read DLI's consolidated commercial and highway/heavy PDFs line by line and check every number with a second, separate reader. Basic plus fringe equals DLI's printed total on every priced row. How we check.
Download the data
All Minnesota rates as CSV or JSON, plus one file per county on the data page.
Apprentice rates
DLI lists journeyworker rates. Registered apprentices get their program's rate; "trainee" or "helper" titles are not substitutes (Minn. R. 5200.1070).
Minnesota prevailing wage questions
Is Minnesota prevailing wage the same as Davis-Bacon?
No. Minnesota's own rates cover state and local public works, and Davis-Bacon rates come from the U.S. Department of Labor for federally funded or assisted construction. When a contract requires both the state rate and the Davis-Bacon rate, paying the higher of the two meets both. The contract documents say which apply.
How much does an electrician make on prevailing wage in Minnesota?
From $20.00 to $99.38 an hour for the main electrician classification, depending on the county; the median county is $76.74. See every county on one map.
How often do Minnesota prevailing wage rates change?
DLI certifies new rates at least once a year from a spring survey, and may revise them at any time. This site shows DLI certifications of Nov 3 and Dec 22, 2025 (revised to Feb 9, 2026), checked October 25, 2026.
Which DLI rates apply to my project?
The rates "must be ascertained before the state asks for bids" and written into the contract, with their dated steps (Minn. Stat. 177.43).
Do apprentices get prevailing wage in Minnesota?
DLI lists journeyworker rates. Registered apprentices get their program's rate; "trainee" or "helper" titles are not substitutes (Minn. R. 5200.1070).