Two ways to start. A free fit call, or the Diagnostic in writing.
Client login786-952-6621

Bookkeeping for a Trades Business: Job Costing, Invoicing, and Tracking Profitability by Job

Written by Yarik Yarosh, CPA (US & Canada) September 4, 2026 · FL CPA license AC61704 · CPA Ontario

Job costing means tracking every dollar of materials, labor, and overhead against the specific job that generated it, so a trades business can see which jobs actually made money instead of just watching the bank balance and hoping. Most plumbing, electrical, and HVAC businesses run their books at the company level (total revenue minus total expenses) and have no idea that their service calls are subsidizing an unprofitable install division, or that one crew’s jobs consistently run over budget while another’s don’t. Job costing fixes that, and it’s the single most valuable bookkeeping change most trades businesses can make.

✓Key takeaway

A trades business needs three things to job cost properly: a chart of accounts that separates cost of goods sold (materials, direct labor, subcontractors) from overhead, a way to tag every expense and timesheet entry to a specific job, and a habit of reviewing job profitability monthly rather than only at year-end. QuickBooks Online (Projects/Jobs feature) or QuickBooks Desktop (Job Costing reports) can do this natively for smaller operations; field-service platforms like ServiceTitan, Housecall Pro, and Jobber add dispatch, estimating, and technician time tracking that feeds job costs automatically for larger operations. Progress billing and retainage on larger install and construction-style jobs require separate tracking from straightforward service-call invoicing, because the accounting treatment and cash-flow timing differ.

Why does job costing matter more for trades businesses?

A trades business sells a mix of two fundamentally different things: quick service calls (a diagnostic visit, a repair, a small fix) and larger jobs (an install, a remodel, a system replacement) that run over days or weeks and involve real material and subcontractor cost. For current guidance, see IRS record-keeping guidance. Company-level profit and loss blends these together and hides which one is actually carrying the business.

  • Service calls and installs have different cost structures. A service call is mostly labor and a trip charge; an install job carries significant material cost, sometimes a permit fee, and often a longer collection cycle. Blending them in one P&L line makes it impossible to price either one correctly.
  • Estimating accuracy depends on knowing actual job costs, not company averages. A business that doesn’t track job-level cost has no real data to check its estimates against; it’s pricing the next job based on gut feel, not on what the last ten similar jobs actually cost to complete.
  • Crew and technician performance is invisible without it. Job costing by crew or technician (not just by job) surfaces which crews consistently beat their labor budget and which ones consistently run over, information that matters for staffing, training, and pay decisions.
  • Cash flow planning requires knowing which jobs are still owed money and which are fully collected. Without job-level tracking, a business can look cash-flow healthy on paper while a handful of large jobs sit uncollected for months.

What does a trades-specific chart of accounts look like?

The chart of accounts is the foundation. A generic small-business chart of accounts (one broad “cost of goods sold” line, one broad “expenses” line) doesn’t give job costing anything to work with. A trades-specific structure separates costs the way the business actually operates.

  • Direct job costs (cost of goods sold): materials and parts, direct labor (technician and installer wages tied to job time, not office staff), subcontractor costs, permit and inspection fees, equipment rental for a specific job, and dump/disposal fees tied to a job.
  • Overhead (operating expenses, not tied to any one job): office staff wages, rent or the home-office allocation, general liability and workers’ comp insurance (though workers’ comp can sometimes be allocated to jobs if the software supports it), vehicle costs not tied to a specific job, marketing, and software subscriptions.
  • Revenue by service line, not just one lump revenue account: service and repair revenue, install/replacement revenue, maintenance-agreement revenue, and (for larger operations) new-construction or remodel revenue. This lets the P&L show gross margin by service line even before drilling into individual job costing.

A simplified trades chart of accounts

Account typeExample line itemsTagged to a job?
Direct job costs (COGS)Materials, direct labor, subcontractors, permitsYes, always
Revenue by service lineService/repair, install/replacement, maintenance agreementsYes, always
OverheadOffice wages, rent, marketing, software subscriptionsNo, tracked at the company level
Fixed assetsTrucks, diagnostic equipment, shop toolsSometimes (a truck may serve many jobs)

How do I track materials, labor, and overhead per job?

The mechanics differ by software, but the discipline is the same everywhere: every dollar that goes out the door, and every hour of labor, gets tagged to a job at the moment it happens, not reconstructed later from memory.

  • Materials: Every purchase order, receipt, and supply house invoice gets coded to a job number at the point of entry, whether that’s a bookkeeper keying receipts weekly or a technician snapping a photo of a receipt in a field-service app that auto-codes it. Materials bought for stock (not a specific job) go to inventory or a general supplies account, not to a job, until they’re actually pulled for one.
  • Labor: Technicians and installers clock time against a job number, either through the payroll system’s job-costing feature or a field-service app’s timesheet. This is the step most trades businesses skip, and it’s the single biggest gap in job costing accuracy; without it, labor cost gets allocated to jobs by rough estimate instead of actual hours, which defeats the purpose.
  • Subcontractors: Coded to the job they worked on, same as materials, with the 1099 reporting obligation tracked separately (see the classification guide below for when a sub crosses into employee territory).
  • Overhead allocation: Most trades businesses don’t allocate overhead to individual jobs in real time; instead, they track gross margin per job (revenue minus direct costs) and look at overhead at the company level against total gross margin generated. A simpler, more useful benchmark for most operations than trying to allocate rent and office salaries down to the job level, which adds complexity without much decision-useful information for a business under a few million in revenue.

How does progress billing and retainage work on big jobs?

Service calls get invoiced on completion, full stop. Larger install and remodel-scale jobs often need progress billing (invoicing in stages as the work progresses, rather than waiting for full completion) and sometimes retainage (a percentage, commonly 5% to 10%, withheld by the customer or general contractor until the job is fully complete and inspected).

  • Progress billing should be tied to defined milestones, not arbitrary time periods: rough-in complete, equipment set, trim-out complete, final inspection passed. Billing against milestones keeps cash flow aligned with actual work performed and gives the customer a clear basis to dispute (or approve) each invoice.
  • Retainage is a receivable, not a write-off, even though it sits uncollected for weeks or months. It should be tracked in its own account so it doesn’t get lost in general accounts receivable and forgotten when the job wraps.
  • The accounting method matters for larger jobs. A trades business with average annual gross receipts under the small-contractor exception threshold (a three-year average of $32 million or less for 2026, indexed annually) can generally use the cash method and completed-contract or exempt-contract treatment for most jobs; above that threshold, the percentage-of-completion method under IRC 460 may be required for longer jobs, which changes revenue recognition timing substantially. Most single-trade plumbing, electrical, and HVAC operations stay well under this threshold, but a business scaling into larger commercial or new-construction work should watch it.

What monthly review actually catches problems early?

Job costing only pays off if someone looks at the numbers regularly, not just at tax time. The four reviews worth doing monthly are job profitability by crew, a work-in-progress report on every open job, gross margin by service line, and an aging accounts receivable report that flags retainage sitting past 90 days.

  • Job profitability by crew or technician, reviewed monthly. Flags which crews are consistently over or under labor budget before it becomes a pattern across dozens of jobs.
  • Work-in-progress report for open jobs, showing costs incurred to date against the contract price and percentage complete, catches a job that’s quietly running over budget while it’s still fixable, not after it’s closed out at a loss.
  • Gross margin by service line, reviewed monthly or quarterly. Confirms pricing assumptions are holding up as material and labor costs shift, rather than discovering six months later that supply-house price increases quietly ate the install division’s margin.
  • Aging accounts receivable, especially retainage. Retainage that sits past 90 days past the job’s completion is worth a direct follow-up call, not just a line item that ages silently.

How does field-service software fit in?

Platforms like ServiceTitan, Housecall Pro, and Jobber are built around dispatch, estimating, and invoicing for trades specifically, and most integrate directly with QuickBooks Online to push job-level revenue and cost data automatically rather than requiring manual re-entry.

  • The software’s value is in capturing the data at the source, technician time, material usage, customer signatures on estimates and change orders, not in replacing the accounting system. QuickBooks (or a comparable general ledger) still does the actual tax and financial reporting; the field-service platform feeds it clean, job-tagged data instead of requiring a bookkeeper to reconstruct job costs from receipts after the fact.
  • Smaller operations (under roughly five to eight technicians) can often job cost effectively inside QuickBooks Online alone using its Projects feature, without the added monthly cost of a dedicated field-service platform, as long as someone is disciplined about tagging every transaction and timesheet entry to a job.
  • Larger operations benefit from the platform’s automation once manual job tagging becomes a bottleneck, generally somewhere in the range of eight to fifteen technicians depending on job volume and complexity.

What should I do next?

If your books currently show one number for total revenue and total expenses with nothing broken out by job, start with the chart of accounts rebuild: separate direct job costs from overhead, and require every material purchase and timesheet entry to carry a job number going forward (not retroactively; start from today and build clean data forward). Once three or four months of clean job-level data exist, the monthly profitability-by-job review becomes genuinely useful instead of a guess.

Want this checked against your own situation?

Start with a Diagnostic: a CPA licensed in the US and Canada reads your file and tells you in writing what's wrong and how to fix it, three to four business days after you finish the questions. The report is $250. If you hire us for any work after that, you get the $250 back as a discount on that work. Or send us your return or your letter and get a fixed price, free.

Get the next cross-border guide by email

One or two plain-English guides a week on US-Canada tax. No spam, unsubscribe anytime.

Cite this page

Yarik Yarosh, CPA. "Bookkeeping for a Trades Business: Job Costing, Invoicing, and Tracking Profitability by Job." Blue Cloud CPA, September 4, 2026, updated October 4, 2026. https://bluecloudcpa.com/guides/trades-bookkeeping-job-costing-service-business

This guide is general information, not tax advice for your specific situation. Which points apply, and how, depends on your facts.