(443) 600-8990Get a free consultation
  1. Home
  2. Blog
  3. Plumbing
Plumbing

Plumbing job costing: how to see which calls actually make money

Parts, labor and supply-house runs often land in one line, making job profit a guess. Here's how North Jersey plumbers make it visible.

Plumbing job costing: how to see which calls actually make money

September 30, 2026 · Mitt Patel · 6 min read

You just got back from a water heater repair, a drain cleaning, and two supply-house runs in between. The invoice says you made money on all three calls. But you're not actually sure which one, if any, barely broke even once you count the trip to the supply house and the extra hour it ate.

Why this happens

Most plumbing companies track money coming in and money going out, but not which job the money belongs to. A supply-house receipt for $180 in fittings gets entered as "materials expense" with no link to the job it was for. An invoice goes out with one line item, "plumbing service, $650," that quietly includes both the part and the hour of labor.

Both habits make sense in the moment. You're standing at the counter at the supply house, or you're writing up an invoice at 7pm after a long day, and adding job detail feels like a step you don't have time for. But it costs you later, in a specific way: you can't tell which jobs are actually profitable and which ones just look profitable because the losses are buried inside a bigger number.

That shows up in real decisions. You might quote the next water heater job the same way you quoted the last one, not knowing the last one barely cleared cost after the supply-house run. You might keep taking a certain type of call because it "feels" steady, when the ticket detail would show it's the parts-heavy jobs, not the labor-heavy ones, that are actually paying the bills. Without job-level detail, you're pricing and choosing work off a guess.

A worked example

Say you run three calls in one day: a water heater repair, a drain cleaning, and a fixture repair. Total invoiced for the day is $650 for the water heater, plus smaller amounts for the other two. In between calls, you stop at the supply house and spend $180 on a heating element, a thermostat and fittings, all for the water heater job.

If that $180 gets entered as a general materials expense, with no job attached, your books show $650 in revenue and $180 in cost, but they don't show that both belong to the same ticket. Add an hour and a half of technician time plus the supply-house run, and the water heater job might carry a thinner margin than the $650 invoice suggests.

Now say the drain cleaning took forty-five minutes, needed no parts, and billed at $150. Once you can see each job's cost separately, it becomes clear the drain cleaning carried a much better margin than the water heater repair did that day, even though the water heater brought in more money. That's the kind of thing you can't see when everything lands in one column.

How to set it up

  1. Turn on project or customer tracking in QuickBooks Online, if you haven't already. This lets you tag transactions, including expenses, with a specific job or customer.
  2. Put the customer or job name on every supply-house receipt when you pay it. Whether you're paying by card at the counter or entering the bill later, assign it to the job right then. This is one of the most important habits for making job costing work.
  3. Set up separate items for parts and for labor in QuickBooks, instead of one generic "plumbing service" item. Give them names that make sense to you, like "Parts" and "Labor - service call."
  4. Use both items on every invoice, even quick ones. If a job only has labor, that's fine, just use the labor item. The point is consistency, not complexity.
  5. Run a profit by customer or job report monthly. This shows revenue and cost side by side for each job, once the receipts and invoices are tagged correctly.
  6. Run a sales by item report alongside it. After a month or two of consistent tagging, this report starts to show which type of work, parts-heavy or labor-heavy, actually carries better margin for your business.
  7. Review both reports together, not just once, but as a habit. One month of data tells you something. A few months, side by side, tells you a lot more.

Which report matters more for your business, profit by job or margin by item, depends on how your work is structured. A company doing mostly service calls will lean on the item report. A company doing bigger installs will likely get more out of job costing. If you're not sure which applies to you, that's a reasonable thing to ask a bookkeeper.

What undoes it

  • Entering supply-house receipts in a batch at the end of the week, without going back to check which job each one was for. By Friday, you won't remember, and the tagging either gets skipped or guessed.
  • Lumping parts and labor into one invoice line because it's faster to type. This erases the exact distinction you're trying to create.
  • Using a generic "materials" or "supplies" customer on job-tracked expenses instead of the real job name. This technically checks the box but gives you nothing useful in the report.
  • Letting technicians turn in receipts without job names written on them. If more than one person is buying parts, the habit has to hold for everyone, not just you.
  • Only running the reports once and never again. Job costing isn't a one-time setup. It's only useful if you keep looking at it.

Monthly checklist

  • Every supply-house receipt from the month has a job or customer name attached.
  • Every invoice uses separate parts and labor items, not one combined line.
  • Profit by customer report has been run and reviewed for the month.
  • Sales by item report has been run and compared against prior months.
  • Any job that shows an unusually thin or negative margin has been looked at, so you know why.

Common questions

Do I need QuickBooks Online for this, or can I do it with a spreadsheet?

You can track job costs in a spreadsheet, but QuickBooks Online does the matching automatically once receipts and invoices are tagged correctly, which saves a lot of manual work over time. If you're already using QuickBooks for invoicing, turning on job tracking is usually the simpler path.

What if I don't want to itemize parts and labor on the invoice a customer sees?

A bundle in QuickBooks Online can show the customer one combined line while still recording parts and labor as separate items for your reports. The detail is for your reporting, not necessarily for the customer to see line by line.

How long before this actually shows me something useful?

Usually a month or two of consistent tagging before the reports start to show real patterns. A single week won't tell you much, since one unusual job can skew the numbers. Give it a full billing cycle or two before drawing conclusions.

What if some jobs are quoted as a flat price, not itemized time and materials?

You can still split the flat price into parts and labor items on the back end when you invoice, even if the customer just sees one total. That way your internal reporting stays consistent no matter how you price the job.

North Hudson Bookkeeping sets up job costing like this for plumbing companies across North Jersey, and keeps the reports current so you're not guessing which calls are actually worth taking. The first call is free.

Want this handled for you?

Monthly bookkeeping from $500 a month: every account reconciled, clear reports and a short summary each month. Book a free 20-minute call or call (443) 600-8990.

Get a free consultation

Talk to MittCall or text (443) 600-8990 · or book a free consultation
Free consultationFree callCallTextWritten quoteQuote