Contractor Labor Rates by City: What Twelve Metros Pay

Contractor Labor Rates by City · BLS OEWS, May 2025

Contractor Labor Rates by City: What Twelve Metros Pay

Same trade, same survey, same month. Cross a metro line and the wage base moves further than it does between trades.

Bidding in a new market? Price the job from a photo in about six seconds.

★★★★★ 4.8 on the App Store
SimplyWise

Updated August 28, 2026

5 min read
Lower Manhattan skyline seen across the harbor with a crane boom and hook in the foreground and a loaded barge under tow

What contractor labor rates by city actually measure

The figures below come from the Occupational Employment and Wage Statistics program at BLS, read at the metro level. A metro here is a Metropolitan Statistical Area, which is a labor market rather than a city limit. Dallas and Fort Worth share one number. So do New York and Newark.

These are cross-industry estimates. A carpenter framing houses and a carpenter setting store fixtures land in the same figure, because OEWS groups by occupation, not by who signs the check. Every value is a mean hourly wage for May 2025, the current release. BLS also groups plumbers, pipefitters, and steamfitters into one occupation, so that column is not a plumbing-only figure.

Contractor labor rates by city, twelve metros

Mean hourly wage by trade. The number in parentheses is the OEWS metro area code, which is what you need to pull the row again.

Metro area (OEWS code) Electricians (47-2111) Plumbers and pipefitters (47-2152) Carpenters (47-2031) HVAC (49-9021) Laborers (47-2061)
San Francisco-Oakland-Fremont, CA (41860) $49.85 $44.41 $43.09 $41.61 $35.40
Seattle-Tacoma-Bellevue, WA (42660) $47.94 $46.27 $40.42 $41.07 $31.24
Chicago-Naperville-Elgin, IL-IN (16980) $45.41 $46.36 $39.96 $38.14 $33.26
New York-Newark-Jersey City, NY-NJ (35620) $42.63 $43.66 $38.73 $38.33 $32.42
Boston-Cambridge-Newton, MA-NH (14460) $40.08 $44.62 $39.07 $38.41 $34.30
Los Angeles-Long Beach-Anaheim, CA (31080) $39.57 $38.57 $37.79 $35.88 $30.39
Washington-Arlington-Alexandria, DC-VA-MD-WV (47900) $38.29 $36.10 $32.11 $35.45 $23.88
Phoenix-Mesa-Chandler, AZ (38060) $30.95 $33.95 $29.03 $29.91 $23.40
Atlanta-Sandy Springs-Roswell, GA (12060) $29.82 $28.85 $24.81 $29.07 $20.74
Houston-Pasadena-The Woodlands, TX (26420) $29.55 $30.70 $25.48 $29.03 $21.08
Dallas-Fort Worth-Arlington, TX (19100) $28.83 $29.94 $24.16 $29.69 $21.05
Miami-Fort Lauderdale-West Palm Beach, FL (33100) $28.81 $27.80 $25.97 $28.85 $22.17

SimplyWise Cost Estimator turns a photo into an itemized, branded estimate in about 6 seconds, with material, labor, and fee lines broken out.

Geography moves the number more than the trade does

Take San Francisco on its own. The gap from a laborer at $35.40 to an electrician at $49.85 is a factor of 1.41. Now hold the trade still and move the map: electricians run $28.81 in Miami and $49.85 in San Francisco, a factor of 1.73.

Read that twice, because it inverts how most bids get built. Swapping a laborer for a licensed electrician inside one market costs you less, proportionally, than keeping the same electrician and crossing four state lines. That same electrician rate carried from a Dallas job into a Bay Area job is not conservative. It is short by nearly seventy-three percent at the base.

The ordering is not uniform either. Chicago pays plumbers and pipefitters more than Seattle does, while Seattle pays electricians more than Chicago. So there is no single city multiplier to apply across a bid. Each trade has to be priced on its own row.

Reprice the whole bid for a new market

Changing one labor line by hand is quick. Changing every line for a market you have never worked is not. SimplyWise Cost Estimator turns a photo into an itemized, branded estimate in about 6 seconds, with a unit, quantity, and price on every line. Pricing is $29.99/mo or $239.99/yr, about $20/mo on annual, with a 7-day free trial.

SimplyWise Cost Estimator

How to pull your own metro off the OEWS file

  1. Find your metro area code

    Every Metropolitan Statistical Area carries a five digit code. The twelve above are in the table. Denver is 19740, Minneapolis is 33460, Detroit is 19820.

  2. Build the series id

    An OEWS series id is OEUM, then your area code padded to seven digits, then 000000, then the six digit occupation code, then 03 for mean hourly wage. Electricians are 472111.

  3. Or download the flat file

    The May 2025 metro workbook sits at bls.gov/oes as a single spreadsheet covering every metro and occupation. That is the fastest route when you need several markets at once.

  4. Add back what the survey leaves out

    Premium pay, overtime, and the owner-operator are all outside these numbers. Layer your own burden, overhead, and margin on top before the figure becomes a rate you quote.

Sources

Contractor labor rates by city: common questions

Which metro pays construction trades the most?

Of the twelve here, San Francisco leads on electricians, carpenters, HVAC, and laborers. Chicago edges out every metro on plumbers and pipefitters at $46.36 an hour.

Are these the rates I should bill?

No. They are wages paid to employees. A billed rate adds payroll burden, overhead, and margin on top of the wage.

Does this include overtime?

No. BLS defines OEWS wages as straight-time gross pay, exclusive of premium pay. Overtime, shift differentials, and on-call pay are all excluded.

Are self-employed contractors in this data?

No. The survey covers workers paid a wage or salary, and does not cover the self-employed, owners and partners in unincorporated firms, or unpaid family workers.

How current is May 2025 data?

It is the current release, but it is a blend. BLS builds each set from six semiannual panels, so May 2025 reaches back to November 2022, with older panels adjusted forward.

Can SimplyWise price a job for a market I do not know?

Yes. SimplyWise Cost Estimator turns a photo into an itemized, branded estimate in about 6 seconds. Free to try, at $29.99/mo or $239.99/yr.

Price the market you are in

Build the bid on local numbers, not last year’s crew rate.

Snap a photo and get an itemized, branded estimate in about 6 seconds. Free to try.

SimplyWise Cost Estimator