Job Costing 101 for General Contractors: Why Your P&L Alone Isn't Enough
- Rebekah O'Brien
- Jul 25
- 3 min read
Two general contractors can post the same total revenue and the same total net income for the year, and one of them is actually making money while the other is bleeding out on a job they haven't noticed yet. The difference almost never shows up on the P&L. It shows up in job costing, and it's the single most common gap we find when we start working with a construction business for the first time.
What Job Costing Actually Means
Job costing is the practice of tracking cost, revenue, and profitability at the level of an individual job rather than the business as a whole. Instead of one number for material costs this month, you have material costs assigned to Job 114, Job 118, and Job 122 separately, alongside labor, subcontractor costs, equipment, and overhead allocated to each. Done properly, it answers a question your company-wide P&L can never answer on its own: which jobs are actually profitable, and which ones are quietly funded by the others.
Why a Healthy P&L Can Hide a Bad Job
A construction business can run five jobs at once, have four of them wildly profitable, and one of them losing money hand over fist, and the P&L will still show a healthy year. The losing job gets absorbed into the average and disappears from view. Without job-level costing, you won't know which project it was, why it went over, or whether the same mistake is happening again on a current job right now. By the time it shows up as a company-wide margin problem, it's too late to do anything about the job that caused it.
The Cost Categories You Need to Track Per Job
Real job costing breaks every project down into, at minimum, direct labor, subcontractor costs, materials, equipment costs, and allocated overhead. Each of these needs to be tracked against the original estimate for that specific job, not just recorded as a lump expense. The gap between estimated and actual cost, category by category, is what tells you whether you're bidding accurately, whether a particular sub is running over on every job, or whether one type of work is consistently eating more margin than it should.
How This Connects to Your WIP Schedule
Job costing and the WIP schedule aren't two separate systems, they're the same data viewed two ways. Job costing tells you what's actually being spent on a job in real time; the WIP schedule uses those numbers to tell you whether your billing is keeping pace with the work. If your job costing isn't accurate or current, your WIP schedule is built on bad numbers too, and every downstream decision, from progress billing to bonding capacity, inherits that error.
What Poor Job Costing Costs You
Without it, you're pricing your next bid off gut feel and last year's averages instead of what jobs like this one actually cost you to build. You're also blind to which subcontractors or crews are consistently profitable to work with and which ones erode margin every time. Most contractors we talk to before they start real job costing can tell you their total revenue for the year within a few percent. Almost none of them can tell you, with confidence, which of their last ten jobs actually made money.
Job-level costing is one of the first things we build out with every general contractor and construction business we work with, whatever size you're at, because it's the foundation everything else sits on: accurate bids, honest WIP schedules, and a real answer to whether you're actually making money doing this. If you're running your business off the total P&L and a gut feel for which jobs went well, that's exactly the gap we help close.
Comments