Job Costing in QuickBooks Online: A Complete Guide for Contractors
Are your projects actually profitable — or just look like they are? Here’s how to find out, with step-by-step guidance from San Diego’s construction accounting specialists.
A lot of contractors we work with across San Diego County can tell you their revenue. But when we ask which jobs were actually profitable last year, the room gets quiet. That’s a job costing problem — and QuickBooks Online has a built-in solution most business owners aren’t using.
This guide walks you through what job costing is, how to set it up in QBO, and why getting it right is the difference between growing a profitable construction business and staying stuck on the revenue hamster wheel.
What Is Job Costing?
Job costing is the process of tracking every dollar of income and expense tied to a specific project or job. Instead of only knowing your company’s total revenue and expenses, you know the profit or loss on each individual job.
For a contractor or trades business in San Diego, that means tracking:
- Direct labor — the hours your crew spent on each project
- Materials — lumber, pipe, fixtures, subcontractor invoices
- Equipment — rentals, depreciation, fuel attributed to the job
- Overhead allocation — a proportional share of your indirect costs
When you have this data, you can answer the questions that actually drive business decisions:
- Which types of jobs are your most profitable?
- Are your estimates accurate?
- Is a specific project bleeding money — and why?
- Which clients or project types should you pursue more of?
Without job costing, you’re flying blind. And in a competitive market like San Diego County construction, that’s a real disadvantage.
How Job Costing Works in QuickBooks Online
QuickBooks Online uses Projects (available on the Plus and Advanced plans) to handle job costing. Each project links together estimates, invoices, expenses, time entries, and bills — giving you a real-time profitability view for every job.
Enable Projects in QBO Settings
Go to Settings > Account and Settings > Advanced and turn on the Projects feature. Enable time tracking here too if you have employees logging hours.
Create a Project for Each Job
In the left navigation, click Projects, then New Project. Assign it to a customer, give it a name, and set start and end dates.
Create an Estimate (Strongly Recommended)
Before work begins, build an estimate inside the project. This becomes your budget. When actual costs come in, QBO compares them automatically so you see budget vs. actual at a glance — invaluable data for growing a contracting business.
Assign All Costs to the Project
Every bill, expense, and purchase in QBO has a Customer/Project field. Tag every subcontractor bill, supplier invoice, credit card transaction, and payroll entry to the right project. This step is where most businesses fall apart — if your team isn’t tagging consistently, your reports will be incomplete.
Invoice From Inside the Project
Create invoices directly within the project. This links revenue to the job so QBO can calculate gross profit in real time — whether you’re invoicing by milestone, percentage of completion, or time and materials.
Review the Project Profitability Report
Inside each project, QBO shows total income billed, total costs (labor, materials, subcontractors), and gross profit. Pair this with the Expenses by Project and Time Cost by Employee/Vendor reports for a complete picture.
5 Common Mistakes Contractors Make With Job Costing
Not assigning expenses consistently
If half your materials get tagged to a job and half go to a generic expense account, your job cost report is worthless. Train your team to tag every transaction — no exceptions.
Forgetting labor
Materials are easy to track. Labor is trickier. If you’re not using time tracking — in QBO, TSheets, or another integrated tool — you’re missing a major piece of your job costs. For many San Diego trades businesses, labor is the biggest cost on a job.
Lumping overhead into job costs incorrectly
Not every overhead expense belongs on a specific job. Office rent, software subscriptions, and admin salaries are indirect costs that need a consistent allocation method. Work with your CPA to set this up properly.
Only looking at job costs after the project is done
Job costing is most powerful mid-project. If you’re 60% through a job and have already spent 80% of the budget, you know you have a problem before it becomes a loss. Review project profitability weekly or at key milestones.
Not comparing estimates to actuals
If you’re not entering estimates before work begins, you’re losing the most valuable data job costing provides. Over time, comparing estimates to actuals shows you exactly where you under-bid — and helps you price future work more accurately.
Which QBO Plan Do You Need for Job Costing?
QuickBooks Online’s Projects feature is available on the Plus and Advanced plans. If you’re on a lower tier and doing any volume of project-based work, the upgrade is almost certainly worth it.
| Feature | Simple Start | Essentials | Plus | Advanced |
|---|---|---|---|---|
| Projects / Job Costing | ✗ | ✗ | ✓ | ✓ |
| Time Tracking | ✗ | ✓ | ✓ | ✓ |
| Budget vs. Actual | ✗ | ✗ | ✓ | ✓ |
| Class & Location Tracking | ✗ | ✗ | ✓ | ✓ |
When Job Costing Gets More Complex
For larger San Diego County contractors or those managing multiple crews and project types, QBO’s built-in job costing is a great foundation — but you may eventually need more. Signs you’ve outgrown basic QBO job costing include:
- You need Work in Progress (WIP) accounting for long-term contracts
- You want percentage-of-completion revenue recognition
- You manage equipment cost allocation across jobs with owned equipment
- You need certified payroll reporting for prevailing wage projects
At that point, you may be looking at construction-specific software like Buildertrend or Foundation — or a deeper QBO setup with a CPA who specializes in construction accounting. That’s exactly what we do at Accounting Fresh.
Ready to See Your Real Project Profitability?
Accounting Fresh CPA works exclusively with contractors and trades businesses across San Diego County. We’ll help you set up job costing in QBO correctly from the start — or clean up a system that isn’t working.
Schedule a Free Consultation