
A how-to-guide for calculating accurate labor costs across your business.


Today, the hero of our story will be Larry, the new CFO at T-Rex Roofing, a fictional commercial roofing contractor based in Dallas.
Ever since Larry joined 9 months ago, T-Rex Roofing has been on a tear. It’s winning new jobs at a breakneck pace and completing most of them with a healthy gross margin. The owners are thrilled: T-Rex is on track to becoming the leading roofer in Texas, leaving its competitors in the dust.
But Larry is puzzled. Despite the growth of the business, T-Rex Roofing’s operating income is flat, leaving the business with little capital to continue growing.
The root cause of Larry’s woes is simple: his estimates, bids, and job cost reports are based on unburdened labor costs instead of fully-burdened labor costs. This means that Larry is systematically underestimating T-Rex Roofing’s true labor costs, leading to bids that are too low and gross margin estimates that are too high.
What Larry’s missing is the construction labor burden: the employer costs that stack on top of an hourly wage, from payroll taxes and workers’ comp to benefits. When labor burden isn’t built into job costing, every estimate runs short, every bid comes in too low, and profits get eaten before the job closes. This guide walks through what the labor burden is, what’s included, and how to calculate it so you can avoid job costing mistakes and bid with numbers that hold up.
Labor burden refers to the indirect costs of employing a worker: payroll taxes, workers’ comp, health and life insurance, paid time off (PTO), and benefits. Fully-burdened labor costs are the total of direct costs (like wages) and indirect costs (the labor burden).
Larry isn’t using the right numbers. If he calculated fully-burdened labor costs, he’d see what T-Rex spends on labor beyond base wages and the total costs for each job. With accurate numbers, his bids stop coming in too low, and project margins stop disappearing between the estimate and the closeout.
Realistic margin tracking requires contractors to calculate every dollar they spend on a project, including fully burdened labor costs. With a better understanding of which jobs are most profitable, Larry will know which to bid on and how many workers he can afford to hire for each project.
Larry is committing one of the cardinal sins of job costing: he uses direct or unburdened labor costs instead of fully-burdened labor costs.
Unburdened labor costs refer to an employee’s direct, gross pay. If an employee’s hourly rate is $25/hour, their unburdened hourly labor cost is $25/hour.
Fully-burdened labor costs include direct costs (wages) and any indirect costs related to employment (labor burden). These are a mix of employer-paid expenses connected to labor, such as taxes, insurance, and benefits.
Exact calculations depend on company policies and state requirements, but common categories include:
Unburdened labor costs are useful for generating quick payroll reconciliations and raw labor spend analysis, but fully-burdened figures are essential for accurate job costing and margin analysis. According to Bureau of Labor Statistics benchmarks, relying on unburdened costs underestimates labor expenses by roughly 30%, leading to artificially competitive bids and cash flow deficits.
To calculate fully-burdened labor costs, add up total indirect labor costs and total direct wages. Then, use this formula to find the labor burden rate:
Labor burden rate = Total indirect labor costs ÷ Total direct wages x 100
Once you have a burden rate for an employee or classification, you can use it for quick fully-burdened estimates. Multiply the base wage by the burden rate and add it back to get an approximate fully-burdened cost. That’s useful for fast bid math, but exact fully-burdened labor costs pulled from actual payroll data are always more accurate, especially on long-running jobs where comp rates, benefits enrollment, or PTO accruals shift mid-project. In construction, burden rates generally land between 25-40% of base wages. Rates well above that aren’t necessarily a problem – workers’ comp premiums on high-risk trades, mandated prevailing wage fringes, and union benefits all push burden up – but they’re worth a closer look to confirm the numbers line up with what you expect.
Let’s see how Larry should calculate the costs for Mario, an installer at T-Rex Roofing. Mario’s base wage is $30 per hour.
Instead of guessing at each indirect labor cost, Larry pulls payroll data from the previous quarter and converts those expenses into an hourly rate. For flat monthly fees like health insurance and annual expenses like safety training, Larry divides the total realized company cost by the total hours Mario was paid for to determine hourly contributions:
These calculations bring the total indirect labor burden costs to $9.00 per hour. Now, Larry can apply the formula for burden rates:
$9.00 ÷ $30.00 = 0.30 (30%)
To find the fully-burdened labor rate (the dollar amount), he should add the base wage and the labor burden together:
$30.00 + $9.00 = $39.00
While Mario earns $30 per hour, the actual cost to the business is $39 per hour. That 30% difference is what Larry was missing in his estimates. Across a 1,000-hour job, that creates a $9,000 gap between estimated and actual labor costs.
Most contractors aren’t running these numbers employee by employee. Calculate burden rates by trade classification, like roofers, laborers, foremen, equipment operators, and apply those rates across all workers in each category for easier estimates.
Note that most contractors update these rates quarterly or at the start of each fiscal year. Estimated burden rates don’t need to be perfect — they just need to be close enough to reflect reality.
Be sure to keep classifications separate rather than blending them into a single company-wide rate: a roofing installer and a project foreman carry different workers’ comp rates, different overtime patterns, and sometimes different benefits packages, and averaging them together will skew bids.
The challenge with doing this manually is that the inputs keep changing:
Job costing software built for construction handles this automatically by connecting time tracking and payroll to attribute labor costs to the correct job and classification as payroll is processed. Burden figures reflect actual, realized numbers from each run, not quarterly or annual estimates that go stale between updates.
Even finance leaders who understand the basic concept of labor burden can make mistakes. Here are common errors to look out for:
Labor burden math is only useful if the numbers going into it are accurate — and keeping those numbers current manually is exactly the kind of work that slips when jobs get busy. When workers’ comp premiums change, benefits costs shift, or a worker moves between classifications mid-job, estimates drift. Those changes need to flow into your burden rates.
Miter connects time tracking, payroll, and benefits in one place so the inputs to your burden calculations always reflect what you’re actually paying.
Where Miter goes further is in the fully burdened cost data it produces. By syncing directly with your ERP, Miter generates actual fully burdened labor costs from real payroll data, rather than estimates you’ve built.
And it doesn’t stop at the company level. Those costs are tied to specific jobs, phases, and classifications, so you can see exactly what labor actually cost on each project, and learn whether a job was profitable and how to price the next one.






