Plumbing Job Costing: How to Track Profit by Job
Most plumbing contractors can tell you their total revenue and roughly what they spent, but very few can tell you the gross profit they earned on a specific repipe, a particular new construction job, or last week's batch of service calls.
That gap is where profitability hides, because without job costing you're working from a single blended number that averages your most profitable work together with your least profitable work and tells you nothing actionable about either.
Job costing closes that gap by showing you the real margin on each job, which is the foundation for pricing well and knowing which work to chase.
This post covers how plumbing contractors should set up job costing, what costs to track against each job, and how to use the resulting data to price more accurately and steer the business toward the work that actually makes money.
For the broader view of plumbing bookkeeping, see Plumbing Bookkeeping: What to Track and Why.
For the benchmarks that job costing data lets you measure against, see Plumbing Profit Margins: What's Normal for a Plumbing Business?.
Why plumbing job costing matters more than contractors realize
Plumbing businesses run several distinct types of work with very different margin profiles, and job costing is what lets you see those differences.
Service and repair work tends to carry high margins, new construction tends to carry thin margins, and repipe and specialty work sits in between.
When all of this work flows into one blended revenue and cost picture, the high-margin service work and the thin-margin new construction work average together into a number that hides which side of the business is carrying the profitability.
The practical consequence is that contractors without job costing make important decisions on bad information. They keep chasing new construction volume because it feels productive, without realizing the margins barely cover the cost of doing the work.
They underprice service calls without realizing those calls are actually subsidizing the rest of the business.
They take on large jobs that tie up crews for weeks without knowing whether those jobs were more or less profitable than filling the same time with service work.
Job costing replaces all of that guesswork with actual numbers.
The cost categories to track against each job
Effective plumbing job costing means tagging four categories of cost to each job so that when the job is complete, you can see exactly what it cost and what margin it produced.
Materials is the first category, covering pipe, fittings, fixtures, water heaters, valves, and all the parts that go into the job.
The cleanest approach is tagging material purchases to the specific job at the time of purchase, which many suppliers can support if you provide a job reference when you order. For material pulled from truck stock or warehouse inventory, you'll want a method to attribute that cost to the job when it's used rather than leaving it in a general materials account.
Labor is the second category, and it needs to be tracked at burdened rates rather than base wages to be accurate. This means capturing the hours each plumber works on a specific job and multiplying by the fully burdened cost of that plumber, which includes payroll taxes, workers compensation, and benefits on top of the base wage. Without job-level time tracking, labor just lands as one lump number and your job costing can't show you which jobs consumed the most labor.
Equipment and specialty tool costs make up the third category, covering things like trenching equipment rental, jetting equipment, camera inspection tools, or any equipment cost tied to a specific job rather than to general operations.
Subcontractor and permit costs are the fourth category, covering any work you sub out and the permit and inspection fees tied to specific jobs.
In Florida, where plumbing work requires proper permitting and licensed contractors, permit costs are a real per-job expense worth tracking rather than burying in general overhead.
When all four categories are tagged to the job, the job costing report shows total revenue from the job minus total cost, which gives you the gross profit and gross margin for that specific piece of work.
Setting up job costing in practice
The mechanics of plumbing job costing depend on your accounting and field software, but the principles are consistent regardless of the specific tools.
You need a way to create a job or project record for each piece of work, whether that's a project in QuickBooks Online, a job in your field service management software, or both connected together. Each job gets a clear identifier so that costs and revenue can be tagged to it consistently.
You need material costs flowing to the right job, which means either tagging supplier purchases by job at the point of purchase or having a process to attribute material to jobs as it's used. The more automated this is, the more reliable your job costing will be, because manual attribution after the fact tends to be incomplete.
You need job-level time tracking so labor hours land against the right job. Field service software with time tracking, or a dedicated time tracking tool that integrates with your accounting system, lets plumbers clock time to specific jobs from the field. This is the piece most plumbing businesses are missing, and without it labor can't be allocated accurately.
You need the burdened labor rate built into the system so that tracked hours convert to accurate labor cost rather than understated base-wage cost.
This is covered in more depth in How to Track Job Costs in QuickBooks Online, and the principle is the same for plumbing: the labor cost in your job costing has to reflect what the labor actually costs you.
Once these pieces are in place, completing a job and pulling its profitability becomes routine, and you start accumulating a body of data that shows your real margins by job and by type of work.
Using the data to price and steer the business
Job costing data is only valuable if you use it, and the two highest-value uses are refining your pricing and steering your business toward profitable work.
On pricing, job costing gives you the feedback loop that pricing-by-feel lacks.
When you can pull a completed job and see that you estimated a 50 percent margin but actually earned 38 percent because labor ran longer than expected, you have the information to adjust either your estimates or your pricing on similar future jobs.
Over time, this feedback makes your estimates increasingly accurate, which means you stop underpricing work that turns out to cost more than you charged.
Without job costing, you only find out whether your pricing worked when the year-end numbers come in, by which point you've already run a full year at whatever margin your pricing happened to produce.
On steering the business, job costing across many jobs reveals patterns that tell you where to focus.
If your service work consistently runs 55 percent gross margin and your new construction consistently runs 25 percent, that's a clear signal about where the profitable growth is, and it might lead you to weight your business more toward service and selective about which new construction jobs you bid.
If certain types of jobs or certain customers consistently produce weak margins, job costing surfaces that so you can either reprice or walk away. These are decisions that should be made on data, and job costing is what provides the data.
The connection to clean books
Plumbing job costing depends on the underlying books being structured correctly. Your chart of accounts needs to separate revenue by type of work so that job costing rolls up into meaningful categories. Your material purchases need to be organized so they can be tagged to jobs. Your payroll needs to capture burdened labor cost and feed job-level time tracking.
When the books are set up properly, job costing flows naturally from them. When the books are messy, job costing becomes a manual struggle that produces unreliable numbers.
This is why job costing and bookkeeping go together. You can't have reliable job costing on top of disorganized books, and the contractors who get the most value from job costing are the ones whose underlying financial structure was built to support it.
At Prophet Accounting, we work with plumbing contractors and other home service trades across Port St. Lucie, the Treasure Coast, and nationwide.
We set up job costing that separates service, new construction, and repipe work, captures burdened labor and material correctly, and produces the margin data you need to price well and steer the business toward profitable work.
If you can't say what your gross profit was on your last big job, schedule a consultation at prophetaccounting.com/contractors.
For a quick read on monthly bookkeeping costs, our pricing calculator gives you a ballpark in about two minutes.