Skip to main content
JOB COSTINGCOST CODESPER-PROJECT TRACKINGLABOR BURDENCFOS $1M–$12MJOB COSTINGCOST CODESPER-PROJECT TRACKINGLABOR BURDENCFOS $1M–$12M
THE CONSTRUCTION CFOBOOK A FREE CALL
JOB COSTING · FINANCIAL SYSTEMS

CONSTRUCTION JOB COSTING EXPLAINED.

QUICK ANSWER

Job costing is tracking every dollar you spend on a specific project — labor, material, equipment, subcontractors, and direct job expenses — so you know exactly what that project cost to build. Without it, the P&L shows whether the company made money. With it, you know which of the six active projects made money and which ones lost it. Those are completely different levels of financial visibility.

Most subcontractors know they need job costing. Most have been told to get it set up. Most have tried and ended up with either nothing usable or a system so complex nobody touches it. The reason is that job costing has to be built to match how the work is actually done — the specific trades, phases, and cost types in your business. A generic chart of accounts does not produce useful job cost data. This page covers what job costing actually is, how to structure it, and what it looks like when it is working.

BY JOSH LUEBKERPublished: May 2026Updated: May 2026
WHAT JOB COSTING IS

TRACKING EVERY DOLLAR TO A SPECIFIC PROJECT.

THE DEFINITION

Every Dollar Has a Project Address

Job costing means every expense — every labor hour, every material purchase, every equipment charge, every subcontractor invoice — is coded to the specific project it belongs to before it hits the books. The result is a job cost report for each active project that shows what you estimated versus what you have actually spent, by cost category, as of the last reconciliation. That report is the difference between managing projects by gut feel and managing them with data.

WHAT GOOD JOB COSTING LOOKS LIKE

The PM Pulls It Up Without Calling Accounting

Ask your project manager: how much have we spent on labor for the rough-in phase as of last month, fully burdened — including payroll taxes, workers comp, and health insurance? If they open a screen and show you the number in 30 seconds, you have working job costing. If they say "I have to check with accounting" — you do not. That is not a technology problem. It is a structure problem. The system was either not set up correctly or the data is not being entered at the right level of detail.

THE SEVEN COST CATEGORIES

HOW EVERY PROJECT GETS BROKEN DOWN.

1. Material — by commodity type (concrete, PVC, wire, rebar). Miscellaneous line for items under $10K.
2. Subcontractor — by trade. Miscellaneous line for subs under $10K.
3. Equipment — owned equipment, rented equipment, trucks, fuel, fees. Each as its own subcategory.
4. Tools — small tools as a lump sum. Budget at 1% of total labor dollars. Specific tools over $10K get their own line.
5. Labor — by work type and phase. Always tracked in fully burdened dollars — base wage plus payroll taxes, workers comp, health insurance, 401k. Track hours and dollars both because burden rates vary by employee.
6. Direct Job Expense — superintendent time, foreman, PM, safety, job trailers, permits, legal. Costs required to execute this specific job that are not field production labor.
7. Other — contingency, bond, specialty insurance, project-specific financing.

The fully burdened labor rule: Never track labor at base wage only. A $28/hour carpenter costs $38–$44/hour fully burdened when you add payroll taxes (7.65%), workers comp (varies by trade, often 8–15%), health insurance, and 401k. Estimating at $28 and tracking at $28 hides the true cost. Estimating and tracking at the same fully burdened rate is the only way bid-to-actual comparison is meaningful.

THE THREE FAILURE MODES

WHY JOB COSTING BREAKS DOWN — AND HOW TO FIX EACH ONE.

FAILURE 01

Too Complex — 1,500 Line Items Nobody Can Read

Software implementation teams build job cost structures that cover every possible scenario. The result is a system so granular that project managers cannot find the right code, enter time to whatever looks close, and the data is useless. Fix: seven categories, subcategories by trade-specific types, phase breakdown for labor only on projects over 3 months. Simple enough that the PM can navigate it in 30 seconds.

FAILURE 02

Too Generic — Top-Level Categories Only

One code for all labor. One code for all material. The books are technically accurate but produce no actionable information. You know total labor was $187K — you do not know that underground labor was on budget and above-slab ran 22% over. Fix: minimum one subcategory per cost type that matches how you estimate the work.

FAILURE 03

Estimating and Job Costing Don't Match

The estimate has six labor phases. The job cost system has one labor code. You cannot compare bid to actual because they are in different languages. Fix: build the job cost code structure to mirror the estimate structure. The alignment meeting — estimator, PM, bookkeeper, CFO in one room mapping every estimate line to a cost code — is the session that makes the system work.

COMMON QUESTIONS

FREQUENTLY ASKED.

Level of detail depends on project size and duration. For a project under $100K under 30 days, top-level categories are sufficient. For a $500K project running 4 months, you need subcategories by material type and labor phase. For a $2M+ project running 6+ months, you need phase-level labor tracking (phase A vs phase B vs phase C) because a labor code that lumps everything together will not show you a phase overrun until the phase is 80% done. The rule: match the granularity to the project size and your ability to catch and correct problems in time to matter.
Yes — with proper setup. QuickBooks has a job/class tracking feature that allows costs to be coded to projects. The limitation is that QuickBooks does not produce a cost-to-complete report natively — you need to export and calculate it. ControlQore, Foundation, Sage, and other construction-specific platforms build the cost-to-complete into the system. The software matters less than the structure. Bad job cost codes produce bad data in any software.
The code structure can be built in one working session — typically 2–4 hours with the right person. The alignment meeting takes another 2 hours. The first full month of data running through the new structure takes one billing cycle to produce a usable cost-to-complete. CFOS builds the job cost structure during onboarding and produces the first cost-to-complete report within 60 days of engagement start.
Josh Luebker
Josh Luebker
Fractional CFO · The Construction CFO

Former commercial construction project manager and master electrician. Managed 150+ projects totaling $300M+. Now fractional CFO for commercial subcontractors doing $1M–$12M. About Josh →  |  LinkedIn →

RELATED RESOURCES
RELATED
WIP Schedule Explained
How the WIP schedule uses job cost data to show overbilling and underbilling
RELATED
Estimating and Finance Alignment
How to make your estimate and job cost structure speak the same language
RELATED
Why Jobs Look Profitable But Lose Money
The job costing gaps that create phantom profit and hidden losses
SYSTEM CONNECTIONS
CFOS SPINE
Run on CFOSJob Profitability SystemOperating Model
RELATED
WIP ScheduleEstimating AlignmentField to Finance Gap
SERVICE
Fractional CFOControllershipBook a Call

CAN YOUR PM PULL UP JOB COST IN 30 SECONDS?

If the answer is no — or if job costing does not exist yet — a 30-minute diagnostic will show you exactly what structure you need and how long it takes to build.

BOOK A FREE 30-MIN DIAGNOSTIC →

30 minutes. Free. No sales pressure.

OR SEE YOUR NUMBERS FIRST → FREE CEO REPORT TOOL
THE CONSTRUCTION CFO
Run on CFOSFractional CFOSchedule a CallJosh@ConstructionCFO.net
© 2026 SULPHUR PRAIRIE MANAGEMENT · SULPHUR ROCK, AR
0