Skip to main content
thryve
All resources
Construction•12 min read

Guide

Job Costing for Contractors: Why Your Profitable Jobs Are Not Making Money

Last updated October 2026. The short answer Job costing for contractors means tracking every cost of a job against that job's revenue, including labor burden, equipment, and materi

By

Co-Founder & Financial Strategist · October 16, 2026 · Updated October 16, 2026

Last updated October 2026.

The short answer

Job costing for contractors means tracking every cost of a job against that job's revenue, including labor burden, equipment, and materials pulled from the shop. Profitable-looking jobs lose money when the job report carries bare wages, misses costs coded to overhead, and is never compared to the overhead the job has to cover. Construction employers pay about 44 cents in benefits for every dollar of wages, so a labor-heavy job costed on wages alone can look 10 or more points more profitable than it is.

What is job costing for contractors?

Job costing is the practice of assigning every dollar of cost to the specific job that caused it, so each job has its own profit and loss. Your company profit and loss tells you whether the business made money last year. Job costing tells you which jobs made it and which jobs gave it back.

The test of good job costing is simple: when a job closes, you can say what it earned, how that compared to the bid, and why the two are different. If you cannot answer those three questions for your last ten jobs, you are bidding the next ten on memory.

Why does a job look profitable and still lose money?

A job looks profitable and still loses money when costs it caused sit somewhere other than the job. The job report is not lying. It is just incomplete. These are the five places the missing money usually hides:

  1. Labor burden. The job carries the hourly wage, while payroll taxes, workers' comp, health insurance, retirement, and paid time off land in a company-wide payroll expense account. On a labor-heavy job, this is the biggest leak.
  2. Hours over the estimate. The bid assumed 800 hours. The crew logged 960. If nobody compares hours weekly, you find out when the job closes.
  3. Materials that never got coded. Supply-house runs on a company card, stock pulled from the shop, and the second trip for the part that was wrong. Each one is small. Together they are a margin.
  4. Equipment and trucks. Fuel, maintenance, and payments on the trucks and equipment that were on the job usually sit in overhead, so the job gets them for free.
  5. Change orders done but not billed. The extra work was real, the cost hit the job, and the invoice never went out.

Then comes the part most job reports skip entirely: the overhead the job has to cover. Office staff, rent, insurance, software, and the owner's time do not belong to any one job, but every job has to help pay for them.

What does a fully costed job look like?

A fully costed job shows the same revenue as the job report, with every missing cost put back. Here is a $100,000 job, using round illustrative numbers rather than any real client:

Line

What the job report shows

Fully costed

Contract revenue

$100,000

$100,000

Materials

$34,000

$37,000

Field labor wages (960 hours at $30)

$28,800

$28,800

Labor burden at 44 cents per wage dollar

$0

$12,600

Subcontractors

$16,000

$16,000

Equipment and trucks

$0

$2,500

Total job cost

$78,800

$96,900

Gross profit

$21,200 (21.2%)

$3,100 (3.1%)

Share of overhead at 15% of revenue

Not shown

$15,000

Result after overhead

Looks like $21,200 profit

$11,900 loss

The job report says this job earned 21 cents on the dollar. Fully costed, it earned 3 cents before overhead and lost about 12 cents after it. Nothing in the job report was wrong. It was missing $18,100 of cost that the business paid anyway.

Now add the change order. Say the crew did $4,000 of extra work the customer approved on site, and nobody billed it. Billing it would recover $4,000 of that loss. The job would still lose money, but unbilled change orders are often the fastest dollars a contractor can recover, because the work is already done.

How much does labor burden really add?

Labor burden adds about 44 cents to every dollar of wages for the average construction employer. The U.S. Bureau of Labor Statistics measures this every quarter. In its June 2026 Employer Costs for Employee Compensation release, construction employers paid an average of $51.96 per hour worked, split like this:

Cost per hour worked, construction industry, June 2026

Amount

Share of total

Wages and salaries

$36.13

69.5%

Paid leave

$2.63

5.1%

Supplemental pay (overtime premiums, bonuses)

$2.49

4.8%

Insurance

$3.90

7.5%

Retirement and savings

$2.39

4.6%

Legally required benefits (Social Security, Medicare, unemployment, workers' comp)

$4.42

8.5%

Total compensation

$51.96

100.0%

Benefits totaled $15.84 per hour on top of $36.13 in wages. That is 44 cents of burden per wage dollar, and it is the number behind the $12,600 in the example above.

Your number will be different. A shop with no health plan will run lower. A union shop, or a trade with high workers' comp rates, will run higher. Paid leave is the piece people forget: the crew gets paid for holidays and vacation, but nobody logs those hours to a job, so the cost has to ride on the hours they do log.

One note if you check later BLS releases: starting with its December 2026 data, BLS will remove workers' compensation costs from this series, so the published benefit share will drop. Your workers' comp premium still belongs in your own burden rate.

To calculate your own rate, add up a year of everything you pay for field employees beyond their base wage, and divide it by the wages paid for hours actually worked on jobs.

How much margin should a job carry?

A job should carry enough gross margin to cover its share of overhead and still leave a profit. Industry data gives you a starting point. In the Construction Financial Management Association's 2025 Financial Benchmarker, which covers fiscal 2024 results from 1,558 contractors:

Measure, fiscal 2024

Result

Specialty trades, gross profit margin

22.4%

Specialty trades, net income before taxes

7.7%

Specialty trades under $10M in revenue, net income before taxes

6.5%

Specialty trades at $10M to $24.9M, net income before taxes

8.0%

Specialty trades at $25M to $49.9M, net income before taxes

8.5%

All contractors, net income before taxes

6.7%

All contractors, top 25% of firms, net income before taxes

12.0%

For specialty trades, the gap between 22.4% gross profit and 7.7% pretax income is about 15 points. That gap is mostly overhead, and it is why the example above uses 15%.

That gives you the one rule we would put on the wall of every estimating office. Call it the overhead line: a job made money only if its fully costed gross margin is higher than your overhead rate. If your overhead runs 15% of revenue, a job that closed at 12% gross margin lost money, no matter what the job report says. Every job you bid below the overhead line is a job you are paying to do.

Benchmarks are a sanity check, not a target. Your own overhead rate, from your own books, is the number that matters.

How do you set up job costing in QuickBooks Online?

You set up job costing in QuickBooks Online with the Projects feature, which Intuit includes in QuickBooks Online Plus and Advanced. The setup that actually catches the leaks above takes seven steps:

  1. Create one project per job. Every estimate, invoice, bill, card charge, and timesheet gets tagged to it.
  2. Enter a fully burdened hourly cost rate for every field employee before the crew logs time. Intuit's help article on project labor costs is clear on the timing: cost rates only apply to time tracked after the rate is set, so earlier hours show no cost.
  3. Get time tracked to the project daily, through QuickBooks Time or another time app that syncs. Hours entered on Friday from memory are a guess.
  4. Code every material cost to the job, including supply-house runs on cards and stock pulled from the shop. Make "which job?" a required question at receipt capture.
  5. Charge equipment and trucks to jobs at an internal hourly or daily rate, so the job carries the cost of the iron it used.
  6. Write every change order up and invoice it, even when the customer approved it with a handshake on site.
  7. Run project profitability monthly, and know which labor number you are looking at. Projects can show labor two ways: hourly cost estimates, which appear right away, or actual payroll expenses, which appear only after payroll runs. Intuit notes the Project profitability report uses payroll expenses only, so if you track hourly costs alone, that report will not be accurate.

If your books were never set up this way, start with the jobs that are still open. Rebuilding closed jobs is foundation work worth doing only when you need history for bidding, a lender, or a sale.

What should you review on every open job each month?

You should review four numbers on every open job each month, before the job closes and the answer stops being useful:

  • Percent of budget spent versus percent complete. If 70% of the budget is gone and the job is 50% done, the margin is already fading, and you want to know now, not at closeout.
  • Hours to date versus estimated hours, by phase if you can.
  • Unbilled change orders, with a date for each invoice.
  • Costs committed but not yet billed to you, such as signed subcontracts and open purchase orders, so the job does not look healthy only because the bills have not arrived.

Those four numbers feed your work in progress schedule. Our guide to the WIP schedule a buyer actually trusts shows how the same job data drives over and underbilling, and our post on cash flow mistakes construction companies make covers why profitable contractors still run short of cash. A monthly close that finishes on time is what makes the review possible.

Where Thryve fits

Thryve Accounting & Advisory in McKinney, Texas sets up and runs job costing for contractors and trades as part of our contractor accounting work: burdened labor rates, project setup in QuickBooks, a monthly job review, and the WIP schedule that comes out of it. If the books were never set up for job costing, our QuickBooks foundation work gets them there, and bookkeeping and monthly accounting keeps them current after that.

We fit contractors doing roughly $1M to $50M in revenue who want to know which jobs actually make money. We are probably not the right pick if you need someone to run your estimating software or manage projects in the field; we work on the accounting side and the numbers it produces. We also do not answer tax questions; those go to your CPA, and we are glad to coordinate with them.

Know which jobs actually make money. Talk to us.

FAQ

What is a good labor burden rate for a contractor?

There is no single good labor burden rate, because burden depends on your benefits, your trade's workers' comp rates, your paid leave, and whether you are union. As a reference point, the Bureau of Labor Statistics found construction employers paid about 44 cents in benefits per dollar of wages in June 2026. A shop with no health plan may run well below that, and a union or high-risk trade above it. Calculate your own from a year of payroll and insurance costs divided by wages for hours worked on jobs.

Should overhead be allocated to individual jobs?

For pricing and job decisions, compare every job's fully costed gross margin to your overhead rate, because that comparison shows whether the job truly made money. Whether overhead is recorded inside job cost on your financial statements is a separate accounting policy decision, and the right answer depends on your reporting needs, your lender or surety, and the standards your statements follow. Decide that one with your accountant rather than changing your books based on a job report.

Can QuickBooks Online handle job costing for a contractor?

QuickBooks Online Plus and Advanced can handle job costing for many small and mid-sized contractors through Projects, burdened hourly cost rates, and a project profitability report. It works only if time and every cost are tagged to the job, and cost rates are entered before time is tracked. Contractors with many concurrent jobs, detailed cost codes, retainage, or certified payroll often outgrow it and add construction-specific software, so the right tool depends on your job count and complexity.

Related reading: WIP Schedules for Contractors: Are You Overbilled or Underbilled? and How to Price Jobs Using Your Own Job Costing Data.

Want personalized guidance?

This resource covers the fundamentals, but every business is different. Let's talk about yours.

Schedule a free consultation

Related reading

Keep going on construction