Common Job Costing Mistakes That Cost Contractors Money

Anna Berger

Founder & CEO

Job costing is the financial backbone of every construction project. When the numbers are accurate, contractors know which projects make money and where to adjust before margins disappear. When the numbers are wrong, the damage compounds across every bid, every staffing decision, and every billing cycle.

A Dodge Construction Network survey found that project margins erode by an average of 5% during construction, with nearly one third of specialty contractors losing 7% or more. For trade contractors operating on net margins of 5% to 8%, that erosion can turn a profitable project into a loss.

The mistakes that cause that erosion are rarely dramatic. More often, they are quiet accounting gaps that accumulate over weeks and months until the cost report no longer reflects reality. The most damaging patterns include:

  • Labor hours logged against the wrong cost codes, making individual line items unreliable while project totals still balance

  • Change orders captured in billing but never reflected in the job cost budget, creating margin calculations built on outdated baselines

  • Revenue recognized at the point of billing rather than collection, overstating profitability on projects where payment is months away

  • Estimates for new work built on assumptions rather than actual cost data from recent projects

Misallocating Labor Hours Across Cost Codes

Labor is the single largest variable cost on most construction projects, and misallocated labor hours are the most common source of job costing distortion. When hours land on the wrong cost code, one line item looks under budget while another looks over budget. The project total may still balance, but the cost code detail that drives management decisions is wrong.

Field Crews Selecting the Wrong Code

Cost code errors typically start in the field. A crew working on rough-in electrical may log hours under a general electrical code rather than the phase-specific code the estimator used to build the budget. The project manager sees the general code running over budget and the rough-in code showing almost no labor, with no way to tell whether the variance is real or a coding error without going back to the field.

On projects with dozens of active cost codes, the error rate climbs. When construction payroll processes hours coded incorrectly at the source, every downstream analysis, from earned value calculations to cost-to-complete forecasts, starts from a wrong baseline.

Burden Rates That Miss the Full Picture

Raw labor hours tell only part of the cost story. The fully burdened rate, including workers' compensation, payroll taxes, union benefits, and employer-paid insurance, is the number that belongs in the job cost ledger. Contractors who cost jobs using the base hourly rate understate labor cost on every project.

On prevailing wage work, the gap is larger. Certified payroll on Davis-Bacon projects requires specific fringe benefit calculations, and the burdened rate on a federally funded project can be 30% to 50% higher than the base wage. A cost report that does not reflect those obligations understates every labor hour on that project.

Failing to Track Change Orders Against the Budget

Approved change orders increase the contract value and generate additional billings. When those changes are captured in the billing system but not reflected in the job cost budget, the margin calculation tells a misleading story. Contractors managing multiple active projects with ongoing scope changes are particularly vulnerable to this drift.

Budget Baselines That Never Update

The original estimate becomes the job cost budget on day one. As the project progresses, change orders add scope and cost that should adjust that baseline. When the budget stays frozen at the original number while costs and billings reflect the expanded scope, the job cost report compares actuals against a baseline that no longer represents the real project.

A project that appears to be running at an 8% margin on the original scope may actually be at 12% once approved changes are factored in, or at 4% if the additional scope cost more to execute than the change order covered.

Unbilled Change Order Work

The Dodge Construction Network survey found that specialty contractors lose an average of 32% of potential revenue to unbilled or unpaid change orders. Work performed under a verbal approval that never becomes a formal change order is work the contractor may never collect on. When that cost hits the job cost ledger without a corresponding billing, the margin erodes with no obvious explanation on the cost report.

Booking Revenue Before Cash Arrives

Revenue recognition that outpaces actual collections is one of the most common distortions in construction job costing. A contractor submits a $200,000 pay application and records it as earned revenue. The cost report shows a healthy margin. But the payment has not arrived, may not arrive for 60 to 90 days, and could come in reduced if the GC disputes a portion of the billing.

The Gap Between Billed and Collected

Industry data shows that subcontractors wait an average of 96 days to receive payment, with only 5% consistently paid on time. When job cost accounting records revenue at the point of billing rather than collection, the cost report can show a project at a healthy margin while the contractor borrows against a line of credit to cover payroll on that same project.

A contractor with $1.5 million in outstanding receivables spread across ten projects may show strong margins on paper while the business is cash-negative because none of those billings have been collected.

Retainage That Disappears From the Margin

Retainage holdbacks, typically 5% to 10% of each progress payment, represent earned revenue the contractor cannot access until substantial completion. On a $2 million subcontract, retainage at 5% ties up $100,000 that does not appear in operating cash until months after the work is finished.

When retainage tracking is disconnected from job costing, the cost report may show the project as fully billed and earned while $100,000 sits in holdback. The accrual margin is accurate, but the cash margin tells a different story.

Using Stale Estimates to Price New Work

Job costing is not just a backward-looking exercise. Cost data from completed and active projects should inform every new bid. When contractors price new work using estimates that do not reflect what recent projects actually cost, the cycle of margin erosion repeats.

Labor Productivity That Does Not Match the Estimate

An estimator may price rough-in framing at 0.04 labor hours per square foot based on historical averages. Actual data from recent projects shows the crew averaging 0.055 hours per square foot. Every bid built on the lower number understates labor cost by roughly 37% on that line item.

Without accurate job cost data flowing back to the estimating team, the disconnect persists across every new project. Common signs that estimates are drifting from reality include:

  • Consistent gaps between bid margins and realized margins across multiple projects

  • Labor productivity assumptions that have not been updated with actual field data in more than a year

  • Material pricing based on supplier quotes that predate the most recent procurement cycle

Material and Equipment Costs That Drift

Material prices shift between the estimate and the purchase, and equipment costs on rental-heavy projects can drift from the original budget. When payroll and job cost reports do not capture these variances for the estimating team, future bids inherit the same pricing gaps. A closed feedback loop between project accounting and estimating is the difference between bids that hold margin and bids that erode it.

Build Job Cost Data You Can Trust

Job costing mistakes rarely announce themselves. Misallocated labor hours, frozen budgets, premature revenue recognition, and stale estimates each chip away at the margin in ways that only become visible when the final numbers do not match what the cost report predicted.

Trayd connects field data, payroll, and project accounting into a single job cost ledger. Labor hours flow from the field into the correct cost codes with the fully burdened rate applied. Change orders update the budget baseline as they are approved. Pay application status reflects what has actually been collected, not what has been invoiced, so the margin on every project is a number the contractor can act on.

Schedule a Demo

Frequently Asked Questions

What is job costing in construction?

Job costing is the process of tracking all costs, including labor, materials, equipment, and overhead, against individual projects and cost codes. Accurate job costing tells contractors whether each project is making money and where costs are running over or under budget.

What is the most common job costing mistake for contractors?

Misallocating labor hours across cost codes is the most frequent error. When field crews log time under the wrong cost code, the job cost report shows variances that do not reflect actual project performance, and every downstream decision is based on incorrect data.

How do change orders affect job costing accuracy?

Approved change orders increase the contract value and scope but must also update the job cost budget. When change orders are captured in billing but not reflected in the cost baseline, the margin calculation compares actual costs against a budget that no longer represents the real project.

Why does revenue recognition matter in construction job costing?

Recording revenue at the point of billing rather than collection can make a project appear more profitable than it actually is. Subcontractors wait an average of 96 days for payment, and during that gap, the cost report shows margin that has not been realized in cash.

How does retainage distort project profitability?

Retainage withholds 5% to 10% of each progress payment until the project reaches substantial completion. When retainage is not tracked alongside job costs, the cost report may show a project as fully earned while significant cash remains in holdback and unavailable for operations.

How should job cost data improve future estimates?

Actual labor productivity, material costs, and equipment expenses from completed projects should feed directly into the estimating process. Without that feedback loop, contractors bid new work using assumptions that may not reflect what recent projects actually cost, and the margin gap repeats.

About the Author

Anna Berger is the founder and CEO of Trayd, a construction payroll and compliance platform built for specialty contractors. Born into a construction family, Anna saw back office inefficiencies firsthand, and as a result, Trayd was developed to be the single back office operating system to manage people, payroll and the field. Trayd has raised $15M in venture funding from world-class investors like White Star Capital, Suffolk Technologies, Bloomberg Beta, and Y Combinator, and the team is based in New York City.

Anna Berger

Founder & CEO

More in this topic

Construction payroll and compliance.

Products
HR & People Management
Scheduling & Dispatch
Field & Labor Tracking
Payroll
Accounting
Solutions
Compliance
Job Costing
Job Profitability
Job Cost Accounting

Sign up for our product updates newsletter.

© 2026 Trayd Inc. All Rights Reserved.

Construction payroll and compliance.

Products
HR & People Management
Scheduling & Dispatch
Field & Labor Tracking
Payroll
Accounting
Solutions
Compliance
Job Costing
Job Profitability
Job Cost Accounting

Sign up for our product updates newsletter.

© 2026 Trayd Inc. All Rights Reserved.

Construction payroll and compliance.

Sign up for our product updates newsletter.

Download the App
Products
HR & People Management
Scheduling & Dispatch
Field & Labor Tracking
Payroll
Accounting
Solutions
Compliance
Job Costing
Job Profitability
Job Cost Accounting

© 2026 Trayd Inc. All Rights Reserved.