A business quotes a job at a 35 percent margin, delivers it on schedule with no overruns, and finds at year end that the margin was closer to 12. Nothing went wrong on the job. What went wrong is that the labor rate used to build the quote was the hourly wage, and the hourly wage is not what an hour of that person’s time costs.
That gap is the most common failure in job costing, and it is arithmetic rather than judgment. It is also fixable in an afternoon.
What is job costing?
Job costing is the practice of assigning cost to individual jobs, projects or contracts rather than pooling it by expense type, so each piece of work has its own revenue, its own cost and its own margin.
The alternative, process costing, spreads cost across everything produced in a period and works well where every unit is identical. Job costing exists for the opposite case: work that varies job to job, where the only way to know whether a piece of work made money is to track what it consumed. Construction, manufacturing to order, professional services, agencies, field service, fabrication and events all live here.
A working job cost system tracks four things per job:
- Direct labor, at a fully burdened rate rather than the wage
- Direct materials, relieved from inventory or coded on purchase to the job
- Subcontractors and outside services, coded to the job at the time of the bill
- Other direct costs, meaning equipment time, permits, travel, freight and anything else that exists only because the job exists
Overhead sits outside those four and is either left below the job margin line or allocated separately with a stated method. Mixing overhead into direct cost without saying so is how two people end up quoting the same job at different numbers.
The fully burdened labor rate, built in five layers
This is the part that decides whether a job cost system is worth having.
The Bureau of Labor Statistics measures what employers actually pay per hour worked. In its Employer Costs for Employee Compensation release for March 2026, published on 12 June 2026, total employer compensation costs for private industry workers averaged $46.60 per hour worked, of which wages and salaries were $32.60, or 69.9 percent, and benefits were $14.01, or 30.1 percent. Read the other way round, the average private employer’s hourly cost is roughly 43 percent above the wage before a single hour of downtime is counted. The full release is on the BLS Employer Costs for Employee Compensation page.
Here is how to build your own figure rather than borrowing that one.
- Base wage. The hourly rate, or annual salary divided by scheduled hours. Start here and never stop here.
- Legally required costs. The employer share of Social Security and Medicare, federal and state unemployment insurance, and workers’ compensation at your own experience-rated premium. Workers’ compensation varies enormously by trade and by carrier, so use your policy rather than an average.
- Benefits you actually pay. Health insurance employer contribution, retirement match, life and disability, and any allowances. Use last year’s actual cost per covered employee, not the plan brochure.
- Paid non-productive time. Holidays, vacation, sick leave and training are paid hours during which nothing is billable. This layer is invisible on a pay stub and material in the cost.
- Divide by BILLABLE hours, not paid hours. This is the step almost everyone skips. A full-time employee is paid for roughly 2,080 hours. After paid leave, training, drive time, shop time, meetings and the ordinary gaps between jobs, the hours that actually land on a job are far fewer. Dividing total annual cost by 2,080 produces a rate that undercharges every hour by the ratio of paid hours to billable hours.
Layers two, three and four raise the numerator. Layer five lowers the denominator. Both push the same direction, which is why the honest burdened rate is so much higher than the wage that people assume the calculation is wrong the first time they see it.
Run this once per role, not per person, and update it annually or whenever your insurance renews. Exact Partners builds these rate tables as part of setting up job costing, because a job cost report built on wage rates is worse than no report: it produces confident, specific, wrong numbers that people then quote from.
JOB COSTING
Is the rate you quote from the rate you actually pay?
exact_ builds the burdened rate table, sets up the job cost coding and closes the month so estimate-to-actual is a report rather than an argument. No new software needed to start.
Do not job cost everything
The standard advice is to cost every job. For most businesses that is wrong, and pretending otherwise is why so many job cost implementations die in month four.
Job costing has a real cost: someone codes time, someone codes materials, someone reviews the coding, and someone investigates variances. That effort is worth spending where the answer can change a decision. It is not worth spending on a two-hour call-out that will never be repeated and whose margin is set by a published price.
A workable rule has three tests. Cost a job in full if it is large enough that being wrong about it matters, if it is repeated often enough that what you learn improves future quotes, or if it is custom enough that no standard price protects you. Everything else gets a standard cost applied from the rate table and reviewed in aggregate each quarter.
The point of job costing is better decisions, not complete records. A system that captures 80 percent of the dollars with 30 percent of the effort survives, and a system that tries to capture everything gets abandoned and captures nothing.
Estimate to actual: the report that pays for the system
Job costing produces one report worth building everything else for: estimated versus actual, by cost category, per job, while the job is still open.
| Cost category | Estimated | Actual to date | What a variance usually means |
|---|---|---|---|
| Direct labor hours | From the estimate | From coded time | Scope creep, or an estimating assumption that is systematically off |
| Labor cost | Hours x burdened rate | Coded hours x rate | If hours match and cost does not, the rate table is stale |
| Materials | From the takeoff | Coded purchases | Waste, theft, price increases, or unbilled change orders |
| Subcontractors | From quotes | Coded bills | Scope handed to a sub that was priced as self-performed |
| Other direct | Allowance | Coded | Usually travel and freight, usually understated |
Two caveats on that table. First, it is only useful mid-job. A variance report on a finished job tells you what happened; the same report at 40 percent complete lets you do something about it. Second, a variance is a question rather than a verdict. Labor hours over estimate on a job that also has three approved change orders is not an overrun, it is a billing opportunity nobody actioned, which is a different problem with a different fix.
Where job costing lives, and where it goes wrong
Most failures are structural rather than technical, and there are four of them.
The chart of accounts never separated direct cost from overhead. One “Materials” account holding job materials and shop supplies makes every job margin wrong by an unknown amount. Direct and indirect have to be structurally different accounts, not a memo field.
The cost codes do not match the estimate. If the estimate is built in eight categories and the books record cost in three, estimate versus actual is not a comparison. The coding in the accounting system has to mirror the structure the estimate is built in.
Time is coded weekly from memory. A crew reconstructing a week of job codes on Friday afternoon produces plausible fiction. Daily capture, in whatever tool people will actually use, beats a better system nobody fills in.
Nobody owns the review. Job cost reports that are produced and not read are pure cost. Somebody has to look at open-job variances monthly and act, which in a growing business is usually the point at which an outsourced controller earns their keep.
The industry-specific versions of this build on the same four components. Contractors add a work in progress schedule and retainage on top, covered in our guide to construction bookkeeping. Multi-site operators face the same coding problem with the location as the unit, which is multi-location business accounting. The discipline does not change.
Frequently asked questions
What is the difference between job costing and process costing?
Job costing assigns cost to individual jobs that differ from one another. Process costing spreads cost across identical units produced in a period. Custom work uses job costing; continuous identical production uses process costing.
What should a labor burden rate include?
Base wage, the employer share of payroll taxes, unemployment insurance, workers’ compensation at your own premium, health and retirement contributions, and paid non-productive time, all divided by billable hours rather than paid hours. Two of those get missed most often. Workers’ compensation varies so widely by trade that an industry average is close to useless, so use your policy. And the billable-hours denominator is the single biggest driver of the final number, because it is the step that accounts for the paid hours that never reach a job. Build the rate per role, review it annually, and rebuild it whenever insurance renews or the benefit plan changes.
Should overhead be allocated to jobs?
Only if the allocation basis is defensible and stable, and only after direct cost per job is reliable. Many businesses get more value from a clean direct margin per job plus one overhead block than from a fully absorbed cost built on an allocation nobody trusts.
Do I need special software for job costing?
No, and buying it first is a common mistake. The account structure and the cost codes are the work, and a migration copies whatever structure you already have. Get one month closed cleanly on the new structure, then decide whether the volume justifies a dedicated system.
How often should job cost reports be reviewed?
Monthly for open jobs, and at closeout for completed ones. Anything less frequent turns the report into a post-mortem.
Talk to exact_ about setting up job costing →
About the author. This article was written by Dan Spada, CPA, at Exact Partners, a national outsourced accounting, fractional CFO and business tax firm founded in Buffalo, New York in 2021 and named No. 152 on the 2026 Inc. 5000 list of America’s fastest-growing private companies. Dan and the Exact team build job-level and unit-level cost reporting for businesses whose margin is decided one piece of work at a time. Learn more about Dan Spada and the Exact Partners team.
This article is general information, not accounting or tax advice for your business. Confirm your position with a qualified advisor.