· Karson Lawrence · Operations · 7 min read
Job Costing 101: The Contractor's Guide to Knowing Your True Profit on Every Job
Most contractors think they're profitable until they actually run the numbers. Here's how to implement job costing that reveals the truth about every project you take on.

You finished the job. The customer paid. You made money, right?
Maybe. Maybe not.
After 15 years in the trades and consulting with hundreds of contractors, I can tell you that most contractors have no idea whether individual jobs are actually profitable. They look at their bank account at the end of the month. If there’s money there, they assume things are working.
That’s not job costing. That’s hoping.
The $50,000 Question Most Contractors Can’t Answer
Here’s a question I ask every contractor I work with:
“What was your gross profit percentage on your last ten jobs?”
The answers typically fall into three categories:
- Silence (they have no idea)
- “About 40%” (a guess based on nothing)
- “I’d have to check with my bookkeeper” (they’ll never actually check)
If you can’t answer this question within 30 seconds, you’re making business decisions in the dark. And in the trades, that darkness costs you real money.
What Job Costing Actually Is (And Isn’t)
Job costing is not:
- Looking at your P&L at the end of the month
- Checking if there’s money in the bank
- Assuming your bids are accurate because you’ve “been doing this for years”
Job costing is:
- Tracking every dollar of cost against every dollar of revenue for each individual job
- Knowing your actual gross profit (not estimated) on every project
- Having real data to improve your pricing, efficiency, and profitability
The difference between these two approaches is often the difference between a contractor who’s building wealth and one who’s just staying busy.
The Four Pillars of Contractor Job Costing
1. Direct Labor Costs
This is where most contractors start losing money without realizing it.
What to track:
- Actual hours worked (not estimated hours)
- Loaded labor cost (hourly rate + burden)
- Drive time and travel
- Callbacks and warranty work
The hidden killer: Most contractors bid jobs using their technician’s hourly wage. But your actual labor cost includes:
- Payroll taxes (7.65% minimum)
- Workers’ comp insurance (varies wildly by trade)
- Health insurance contributions
- Paid time off
- Training time
- Truck time between jobs
A tech who makes $30/hour might actually cost you $45-55/hour when fully loaded. If you’re bidding at $30, you’re losing money on labor before you even buy a part. This is why proper pricing strategy is so critical.
2. Direct Material Costs
What to track:
- Actual materials used (not estimated)
- Material markup achieved
- Returns and waste
- Inventory shrinkage
The common mistake: Bidding materials at cost-plus-markup but never checking if you actually achieved that markup.
I worked with a plumbing contractor who discovered his techs were using premium fittings on standard jobs because “they’re easier to work with.” True—but it was costing him $3,000/month in margin erosion.
3. Equipment and Subcontractor Costs
What to track:
- Equipment rental
- Subcontractor invoices
- Permits and fees
- Specialty tools
The trap: Eating small costs because “it’s not worth tracking.” Those $50 permit fees and $75 equipment rentals add up to thousands over a year.
4. Overhead Allocation
This is where job costing gets sophisticated—and where most contractors give up.
The question: How much of your rent, insurance, office staff, and truck payments should be allocated to each job?
The simple approach: Calculate your monthly overhead. Divide by the number of jobs you typically run. That’s your per-job overhead allocation.
The better approach: Allocate overhead based on labor hours. If a job takes twice as long, it should carry twice the overhead burden.
The Job Costing Process: Step by Step
Before the Job
- Create a job record with estimated costs in each category
- Set a budget for labor hours, materials, and any subs
- Document the scope so you know what “complete” looks like
During the Job
- Track time accurately (to the quarter hour, minimum)
- Record all materials pulled from inventory or purchased
- Note any scope changes and their cost implications
- Document issues that affect time or materials
After the Job
- Compile actual costs from timesheets, invoices, and material records
- Calculate gross profit (Revenue - Direct Costs)
- Compare to estimate and note variances
- Review with your team to understand what happened
Monthly Review
- Analyze trends across all completed jobs
- Identify patterns in profitable vs. unprofitable work
- Adjust pricing based on actual data
- Train on problem areas revealed by the numbers
The Technology Question
“Do I need software for this?”
Honest answer: You need something systematic, but it doesn’t have to be expensive. For a deeper dive on selecting the right tools, see our guide on technology adoption for contractors.
Options from simple to sophisticated:
- Spreadsheet - Free, flexible, requires discipline
- QuickBooks with job costing enabled - $30-80/month
- Trade-specific software (ServiceTitan, Housecall Pro, etc.) - $200-500+/month
- Full ERP system - $500+/month
The best system is the one you’ll actually use. A perfect spreadsheet you update daily beats expensive software that sits unused.
What Job Costing Reveals (That You Might Not Want to See)
When contractors start tracking job costs accurately, they typically discover:
The 20/80 Problem
About 20% of their job types generate 80% of their profit. The other 80% of jobs are breaking even or losing money.
Real example: An HVAC contractor discovered his residential service calls averaged 52% gross profit. His residential installs averaged 18%. He was taking install jobs to “stay busy” while losing money on each one.
The Customer Problem
Some customers are profitable. Others aren’t. Without job costing, you treat them all the same.
Real example: A plumber tracked job costs by customer for one quarter. His “best customer” (highest revenue) was actually his least profitable due to constant callbacks, slow payments, and scope creep on every job.
The Technician Problem
Not all techs are equally profitable. Some are fast and efficient. Others take twice as long and use more materials.
Real example: An electrical contractor found a $15,000/year profit difference between his most and least efficient journeymen doing the same work. That’s not a performance review—that’s a training opportunity (or a personnel decision).
The Pricing Problem
Your prices are probably wrong. Job costing tells you exactly how wrong and in which direction. Once you have the data, you can implement flat rate pricing or adjust your hourly rates with confidence.
Real example: A roofing contractor discovered he was underpriced on steep-pitch work by 25% and overpriced on flat commercial work by 15%. Adjusting prices based on actual cost data increased his annual gross profit by $80,000.
The Resistance You’ll Face
Let me be direct: implementing job costing will create friction.
From techs: “I don’t have time to fill out paperwork.” Response: “It takes 5 minutes per job. If you can’t find 5 minutes, we have a bigger problem than paperwork.”
From office staff: “This is too complicated.” Response: “It’s simpler than explaining to the owner why we’re not profitable.”
From yourself: “This is a lot of work for information I might not like.” Response: “The information exists whether you track it or not. The only question is whether you want to know.”
Getting Started This Week
You don’t need to implement a perfect system. You need to start.
This week:
- Pick your next five jobs
- Create a simple tracking sheet (labor hours, material cost, revenue)
- Fill it out for each job
- Calculate gross profit percentage
- Compare to what you expected
What you’ll learn: Whether your “gut feel” on profitability is accurate. For most contractors, it’s not even close.
The Bottom Line
Job costing isn’t about creating more paperwork. It’s about making better decisions.
Every contractor makes thousands of decisions each year about pricing, staffing, which jobs to take, and where to focus their time. Without job costing, those decisions are educated guesses at best.
With job costing, they’re informed choices based on real data.
The contractors who build real wealth—who actually take vacations, who have money in the bank, who could sell their business for real money—they all know their numbers. Not roughly. Exactly.
You can join them. It starts with tracking your first job.
Need help implementing job costing in your contracting business? Book a free 20-minute strategy call to discuss your specific situation.
Related Reading:


