TaskTag Blog | Ideas and Tips for Construction Project Management

Construction Job Costing: How to Track Profit Per Project (2026)

Written by Mak Pastrana | May 7, 2026 5:55:07 AM


Most contractors know how much money came in last year. Very few know which jobs actually made money. FMI's 2024 survey found contractors who track job costs earn 2.3x higher net margins — not because they work harder, but because they know where they're losing money and fix it.

Key Takeaways

The 5 Cost Categories Every Contractor Must Track

1. Direct Labor

Track hours per crew member per phase, with burden rate applied (28–35% above base wage).

Fully Loaded Labor = Hourly Wage × (1 + Burden Rate) × Hours Worked

Example:

Carpenter at $32/hr × 1.32 burden × 48 hours = $2,027 actual

vs. $1,536 estimated (40 hrs) → $491 over, 32% labor overrun

2. Materials

Code every receipt to the job and phase at point of purchase — not at month-end. Track waste percentage vs. estimated waste.

3. Subcontractors

Track original subcontract amount, approved change orders, and invoices paid. Every verbal addition is a change order — document it. See our construction change order template.

4. Equipment and Tools

Owned equipment is not free. Calculate an internal rate: depreciation + fuel + maintenance + insurance ÷ annual billable days.

$35,000 truck ÷ 5 years + $4,800 insurance + $3,600 fuel + $1,200 maintenance

= $16,600/year ÷ 240 days = $69/day internal charge rate

5. Job Overhead (Indirect Costs)

Permits, dumpsters, temp utilities, supervision time, inspections. Frequently missing from job cost tracking — and from estimates.

The Job Cost Variance Formula

Variance ($) = Actual Cost − Estimated Cost

Variance (%) = (Actual − Estimated) ÷ Estimated × 100

Actual Gross Profit = Contract Price − Total Actual Cost

Profit Variance = Actual GP − Estimated GP

Example: $48,000 bathroom remodel estimated at $33,600 (30% GM) that runs $36,900 actual = $11,100 actual GP (23.1%) — $3,300 less than expected. Job costing tells you exactly which category caused it.

Copy-Ready Job Cost Tracking Template

JOB COST SHEET

Project: ________________________________

Contract Value: $_________________________

Start: _______________ End: ____________

════════════════════════════════════════════

CATEGORY ESTIMATED ACTUAL VARIANCE $ VAR %

═════════════════════════════════════════════

DIRECT LABOR

Demo / Site Prep $______ $______ $______ ____%

Framing $______ $______ $______ ____%

Rough MEP $______ $______ $______ ____%

Drywall $______ $______ $______ ____%

Finish Carpentry $______ $______ $______ ____%

Paint $______ $______ $______ ____%

Flooring $______ $______ $______ ____%

Punch / Cleanup $______ $______ $______ ____%

LABOR TOTAL $______ $______ $______ ____%

MATERIALS

Lumber / Framing $______ $______ $______ ____%

Drywall $______ $______ $______ ____%

Tile / Flooring $______ $______ $______ ____%

Cabinets $______ $______ $______ ____%

Fixtures $______ $______ $______ ____%

Misc $______ $______ $______ ____%

MATERIALS TOTAL $______ $______ $______ ____%

SUBCONTRACTORS

Electrical $______ $______ $______ ____%

Plumbing $______ $______ $______ ____%

HVAC $______ $______ $______ ____%

SUBS TOTAL $______ $______ $______ ____%

EQUIPMENT

Rental $______ $______ $______ ____%

Owned (internal) $______ $______ $______ ____%

EQUIPMENT TOTAL $______ $______ $______ ____%

JOB OVERHEAD

Permits / Insp $______ $______ $______ ____%

Dumpster $______ $______ $______ ____%

Supervision $______ $______ $______ ____%

JOB OH TOTAL $______ $______ $______ ____%

══════════════════════════════════════════════════════════════

TOTAL COSTS $______ $______ $______ ____%

CONTRACT VALUE: $______________________

ESTIMATED GROSS PROFIT: $______ ( ___% )

ACTUAL GROSS PROFIT: $______ ( ___% )

PROFIT VARIANCE: $______ ( ___% )

══════════════════════════════════════════════════════════════

LESSONS FOR NEXT ESTIMATE:

  1. ___________________________________________________
  1. ___________________________________________________
  1. ___________________________________________________

Weekly Job Costing Workflow

Daily: Crew logs hours by phase; receipts coded and submitted same day; sub invoices logged.

Weekly: Compare hours-to-date vs. estimated hours-to-date by phase. Flag any category running 10%+ over — investigate before it compounds.

At closeout: Finalize all costs → calculate variance by category → write 3 lessons → update estimating unit costs.

30–45 minutes/week per active project. That's the whole system.

Relevant Article:Avoid Costly Jobsite Mistakes with a Construction Documentation App

Connecting Job Costing to Your Other Documents

  • Estimate + SOW → defines the cost baseline → how to estimate construction costs + construction scope of work template
  • Change orders → update estimated cost and contract value simultaneously → construction change order template
  • Invoices / draws → draw schedule should match cost incurred → contractor invoice template
  • Schedule → slippage drives labor overruns; a 2-week slip at $4,500/week = $9,000 variance → construction project schedule

Sources: FMI/Autodesk Construction Disconnected 2024 · CFMA Benchmarker 2024 · NAHB Cost of Construction Survey 2025