
How to Track Profitability Per Job Using QuickBooks
A Guide for Trade Business Owners
If you’re in the trades—HVAC, plumbing, electrical, roofing, or general contracting—you already know that not every job is equally profitable. Some projects look great on the surface but eat away at your bottom line due to hidden costs, misquoted hours, or material overruns.
That’s where job costing comes in. With the right setup, QuickBooks can help you track profitability per job, giving you clear insights into what’s working—and what’s not. This allows you to bid more accurately, control costs, and grow a more profitable business.
Here’s how to set it up and what to look for.
1. Use QuickBooks Online Plus or Advanced
Job costing is not available in all QuickBooks versions. If you’re using QuickBooks Online, you’ll need the Plus or Advanced version to track jobs (called “projects” in QBO).
2. Turn On the Projects Feature
In QuickBooks Online:
- Go to Settings > Account and Settings > Advanced.
- Under Projects, toggle the feature on.
This allows you to create projects for each job and assign income, expenses, and time to those specific jobs.
3. Create a New Project for Each Job
For every new customer job, create a Project:
- Go to Projects > New Project.
- Name the project (e.g., “Smith – HVAC Install”) and assign it to the customer.
This lets you track all job-related activity—estimates, invoices, bills, time entries, materials, subcontractors, etc.—in one place.
4. Assign All Income and Expenses to Projects
For accurate job costing, make sure to assign every transaction to the correct project:
- Invoices & Sales Receipts: Tag them to the project when billing the customer.
- Bills & Expenses: Assign materials, permits, fuel, and subcontractor costs to the correct project.
- Time Tracking: Use QuickBooks Time or manual time entries to log labor hours per job.
Even small costs like parking, tolls, or fasteners should be assigned to the right job. It adds up!
5. Track Labor Costs Properly
If you have employees or contractors, make sure to:
- Use QuickBooks Payroll (or integrate a payroll system) that supports job-costed time tracking.
- Assign time entries to jobs so labor costs get allocated accurately.
This is especially important in the trades where labor is a major cost driver.
6. Review Project Profitability Reports
Once transactions are entered, head to:
Projects > Choose a Project > Project Reports
Look for:
- Project Profitability: A snapshot of income vs. cost for that specific job.
- Time Cost by Employee or Vendor: See how much labor cost was spent and by whom.
- Unbilled Time and Expenses: Make sure nothing gets left off an invoice.
These reports show which jobs are profitable and which ones are draining cash.
7. Use the Data to Improve Your Bids
Once you’ve tracked a few jobs, you’ll start spotting patterns:
- Are you underestimating labor on HVAC installs?
- Are you consistently going over budget on materials for rewiring jobs?
- Are change orders being tracked and billed correctly?
This data gives you the confidence to quote future jobs more accurately and competitively—without risking your margins.
8. Work with a Bookkeeper Who Understands Job Costing
Many trade business owners leave money on the table simply because their books aren’t set up for job-level visibility. A bookkeeper who specializes in trades can help you:
- Set up job costing in QuickBooks properly
- Allocate indirect costs (like insurance or shop supplies)
- Interpret the reports to support better decisions
Final Thoughts
You work too hard to not know which jobs are making you money. With the right setup in QuickBooks, tracking job profitability becomes easy and actionable. You’ll be able to fine-tune your bids, control costs, and ultimately run a more predictable and profitable trade business.
Need help getting QuickBooks set up for job costing? Let’s talk. I specialize in bookkeeping for trades and can help you build a system that shows you exactly where your money is going—per job, per crew, and per season.