
Construction Job Costing: A Step-by-Step Guide for Small Contractors
Share this article
Construction job costing tracks each project's labor, materials, equipment, and subcontractor costs against its budget so you can see whether the work is making money. To set it up, use consistent job numbers and cost codes, calculate fully burdened labor, capture costs promptly, and review the forecast final margin every week.
You do not need hundreds of codes or a full-time analyst. You need a system your crew can use and numbers your office can trust.
1. How do you set up a construction job costing budget?
Start by turning the accepted estimate into a project budget before work begins. Assign a unique job number and separate expected job costs from the contract selling price.
Your estimate is the starting plan. The job cost report shows what actually happens and what you now expect the finished work to cost.
For each project, record:
Contract value: The original agreed selling price, with approved changes tracked separately.
Labor budget: Planned hours multiplied by the applicable burdened hourly rates.
Other direct costs: Materials, equipment, subcontractors, permits, and job-specific expenses.
Target gross margin: The percentage of revenue expected to remain after direct job costs.
Keep the original budget visible. If scope changes, add an approved budget revision rather than overwriting the starting numbers. Otherwise, you lose the ability to distinguish a weak estimate from extra work.
Decide how overhead will be handled with your bookkeeper. Office rent and administrative salaries usually belong in overhead, while a dedicated site trailer may be a direct job cost. Apply the same policy across projects.
2. Which cost codes should small contractors use?
Use cost codes that match how you estimate and manage the work. Start with broad, recognizable phases, then separate labor, materials, equipment, and subcontractors within those phases.
A small electrical contractor might start with mobilization, rough-in, installation, testing, and closeout. A renovation contractor might use demolition, framing, mechanical, finishes, and punch list.
The structure has three parts:
Job number: Which project incurred the cost?
Cost code: Which phase or activity caused it?
Cost type: Was it labor, material, equipment, or subcontracted work?
For example, job 2417, code 200 rough-in, and cost type labor identifies more than a generic payroll expense. It lets you compare rough-in hours against the estimate.
Start with five to ten useful phases if that fits your work. Add detail only when it helps someone make a decision. A code list that crews cannot navigate will produce guesses, not better information.
Use the same structure in estimating, time tracking, purchasing, and reporting. If your accounting setup cannot preserve that detail, review these signs your accounting software is hurting job costing.
3. How do you calculate labor burden correctly?
Labor burden is the employer's cost of employing someone beyond their base wages. Your job labor rate should account for those costs instead of treating the hourly wage as the full expense.
Depending on your location and employment arrangements, burden can include:
Employer payroll taxes or contributions, including applicable US Social Security and Medicare or Canadian CPP/QPP and EI contributions.
Workers' compensation premiums and applicable employer insurance costs.
Employer-paid health, retirement, or union benefit contributions.
Paid holidays, vacation, and other paid nonproductive time.
Burdened hourly rate = total annual employment cost allocated to job labor ÷ expected annual job-chargeable hours.
This approach matters because paid hours and job-chargeable hours are not necessarily equal. If you include paid leave in annual employment cost and exclude leave hours from the denominator, do not add another vacation allowance on top.
For a simplified illustration, a 30% burden turns a USD 30 hourly wage into USD 39, or a CAD 40 hourly wage into CAD 52. These are separate examples, not currency conversions or recommended burden rates.
Use your own payroll records, insurance rates, benefits, and realistic hours. Update rates when those inputs change. Capture overtime premiums deliberately rather than assuming a straight-time rate covers every shift.
4. How should you track materials, equipment, and subcontractors?
Assign each purchase or commitment to its job and cost code when it is ordered. Then match receipts, deliveries, invoices, and credits so the report reflects the cost of completing the work.
Materials
Include delivery charges and nonrecoverable taxes where applicable. Recoverable GST/HST input tax credits generally should not inflate Canadian job costs; US sales and use tax treatment depends on the jurisdiction and contract. Confirm your policy with your accountant.
Track warehouse issues, returns, and transfers between jobs. If one project buys materials that another uses, transfer the cost instead of leaving the first project looking unprofitable.
Record purchase orders before invoices arrive. This exposes spending already committed, especially when material price volatility threatens contractor margins.
Equipment and subcontractors
Charge rentals for the full expected period, including delivery and pickup. For owned equipment, use a documented internal rate based on relevant ownership and operating costs. Avoid charging the same fuel or maintenance twice.
Track subcontract values, approved extras, and remaining commitments. Where costs are recorded on an accrual basis, retainage or holdback affects payment timing, not whether the work already performed belongs in job costs.
5. How do you capture costs without creating more paperwork?
Capture information where the work happens, then give one office person responsibility for checking it. Daily entries are more reliable than asking everyone to reconstruct the week on Friday.
Keep the routine short:
Crew: Record time against the job and phase each day, including job-related travel or supply runs under your policy.
Foreman: Check hours, quantities completed, delays, and work outside the original scope.
Purchaser: Put the job number and code on purchase orders and receipts.
Office: Match records, resolve missing codes, and reconcile labor and purchases with accounting.
Give pending changes their own identifier. Record the related costs immediately, but do not quietly add unapproved change revenue to the contract value. Show pending recovery separately so an uncertain payment does not make the margin look safer than it is.
Set a weekly cutoff for report preparation. Note missing invoices and estimated incurred costs, then replace estimates when documents arrive without counting both.
6. What should a useful job cost report show?
A useful job cost report shows the budget, recorded costs, remaining obligations, and expected final cost by code. Actual spending alone cannot tell you whether a half-finished project will make money.
Report fieldWhat it tells youWhat to checkCurrent approved budgetOriginal budget plus approved revisionsDoes it match the approved scope?Actual cost to dateCosts incurred and recorded so farAre time entries and invoices current?Outstanding commitmentsUnincurred balances on orders and subcontractsHave recorded costs been removed from these balances?Uncommitted cost to completeRemaining work not covered by commitmentsAre labor, rentals, and closeout included?Forecast final costExpected total cost at completionIs it above the approved budget?Forecast gross marginExpected gross profit as a percentage of revenueHas it fallen below target?
Forecast final cost = actual cost to date + outstanding unincurred commitments + uncommitted cost to complete.
The categories must not overlap. If an invoice is already in actual costs, that amount cannot also remain in outstanding commitments.
Forecast gross margin = (approved contract revenue minus forecast direct job cost) ÷ approved contract revenue × 100.
If expected direct costs rise from 75% to 82% of unchanged contract revenue, forecast gross margin falls from 25% to 18%. Gross margin still needs to cover overhead and profit. It is not net profit, cash in the bank, or markup.
7. How do weekly reviews protect your margin?
Review the report weekly with the person managing the work and the person maintaining the numbers. Focus on what remains to be done, not just what has already been spent.
Ask three questions for each active job:
What changed? Identify labor overruns, waste, rental extensions, missing invoices, or scope changes.
What will finishing actually require? Reforecast hours, purchases, subcontract work, testing, and punch list.
Who will act? Assign an owner and deadline for each correction.
Challenge vague progress estimates. If rough-in has used 60% of its labor budget but only 40% of measurable work is complete, investigate now. Installed quantities and remaining tasks are better evidence than “we're nearly there.”
At closeout, compare estimated and actual hours and costs by code. Feed recurring misses into the next estimate. Also review collections separately: a profitable job can still create a cash shortage when payment is late.
Start with one job, then make it repeatable
The best construction job costing system is one your team keeps current. Pilot the process on one active project, fix confusing codes, and complete a weekly review before expanding it.
Tradetraks combines tools for trades businesses, including TimeTrak for free time tracking connected to QuickBooks Online and FinTrak for job costing and financials. Explore managing job financials with FinTrak as you evaluate your workflow.
Want to see how Tradetraks could support your process? Book a Personalized Demo.
Frequently asked questions
How do I start construction job costing for a small contracting business?
Start with one active project, a unique job number, and a budget broken into a few practical cost codes. Assign every time entry, purchase, rental, and subcontractor invoice to that job and the appropriate code. Review costs and remaining work weekly with your foreman and bookkeeper before rolling the process out across all projects.
What should be included in construction labor burden?
Labor burden includes employer costs beyond base wages, such as payroll taxes or contributions, workers' compensation, benefits, and paid leave. US and Canadian requirements differ by jurisdiction and employment arrangement. Calculate your own rate from payroll and insurance records, and handle paid nonproductive time consistently so it is not counted twice.
What is the difference between job costing and general accounting?
Job costing measures the costs and expected profitability of individual projects, while general accounting records the financial activity of the whole business. Both should use reconciled information. A company income statement can look healthy even when one project is losing money, which is why contractors need project-level budgets, cost tracking, and forecasts alongside their accounting.
Can I use a spreadsheet for construction job costing?
Yes, a spreadsheet can work when your project volume is manageable and someone owns the updates. Use consistent job numbers, cost codes, and separate columns for budgets, actual costs, commitments, and forecasts. Consider dedicated software when missing receipts, delayed time entries, duplicate data entry, or version confusion prevent reliable weekly reviews.



