Your profit and loss statement tells you whether the company made money. Job costing tells you whether each project did. For a builder running several jobs at once, that difference decides what you bid next, which subcontractors you keep and where cash is leaking.
This guide covers how to structure job costing, the numbers worth watching and how to set it up in QuickBooks Online, the system most small builders and developers already use.
Why job costing matters
Without job costing, a profitable year can hide two bad projects carried by one great one. Fixing that starts with seeing it. Job costing lets you:
- Catch overruns while the job is still open, not after the final invoice.
- Bid with real numbers instead of last year's guesses.
- Back up draw requests and change orders with actual costs by line item.
- Give lenders, partners and your CPA project-level reports they trust.
Build a simple cost code list
Cost codes are the categories you track inside each project. Keep them short: too many codes and nobody codes anything correctly. A good starting list follows the phases of the work, then splits each phase by cost type.
| Phase (cost code) | Cost types tracked |
|---|---|
| 01 Pre-construction & permits | Design, engineering, permits, fees |
| 02 Site work | Subcontract, equipment, materials |
| 03 Foundation | Subcontract, materials, testing |
| 04 Framing | Labor, materials, subcontract |
| 05 MEP (mechanical, electrical, plumbing) | Subcontract |
| 06 Exterior & roofing | Subcontract, materials |
| 07 Interior finishes | Labor, materials, subcontract |
| 08 General conditions | Supervision, temporary utilities, dumpsters, insurance for the job |
If you borrow with a construction loan, line your cost codes up with the lender's budget lines. Then every draw request comes straight out of your job cost report instead of a separate spreadsheet.
The five cost types
- Labor: your own crews' wages plus labor burden (payroll taxes, workers' comp, benefits). Wages alone understate what labor costs you.
- Materials: lumber, concrete, fixtures and anything you buy for the job, including delivery and sales tax.
- Subcontractors: trades you hire under contract. Track them against the subcontract amount, not just the invoices received.
- Equipment: rentals, plus an hourly or daily rate for equipment you own.
- Other direct costs: permits, testing, dumpsters, job-site utilities.
On Texas jobs, sales tax on materials depends on how the contract is written. Under a lump-sum contract the contractor is treated as the consumer and pays tax on materials, so that tax belongs in material cost. Under a separated contract the contractor collects tax from the customer on the materials. Residential and commercial work are treated differently too. Check the Comptroller's guidance (Publication 94-157) or your CPA before setting up how tax is coded.
Budget vs. actual, plus committed costs
The core job cost report compares, for each cost code, the budget, the actual cost to date and what is committed but not billed yet. Together they give you a forecast at completion.
| Cost code | Budget | Actual to date | Committed | Forecast | Variance |
|---|---|---|---|---|---|
| 03 Foundation | 85,000 | 88,400 | 0 | 88,400 | −3,400 |
| 04 Framing | 140,000 | 96,000 | 38,000 | 134,000 | +6,000 |
| 05 MEP | 120,000 | 30,000 | 104,000 | 134,000 | −14,000 |
The MEP line looks fine if you only check actual cost ($30,000 spent of $120,000). Add the signed subcontract that hasn't been billed yet and the forecast is $14,000 over. That is exactly the overrun job costing is meant to show early.
Direct costs vs. overhead
Keep company overhead (office rent, admin salaries, accounting, company vehicles, general liability) out of individual jobs in the books. Mixing it in makes every job look worse and hides which ones are really in trouble.
For pricing and analysis, many builders apply an overhead rate to each job, for example overhead as a percentage of total direct cost. That gives you two margins worth watching: gross margin (revenue minus direct costs) and margin after overhead.
Setting up job costing in QuickBooks Online
- Turn on Projects (available in QuickBooks Online Plus and Advanced) and create one project per job.
- Use Products and Services for cost codes, or classes or tags if you prefer, so each line of a bill can carry its phase.
- Assign every bill, expense and timesheet to a project. Make the project field required in your process, not optional.
- Enter estimates as budgets so you can run budget-vs-actual by project.
- Connect payroll (Gusto, ADP, QuickBooks Payroll) so labor hours land on the right job with labor burden included.
- Run Project Profitability and job cost reports monthly after the books are reconciled.
If you run several companies or one LLC per project, set up job costing the same way in every file. Consistent cost codes across entities are what let you compare projects side by side.
Common job costing mistakes
- Unassigned costs: bills entered with no project end up in overhead, and jobs look better than they are.
- Labor without burden: wages alone can understate labor cost by 20% or more.
- Ignoring committed costs: the report looks healthy until the last subcontractor invoices arrive.
- Too many cost codes: crews and office staff guess, and the detail becomes noise.
- Reviewing only at closeout: by then the lesson is expensive.
Frequently asked questions
What is job costing in construction?
Job costing means recording every cost (labor, materials, subcontractors, equipment and other direct costs) against the specific project it belongs to, so you can compare each project's actual cost with its budget and its revenue.
Can QuickBooks Online do construction job costing?
Yes, for most small and mid-size builders. QuickBooks Online Plus and Advanced include Projects, plus classes or tags, so you can assign income and costs to each job and run profitability reports. Larger contractors with complex WIP or certified payroll needs sometimes move to dedicated construction software.
What are committed costs?
Committed costs are amounts you have agreed to pay but haven't been billed for yet, like the unbilled part of a signed subcontract or an open purchase order. Adding them to actual costs gives a more honest picture of where a project will land.
How should overhead be handled in job costing?
Keep direct job costs and company overhead separate in the books. Many builders then apply an overhead rate to each job in their reports, for example as a percentage of direct cost, so each project's margin reflects its share of office, insurance and vehicle costs.
How often should I review job costs?
At least once a month, after the books are reconciled. On fast-moving jobs, a weekly look at labor and materials against budget catches overruns early enough to act on them.
Want someone to run this for you?
I set up and run the books for construction businesses and developers with several projects and LLCs. Book a free 30-minute call and we will look at how your books are organized today.
This guide is general information for business owners, not tax or legal advice. R&J Consultants provides bookkeeping and does not prepare IRS returns; confirm tax and legal treatment for your situation with your CPA or attorney.
