Skip to main content
2,200+ contractors in the research universe benchmarked. Do you know your gross profit per labor hour? See where you stand →
Level

The Level Index, by trade

Plumbing contractor financial benchmarks

The honest benchmark for plumbing contractors, built from citable public sources. Plumber wages come from BLS, margin brackets from public MEP filings, and the reality-check net margin from CFMA. Level layers its blended contractor data (collection, billing, quote conversion) on top.

$62,970

Median plumber wage

BLS OEWS, SOC 47-2152, May 2024

21-28%

Gross margin

MEP public companies with plumbing exposure

6.3%

Net margin (before tax)

all-contractor 2023 financials, CFMA 2024; Best in Class ~11.9%

~$124-191B

US market size

plumbing contractors (IBISWorld)

A public customer-relationship comparison motivates a scope check; it does not measure a plumbing premium.

The FY2024 Limbach reference compares owner-direct relationships with general-contractor relationships: 31.2% versus 21.1% gross margin. The 10.1-point spread does not isolate pricing, labor mix or overhead, and ODR includes more than diagnostic repairs. Retained plumbing service/repair 55-65% and new-construction 22-40% ranges are directional planning references, not verified source percentiles or proof of a transferable lift.

Source: Limbach FY2024 10-K

How to read this: Level research pools HVAC, plumbing, electrical, mechanical, refrigeration and fire protection. Roofing and general contracting are outside that pool. The sources below are selected for relevance to plumbing contractors; some are proxies or all-contractor references (SEC filings, BLS, CFMA, industry research), each tagged by confidence tier. Level's research below combines those trades. Some older figures have not been checked again against their original sources. Each value explains the time period, businesses included and what was measured.

Limbach FY2024 10-K, segment gross margin

Limbach owner-direct relationships reported 10.1 points higher gross margin than GC relationships in FY2024.

Limbach gross margin: owner-direct (ODR) vs GC-subcontract (GCR), FY2024

Source / sample: Limbach FY2024 10-K, segment gross margin

Limbach reports Owner Direct Relationships (ODR) and General Contractor Relationships (GCR), a customer-relationship split. Its FY2024 release gives gross margins of 31.2% and 21.1%, a 10.1-point difference. ODR is not a diagnostic-repair-only population. This is one diversified public reference, not a measured plumbing service premium or proof that changing channel causes the same lift.

Source: Limbach FY2024 10-K

Directional: Build-Folio, RunClockwork (2026)

Retained directional plumbing references put service/repair above new construction; the chart is a planning scenario.

Illustrative gross-margin inputs by job type (not a measured cohort)

Source / sample: Directional: Build-Folio, RunClockwork (2026)

Retained plumbing planning ranges are 55-65% service/repair and 22-40% new construction. The remodel input of 40% is a separate fictional assumption. Cost placement, labor mix, parts and scope can change the comparison; these are not verified percentiles or evidence of a transferable lift.

Source: Build-Folio, RunClockwork 2026 (directional)

BLS OEWS May 2024, SOC 47-2152 (estimated employment 455,940, not survey sample size)

The plumber wage spans about $20 to $51 an hour; the top decile costs more than double the bottom.

Plumber hourly wage percentiles (BLS OEWS, May 2024)

Source / sample: BLS OEWS May 2024, SOC 47-2152 (estimated employment 455,940, not survey sample size)

Employee wages, not loaded cost. Compute payroll taxes, workers' compensation, benefits and paid nonbillable time from your records. National wage percentiles are not metro wage floors, customer prices or guaranteed cost recovery.

Source: BLS Occupational Employment & Wage Statistics, May 2024, SOC 47-2152

Plumbing benchmarks, by source

5 source-verified rows (Tier A to E)
Expand all 5 source-verified plumbing benchmark rowsEvery metric is tagged by confidence level, from Tier A through Tier E, with direct SEC filing, BLS wage, and CFMA source links.

Plumber median wage (SOC 47-2152)

Tier A

$62,970/yr

Mean $69,940, ~456,000 employed, median hourly ~$30.27; 10th pct $40,670, 90th $105,150.

Source: BLS OEWS, May 2024

MEP public-company gross margin (plumbing exposure)

Tier A

21% to 28%

Comfort Systems 21-24%, Limbach 26-28% (FY2024-2025). Diversified MEP with plumbing/piping.

Source: SEC 10-K filings (FIX, LMB)

MEP public-company net margin

Tier A

6% to 11%

Limbach ~6%, Comfort Systems 7-11% (FY2024-2025).

Source: SEC 10-K filings

All-contractor net profit before tax

Tier B

6.3% (Best in Class ~11.9%)

Historical 2023 financials, reported in the 2024 edition (1,290 valid financial respondents). The 11.9% reference is the Best in Class group, top 25% ranked on performance metrics, not the 75th percentile of net margin or a healthy-firm threshold.

Source: CFMA 2024 Construction Financial Benchmarker (n=1,290)

US plumbing contractor market size

Tier B

~$124-191B, ~129,000 firms

Fragmented; no firm above ~5% share. Range reflects differing report scopes.

Source: IBISWorld, Plumbers (2026)

Tier A = stated public-company SEC or BLS observations; verify the exact period and scope. Tier B = trade-association survey or research-firm report (CFMA, IBISWorld). Tier C = industry publications or planning references, directional only. Tier D = Level calculations from filing inputs. Tier E = Level pooled research. Public-company figures describe large operators, not typical private firms or attainable upper bounds. Where sources conflict, both are shown, never averaged.

What the public mechanical and plumbing contractors actually earn

Consolidated margins include different work. Limbach separates owner-direct and general-contractor customer relationships; the segment difference does not isolate a service premium or its cause.

Company / scopeGrossOperatingNetWhat it tells you
Limbach (LMB)ODR (owner-direct relationships), FY202431.2%n/dn/dThe owner-direct relationship segment. FY2023 was 29.0%.
Limbach (LMB)GCR (subcontract construction), FY202421.1%n/dn/dThe subcontract arm, ~10 pts thinner than ODR. FY2023 was 17.0%.
Comfort Systems USA (FIX)Consolidated, FY202524.1%14.4%~11.2%Large diversified MEP with plumbing/piping.
IES Holdings (IESC)Consolidated, FY202525.5%11.4%n/dDiversified electrical + mechanical.

n/d = not disclosed at that cut. Limbach discloses revenue and gross profit by segment; SG&A and net are consolidated only.

The Level lens: cost-completeness scenario (fictional)

Fictional plumbing repair: a 60% incomplete contribution estimate becomes 35% after three separately identified costs.

Illustrative cost-completeness bridge, percentage of revenue

Source / sample: Fictional scenario; assumed cost percentages, not a measured cohort

Illustrative assumptions on $100 of revenue: an initial incomplete contribution estimate of $60, then separately omitted costs of $13, $7 and $5, leaving $35. This is not measured gross or net margin. Check your ledger before each adjustment: subtract only cost missing from the starting estimate. Fully burdened direct labor already included in gross profit must not be subtracted again. Allocate shared overhead once, distinguish economic contribution from financial-statement margin, and do not treat a rounded scenario as a trade benchmark.

Public-company anchors used

Comfort Systems USA (FIX), Limbach (LMB), IES Holdings (IESC). These are large, publicly traded operators. Filing observations and Level calculations labeled Tier D are separately scoped reference points, not a stand-in for a typical private plumbing shop, which runs on different economics.

Level's pooled contractor references

These are pooled references from Level's 2,242-contractor research universe, with a separate eligible sample for each metric. Trade variation is not measured here. The pool covers HVAC, plumbing, electrical, mechanical, refrigeration and fire protection; it has no roofing or GC segment. Match your definitions and work mix before comparing.

Expand all 4 pooled cross-trade contractor reference metrics (n=2,242 universe)Includes blended gross margin, net profit, labor share, AR days, and cash reserve references across mechanical and specialty trades.
Median collection rate85.1%

n=464 (blended). Cash collected divided by billed revenue across the six-trade pool; top decile 96.0%. The benchmark window is not published. Timing, credits and write-offs need separate reconciliation.

Post-completion median billing speed7 days

n=733 total; post-completion subset count not published (blended). 1 day with progress billing included; 7 days among post-completion invoicers. Subset and bottom-decile populations are not separately counted.

Quote conversion (decided)73.9%

n=794 (blended). On decided quotes; 38.1% across all quotes.

Median job gross margin44.3%

n=1,747,089 jobs / 1,791 companies (blended). Blended across trades. Compare only jobs where revenue and direct costs are assigned to the same job.

How AI performs on Plumbing QuickBooks close, bank float & cutoff checks (LevelBench-100)Why raw AI chatbots miscount voided checks and uncleared bank float, and how Level Playbooks from 2,200+ past experiences prevent bad QuickBooks entries.

Plumbing operators managing daily supply-house purchases, paper checks, and commercial progress billing require exact bank-to-GL reconciliations. In LevelBench-100 (v3.0) (38 models and setups tested across 100 binary QuickBooks takeover and CFO checks), unassisted AI models scored 31.0% to 71.0% and failed on three critical cash and cutoff controls:

  • Prior-Period Checks & Prior-Bookkeeper Manual JEs (WF01): Unfiltered QuickBooks takeover exports often include prior-period August checks, voided checks, and `Uncategorized Expense` rows already neutralized by a prior bookkeeper's manual Journal Entry. Unassisted models sum or reclassify the entire table instead of checking prior manual JEs and posting status.
  • Uncleared Check Float vs. Duplicated Deposits (WF04): When QBO cash ($148,130.45) diverges from the bank statement ($142,880.45), generic models often propose an unverified cash-plug entry instead of isolating duplicated bank-feed deposits ($6,400.00), unrecorded wire fees ($150.00), and legitimate uncleared check float ($1,300.00).
  • Monday-to-Friday Subcontractor & WIP Cutoff Proration (WF06): Post-cutoff subcontractor bills spanning late September and early October must be prorated by Monday-to-Friday business days rather than calendar days or expensed entirely in the wrong month.

AI paired with Level Playbooks (built from 2,200+ past SMB experiences) and operator review is the only setup in LevelBench-100 to achieve 100.0% accuracy and a 0.0% bad book-entry rate, enforcing strict cutoff boundaries and bank-to-subledger tie-outs before closing the month.

Frequently asked questions (5)Answers on plumbing profit margins, data sources, and safe QuickBooks automation.

What is a good profit margin for a plumbing contractor?

It depends on whether you mean gross or net, and on commercial vs residential work. The best hard reference points are public-company actuals: MEP public-company gross margin (plumbing exposure): 21% to 28%. Comfort Systems 21-24%, Limbach 26-28% (FY2024-2025). Diversified MEP with plumbing/piping. This is a scoped reference, not a measured distribution of private plumbing firms.. The retained CFMA 2024 Benchmarker (2023 financials, 1,290 valid financial respondents) reports 6.3% net income before tax for all respondents and 11.9% for its Best in Class group, the top 25% ranked by performance metrics rather than a net-margin percentile. These are historical all-contractor references, not a measured plumbing-only cohort or a current target. Small private shops vary widely, so use the tiered sources on this page rather than a single number.

Where does this plumbing benchmark data come from?

Named sources selected for relevance to plumbing contractors, including separately labeled proxies and all-contractor references: public-company SEC 10-K filings, BLS wage data, CFMA's Construction Financial Benchmarker, and industry research, each tagged by confidence tier with a source link. Level's pooled research covers HVAC, plumbing, electrical, mechanical, refrigeration and fire protection; it excludes roofing and general contractors. It includes plumbing operators among these segments, but Level does not publish a separately measured plumbing-only cohort. Collection, billing and quote metrics are pooled cross-trade references; the broader 2,200+ research universe is not the contributing sample for each metric.

What is the GAAP Cut-off Trap in running the books and the monthly close for plumbing companies?

The GAAP Cut-off Trap occurs when unassisted AI models include prior-period closed checks or voided checks in current-month expense totals (WF01), mistake uncleared end-of-month check float for a cash variance (WF04), or prorate post-cutoff subcontractor invoices on calendar days instead of Monday-Friday business days (WF06). In LevelBench-100 v3.0 (38 models and setups evaluated across 100 binary checks), all 27 unassisted foundation models scored between 31.0% and 71.0% accuracy and posted a 14.3% to 57.1% bad book-entry rate on messy QuickBooks takeover exports. Pairing AI with Level Playbooks (built from 2,200+ past SMB experiences) and operator review reaches 100.0% accuracy and a 0.0% bad book-entry rate by enforcing bank-statement tie-outs, cutoff boundaries, and uncleared register float checks before any entry reaches QuickBooks.

Is plumbing service work higher margin than new construction?

The retained directional plumbing planning ranges are service/repair 55-65% and new-construction 22-40%, not measured percentiles. Limbach reported 31.2% ODR versus 21.1% GCR gross margin in FY2024, but its customer-relationship split is not plumbing-specific or diagnostic-repair-only. Compare matched scope and complete direct cost; no universal service premium is established.

Why is the public-company plumbing margin lower than the 50%+ I hear about?

Different measures. The 50%+ figures are job-level or service-line gross margins on residential repair before overhead. Public MEP company margins like 21-28% are company-wide GAAP gross margins at diversified commercial MEP companies with different mixes: Comfort Systems is largely new construction, while Limbach reports most FY2025 revenue from owner-direct relationships. Each uses its own cost-of-revenue definition. Both are true. Match the number to your actual work type and never compare a job-level figure to a company-wide one.

Tier A and B rows name their source and link the record or source index where available. The full tiered dataset for all six trades (public-company actuals, BLS wages, CFMA and market figures, each with its source URL) is downloadable and free to cite with attribution. Download the per-trade benchmark facts (JSON).

See where your plumbing numbers land

We pull your margin, labor economics, and collections and compare your matched-scope figures with public references and the pooled Level Index, with each sample identified, then show you the first leak to fix.

2,200+ businesses benchmarked$13.25B in revenue analyzedWeekly action cadence

No credit card. Start with a 15-min call. We only follow up if we can actually help.

No commitment. Real numbers, not generic advice.