The thing nobody tells you when you start a mechanical contracting business is how much money you'll lose at the supply-house counter. Not from theft — from bad bookkeeping. A tech buys $340 of fittings at Ferguson for the Henderson rooftop unit, drops the receipt in the truck's center console, and three weeks later it's nowhere. The Henderson invoice gets built without it. The $340 is now an unbilled cost, an unrecorded expense, and a depressed margin on the job. Multiply by every truck, every tech, every counter run, every week.

HVAC, plumbing, and electrical contractors are the canonical case for job costing because the materials side of the business only works if every receipt gets tagged to the right job. Without that, you don't know your margins. With it, you can price work intelligently and know where you're bleeding before the bleed becomes a quarter-end surprise.

The supply-house problem in one sentence

Your techs buy materials for jobs at counters where the receipts look identical and the jobs do not.

A receipt from Ferguson Enterprises for $1,213 might be all-Henderson, all-warehouse-restock, or some mix of the two. The receipt doesn't say. The line items might be "1/2" copper L type, 50 ft" and "ball valves, 1/2" FNPT" — useful for a journeyman, useless for a job-cost record. Unless someone writes the job number on the receipt at the moment of purchase, that information is gone within 24 hours. The tech who bought it might remember for the rest of the day. By Friday it's vanished.

This isn't a problem you fix with a better filing system. It's a problem you fix at the point of purchase — or you don't fix it. The receipt has to carry the job tag from the second it's printed.

How to tag at the counter without slowing anyone down

The friction has to be near zero or it won't happen. Three patterns work in the field:

The crew doesn't need to learn an app, doesn't need to log in to anything, doesn't need to type anything more complicated than a hashtag. The capture takes about as long as putting the wallet back in the pocket.

Materials vs. restock: the categorization that pays for itself

Not every supply-house purchase is a job cost. A real job-cost system separates:

A contractor who throws everything into "supplies" loses money in two directions. First, project materials don't get billed back to customers because they get hidden in overhead. Second, restock gets booked as project cost on the closest open job, making that job's margin look worse than it is and the next job look better.

The fix is the tag at point of purchase. #henderson versus #restock versus #shop. Two characters of typing, plus the hashtag character. The bookkeeping system handles the categorization downstream.

Permits, inspections, and the fee receipts you forget exist

Permits run from $50 for a simple electrical sub to several hundred for HVAC change-outs. Inspections cost money. Plan check fees, expedite fees, BPC fees in some jurisdictions. Each one is a separate receipt, often paid online from the office, often forgotten by the time the job is billed.

These are 100% billable to a specific job — assuming you know which job they're for. The same email-forwarding rule that catches Ferguson invoices catches city permit receipts. Tag by job. At month-end you can see immediately which jobs charged for permits and which didn't (a common revenue leak).

While we're here: continuing education and licensing fees are deductible. Master electrician license renewals, journeyman re-certs, EPA 608 cert renewals, NATE testing, OSHA 10/30 cards. None of them are large but together they add up. Easy to capture: when the receipt comes by email, forward it.

Fleet expenses for service vans

Each van is its own cost center. Fuel, oil changes, tires, brakes, registration, insurance, decals, ladder racks, shelving build-outs, GPS tracking subscriptions. If you have three vans and shared expense buckets, you don't know which van is breaking even and which is barely earning back its lease.

Treat each van as a sub-book. Every fuel receipt goes to that van. Every maintenance receipt too. At year-end you see per-van profitability. You also notice when one van's maintenance costs are climbing into the territory where the math says replace it.

The cash advances you give techs

Field techs occasionally need cash. Tip a parking attendant. Pay for a quick part at a hardware store that's not on a charge account. Buy lunch on a job that ran six hours past quitting time. The cash usually comes out of an owner's pocket or the dispatcher's drawer with a verbal "I'll reimburse you."

The IRS treats undocumented cash as income to the employee, not an expense to the business. That's a 1099 and payroll tax problem you don't want. The fix is the contemporaneous note: when cash leaves your hand, capture the why-amount-job-tech right then. A text to the books with "Cash to Eddie, $40, lunch on Henderson, #henderson" is a valid record. By month-end the totals reconcile and your accountant can categorize correctly.

Subcontractor receipts — the 1099 trap

Most MEP contractors use subs for at least some work: insulation, drywall patching after a wall opening, asbestos abatement, electrical rough by a sister trade. The subs send invoices. The invoices need to be tracked by job. The annual payments to each sub also need to be tracked by sub because anyone you pay $600+ to in a year needs a 1099-NEC.

The pattern that works: forward sub invoices to your books the day they come in. Tag with job (so cost-of-goods sold rolls up correctly) and the sub's name (so the 1099 list is automatic at year-end). January is a 90% calmer month if the 1099 list builds itself throughout the year.

The reconciliation that catches the rest

Even with great capture discipline, things slip. The way to catch what slipped is monthly bank reconciliation. Pull the bank statement, drop it in, and you see immediately which credit card charges have no matching receipt. A $240 charge at Ferguson with no tagged receipt is a job that just lost $240 of billable materials. Find it now (the tech remembers what they bought a week ago), not in February (no chance).

Reconciliation also catches duplicates, fraudulent charges, and tip-of-the-iceberg accounting errors before they compound. For a contractor doing $1M+ in revenue, one missed charge per week is $52,000 a year of leakage. Reconciliation finds it. Job costing makes sure each one is billed to the right invoice.

What good looks like

A well-run mechanical contracting business closes a job and within 24 hours knows: materials cost, labor cost, permit cost, sub cost, and net margin. The margin gets compared to the bid. If it's off, the next bid for similar work adjusts. If it's on, repeat. Over a year of jobs, the bid model gets sharper, the margins climb, and the year-end accounting becomes a download instead of a project.

The receipt system is the foundation. Without it, every other improvement is theoretical because you don't have the data. With it, every quote, every margin call, every hiring decision sits on real numbers.

Tag every supply-house receipt to the right job — from the parking lot.

Text or email any receipt with a hashtag. SendToBooks routes it to the right job book and surfaces the margin at close-out.

Get Started Free