How-to

How to write a plumbing estimate that covers all your costs

What to include in a plumbing estimate, how to calculate your labor rate, and how to price materials — a step-by-step guide for solo plumbers.

Plumber writing a job estimate on a clipboard, copper fittings on a kitchen counter, warm afternoon light

Most plumbers don't lose money because they charge too little per hour. They lose it because their plumbing estimates are incomplete — the permit wasn't included, the materials were billed at cost, or the hour spent draining and refilling the system never made it onto the ticket at all. A complete plumbing estimate captures every cost that touches the job before you start, not the ones you remember to add after you're done.

This guide walks through how to write a plumbing estimate from scratch: what to include, how to calculate a labor rate that actually covers your real costs, how to mark up materials correctly, and how to structure the document so customers sign it and you can refer back to it when scope questions come up.

What to include in a plumbing estimate

A plumbing estimate is more than a labor price and a parts list. A document that holds up through the job covers six cost categories:

  1. Labor — your time and any helper time, calculated from your loaded hourly rate (covered in the next section)
  2. Materials — every fitting, valve, pipe, supply line, and consumable priced at your selling price, not your supply-house invoice
  3. Permits and inspections — if your jurisdiction requires a permit, it belongs on the estimate as its own line item; billing it as a surprise after the job is signed damages trust
  4. Travel and mobilization — drive time, fuel, and the cost of loading and unloading the truck; if you charge a service call fee, name it explicitly rather than burying it in labor
  5. Subcontractors or rentals — drain camera rental, excavation, jetting equipment — anything you'll pay a third party for
  6. Disposal and cleanup — haul-away fees for a water heater swap, demo debris, or any waste your jurisdiction won't let you leave curbside

The most commonly missed items are permit fees (typically $75–$250 depending on municipality and job scope) and consumables — thread tape, flux, solder, primer, glue, and small fittings under a few dollars each. Individually they're small. Across dozens of jobs they add up to a meaningful margin leak.

How to calculate your plumbing labor rate

The U.S. Bureau of Labor Statistics' May 2025 Occupational Employment and Wage Statistics release reports a mean hourly wage of $34.70 for plumbers, pipefitters, and steamfitters. That number reflects what an employee earns. When you work solo, you're also absorbing the employer's share of payroll taxes, your own workers' compensation insurance, a vehicle and tools, non-billable administrative hours, and overhead. Your billing rate needs to recover all of that.

Here's how the loading typically stacks up starting from the BLS mean:

Solo plumber cost-loading model. BLS May 2025 mean wage ($34.70/hr) plus self-employment tax, workers comp, overhead, and non-billable time. Add your profit margin on top of the loaded floor.

The IRS self-employment tax runs 15.3% on 92.35% of net self-employment income — typically $4–$6 per productive hour for most solos. Workers' compensation varies significantly by state and your experience modifier; $2–$5 per hour is a common range for plumbing classification codes.

Once you have a loaded cost floor, apply your target gross margin. A 25% gross margin on labor translates to dividing your loaded cost by 0.75 (not multiplying by 1.25). Use our free markup calculator to convert between markup and margin without doing the algebra yourself — the distinction matters when you're building a flat rate and want to hit a specific profit target.

How to price plumbing materials on an estimate

The supply house price is not your estimate price. Your material selling price needs to include a markup that covers sourcing labor, supply-house runs, carrying the inventory risk, and — most importantly — your warranty obligation on parts you install.

A 20–30% markup on materials is standard for most residential plumbing work. On a $450 water heater, that's $90–$135 in material margin. If that feels high, remember you're absorbing the call-back risk if the unit fails in year two — you'll make that return visit on your own time.

A few categories warrant higher markups:

  • Specialty or legacy fittings — obscure thread sizes, discontinued finishes, imported fixtures — mark up 30–40% because sourcing time and trip risk are unpredictable
  • Customer-supplied materials — charge a handling fee of 10–15% on any material the customer provides and add a written exclusion for parts warranty on those items
  • Small consumables — bill these as a flat "materials and consumables" line of $35–$75 rather than itemizing $1.20 of solder; the administrative time to list each fitting isn't billable

For the exact formula to convert a target gross margin into the correct markup multiplier, see our guide on how to calculate markup on a contractor quote.

Flat-rate vs line-item format

There are two ways to structure a plumbing estimate, and the right one depends on job type and customer context.

Line-item estimates break out every component separately: 3 hours labor at $72, water heater supply at $540, permit at $110, haul-away at $65. This format is standard on larger jobs, insurance-related work, and commercial accounts where someone is auditing each line.

Flat-rate estimates quote a single price for the job type — "50-gallon gas water heater replacement, installed: $975." This format protects your margin on jobs where hours run variable. You keep the efficiency gain when the job goes fast; you absorb the extra time when it runs long.

The Plumbing-Heating-Cooling Contractors Association publishes a Labor Unit Database with time estimates for hundreds of common plumbing tasks — a useful starting point if you're building flat rates for the first time and don't yet have your own historical data.

Our post on flat-rate vs time-and-materials pricing for solo plumbers covers when each format wins and how to convert your hourly model into defensible flat-rate prices.

What goes on every plumbing estimate: a complete checklist

Before you send any estimate, check this list:

Line itemNotes
Labor (hours × loaded rate)Use your calculated floor, not a round guess
Materials (at selling price, with markup)Supply-house cost is not your price
Permit and inspection feesCheck your municipality; omitting it is a dispute waiting to happen
Service call / travel feeName it explicitly rather than hiding it in labor
Equipment rentals or subcontractor costsCamera, jetting, excavation as applicable
ConsumablesFlat line ($35–$75) rather than line-by-line for small items
Disposal and haul-awayWater heater swaps, demo waste, etc.
Scope exclusionsWhat is NOT included — in plain language
Warranty statementE.g. "Labor and materials warranted 1 year from completion"
Acceptance signature lineWith payment terms and deposit requirement

The scope exclusions row is as important as any priced line item. If your estimate doesn't include opening walls to find a leak, say so. That one sentence — "Concealed leak location not included; additional charges will apply if wall access is required" — has prevented more disputes than any pricing decision.

Takeaways

  • A plumbing estimate that's missing permit fees, consumables, or disposal is underpriced before you touch the first fitting.
  • Your billable labor rate starts at the BLS mean of $34.70/hr and typically lands $15–$20 above it once you add self-employment tax, insurance, overhead, and a non-billable time buffer.
  • Mark up materials 20–30% at minimum; use a flat consumables line for small items rather than itemizing every fitting.
  • Flat-rate format protects your margin on variable-hour jobs; line-item format is standard for commercial and insurance work.
  • Scope exclusions belong on every estimate — what's not included matters as much as what is.

Send it before you start, not after

The most expensive estimate mistake isn't a pricing error — it's handing the customer a document after the work is complete and calling it an invoice. An estimate is a pre-authorization. Get a signature before you start, confirm payment terms at the same time, and make sure the exclusions are understood.

JobEstimator generates complete, professional plumbing estimates in under two minutes — labor, materials, markup, and exclusion language all pre-structured. If you're still writing estimates by hand or adapting last week's invoice, try the 14-day free trial. Plans start at $39/mo.

Sources