LearnRunning the Business
Running the Business

Job Costing

Job costing means tracking what one specific job cost you: the labor hours, the materials, the subs, the permits, and a fair share of overhead, all charged to that job and nothing else. Subtract it from what you billed and you know what the job made. Most shops know their revenue to the dollar and their per-job profit not at all. They know the year was decent. They cannot tell you which jobs carried it and which ones quietly ate the margin.

Why Job Costing Matters to an Owner

Without job costing, pricing is guesswork with a markup on top. You bid the next kitchen like the last kitchen, and if the last kitchen lost money you never found out, so you bid the loss again. It also hides which crews, which job types, and which customers make you money. A $25,000 job at 32% gross margin beats a $60,000 job at 9%, but on the top line the second one looks like the win. Owners who start costing jobs usually find the spread between their best and worst jobs is far wider than they believed, and that a small set of job types produces most of the profit.

Formula

Job gross profit = contract price − (direct labor incl. burden + materials + subcontractors + equipment + permits). Job margin % = job gross profit ÷ contract price.

Benchmark

Residential remodeling typically targets 30-40% gross margin per job; HVAC replacement 35-45%; roofing 30-40%; commercial landscaping maintenance contracts 45-55%. If you cannot produce a per-job margin at all, that is the finding.

Tools for Measurement

A cost-code list short enough that crews actually use it (5-10 codes)Time tracking that charges hours to a job, not just to payrollA monthly job-close review comparing estimated cost to actual cost on every completed job

An Operator's Take

When we map a business, job costing is usually half-built. Materials get charged to jobs because the supplier invoice forces it. Labor mostly does not, because timesheets live in one system, jobs in another, and nobody wants to be the person who makes the crews code their hours. So the number everyone trusts is missing its biggest input. The fix is rarely more software. It is deciding on a short list of cost codes, five to ten, and making the time entry so easy a foreman does it from the truck. One remodeler we looked at believed additions were the moneymaker. Costed properly, additions ran 11% and the small bathroom jobs everyone groaned about ran 38%.

Dealing with this at your company?

Get a free diagnostic — no pitch deck, just an honest assessment of where you stand.

Trusted by teams atZoomInfo·BatchService·A Cloud Guru

Common Mistakes

What I see go wrong most often in the field.

Leaving labor burden out. Wages are not the cost of labor. Payroll taxes, workers' comp, insurance, and paid downtime add 25-40% on top, and leaving them out makes every job look better than it was.

Costing only the big jobs. Small jobs are where margin leaks hide, because nobody watches them and the fixed cost of mobilizing a crew is the same.

Building a 40-code system nobody uses. If the field has to pick from 40 cost codes on a phone, they will pick the first one. Accuracy comes from fewer codes, not more.

Reviewing job costs once a year at tax time. By then the bad bids have been repeated all season. Job costing pays for itself when it changes the next estimate, which means reviewing jobs as they close.

Treating warranty and callback work as free. Rework charged to overhead instead of the original job hides which crews and job types generate the callbacks.

What to Do This Week

Concrete steps you can take right now.

1

Pick your last ten completed jobs and cost them backward from invoices, payroll, and supplier statements. It will take a day and it will change how you bid.

2

Set a burdened labor rate per crew member: wages plus taxes, comp, insurance, and benefits, divided by billable hours. Use that rate in every estimate from now on.

3

Cut your cost codes to ten or fewer and put time entry on the crew's phones.

4

Add a fifteen-minute job-close step: estimated versus actual, and one sentence on why they differed.

5

Rank your job types by margin, not by revenue. Then look hard at whether you want more of what you have been chasing.

Related Resources

Frequently Asked Questions

What is job costing in simple terms?

Job costing is keeping score on one job at a time. Every hour of labor, every material purchase, every sub invoice, and a fair share of overhead gets charged to the specific job it belongs to. When the job closes, you compare the total to what you billed. The result tells you what that job made or lost, which is information a P&L for the whole company can never give you.

Why do contractors struggle with job costing?

Almost always because labor hours never make it onto the job. Materials get costed because supplier invoices force it, but timesheets live in payroll, jobs live somewhere else, and connecting the two takes a system nobody set up. The result is job costs missing their largest single input. The businesses that solve it keep the cost-code list short and make time entry something a crew can do from a phone in under a minute.

What should be included in a job cost?

Direct labor at a burdened rate (wages plus payroll taxes, workers' comp, insurance, and benefits), materials, subcontractors, equipment charges, permits and fees, and an allocation of overhead if you price against fully loaded costs. The most common omission is labor burden, which understates the true cost of every hour by 25-40% and flatters every job.

How accurate does job costing need to be?

Accurate enough to change your next bid, and no more. A shop that gets 90% of labor hours coded to the right job with ten cost codes will out-decide a shop chasing perfect data with forty codes and half the hours missing. Start rough, review jobs as they close, and tighten the places where estimates and actuals keep disagreeing.

Preston Zeller

Operations & Systems Consultant

16+ years leading operations and growth, including through a $2B exit and an IPO. I untangle the software and processes companies accumulate over time and rebuild them into systems teams can run.

Need Help With Running the Business?

Most established companies are paying for operational debt they can't see. Let's figure out what it's costing you.

16+ years leading companies · Senior-level, not junior staff · Fixed-fee or embedded engagements