If you price jobs off what you pay a tech per hour, you are underpricing. The number on the paycheck is not the cost of an hour of that person's time. The real number is burdened labor cost: wage plus the load, divided by the hours that actually land on tickets.
Work this worksheet once per role. Then put that rate into the job calculator as "labor cost per hour." Everything else in job costing is downstream of this.
This week: fill the table for your primary tech (or yourself). Divide annual cost by last month's job hours × 12, not by 2,080. If the rate is more than 1.7× wage, your billable hours — not your payroll taxes — are the problem.
Why the wage is a lie you tell yourself
An employee at $30/hour costs more than $30 because you also pay taxes, workers' comp, insurance, benefits, and every hour they are on the clock that is not a customer invoice. If you also divide that pile by 2,080 paid hours instead of job hours, you hide the second lie: you are paying for a lot of time the customer never buys.
Part 1 — annual cost of one tech
Use last year's actuals if you have them. The example is a $30/hour tech in a typical US plumbing/HVAC shop, 2,080 paid hours.
| Line | Math / note | Annual |
|---|---|---|
| Wages | $30 × 2,080 h | $62,400 |
| Employer FICA (Social Security + Medicare) | 7.65% of wages | $4,774 |
| FUTA / SUTA (unemployment) | shop-specific; use yours | $1,050 |
| Workers' compensation | ~8% of wages in many trades | $4,992 |
| General liability allocation | share of the policy | $2,400 |
| Health insurance (employer share) | or $0 if none | $6,000 |
| Retirement match | 3% of wages | $1,872 |
| Uniforms, training, tools you buy | $1,200 | |
| Total annual cost | $84,688 |
Replace every line with your numbers. If you have no benefits, the total still is not the wage — taxes and workers' comp alone often add 15–20%.
Part 2 — hours the customer actually buys
Do not divide by paid hours. Divide by hours that hit jobs (onsite + travel you assign to tickets).
| Hours | This example |
|---|---|
| Paid hours in a year | 2,080 |
| PTO + holidays + sick | − 144 |
| Shop, meetings, training, warranty with no invoice | − 160 |
| Idle / weather / parts runs not on a ticket | − 196 |
| Job hours (onsite + travel on tickets) | 1,580 |
If you only count wrench time and ignore drive, you will understate cost on every short call. Track travel on the ticket; include those hours in the 1,580.
The rate
$84,688 ÷ 1,580 job hours = $53.60 per hour. That is the floor for labor on a job — before materials, overhead, and profit.
Same tech, worse utilization: $84,688 ÷ 1,250 hours = $67.75/hour. The wage did not change. The calendar did. This is why "we need to stay busy" without measuring job hours makes the next hire more expensive, not cheaper.
The calculator default uses $45/hour as a conservative burdened rate (about 1.5× a $30 wage). If your worksheet says $54 or $68, use that. Using $45 when you are really at $68 makes every ticket look 8–12 points too fat.
Turn the rate into a price
Burdened cost is not the billed rate. To hold 50% margin on labor, billed labor needs to be about 2× burdened cost. At $54/hour cost, that is about $108/hour billed before materials and overhead. Charge $75 "because the guy down the road does" and you are selling hours at a loss once the load is honest.
For a 2-hour onsite + 0.7-hour drive job: labor cost is 2.7 × $54 = $146. Add materials, overhead, and target profit on top. That is the floor before anyone talks discount.
Owner-operators
If you are the tech, still pick a wage you would pay someone else to do your work, then burden it. Pricing your own hours at "zero because I already own the truck" is how owner-operators work 60-hour weeks and take home less than their lead tech would require.
Final takeaway
Calculate burdened rate once per role. Update it when you hire, add benefits, or billed hours fall. Use it on every quote and every costed job. It is the difference between a full calendar and a profitable one.
Frequently asked questions
What is burdened labor cost for contractors?
It is the true hourly cost of a tech: annual wages plus taxes, workers’ comp, benefits, and extras, divided by job hours (onsite + travel on tickets) — not by 2,080 paid hours.
Why is the wage on the paycheck not my real labor rate?
A $30/hour tech in the worksheet costs about $85k per year fully loaded. At 1,580 job hours that is about $54/hour. Pricing on $30 makes every job look more profitable than it is.
How do I use burdened rate when I quote a job?
Multiply onsite and travel hours by the burdened rate, then add materials, overhead, and target profit. That is the floor before you talk discount. Put the same rate in the job calculator.
Put this rate on a real ticket
Enter your burdened rate in the free calculator and cost yesterday’s last job. If you only know wage, use the 1.6× helper, then come back and replace it.