Payroll Management for Home Service Businesses: The 5 Things That Kill Margin
Payroll runs 35-55% of revenue in labor-intensive trades. Five decisions, made consistently wrong, explain most of the margin damage. Here is what they are and how to fix each one.
Key takeaways
- A tech paid $30 per hour costs $40-$42 per hour fully loaded when you include payroll taxes, workers comp, health insurance, and vehicle cost
- A tech working 60 hours per week at time-and-a-half costs $555-$630 more per week than a 40-hour tech doing the same revenue; seasonal overtime is often more expensive than a part-time hire
- Classifying admin, dispatch, and owner salary as direct labor in COGS distorts gross margin; these are overhead costs and belong above the operating income line
Payroll is the largest single cost in a home service business, running 35-55% of revenue for labor-intensive trades, and most of the margin damage in a home service P&L traces back to five specific payroll decisions made consistently wrong. These are not accounting errors. They are operational habits: how you calculate labor cost, how you handle peak-season overtime, how you structure commission, how you classify workers, and how you categorize labor on the P&L. Each one has a direct, measurable effect on gross margin.
The contractors who understand their true labor cost make better pricing decisions, smarter hiring decisions, and more accurate job costing. The ones who only know the hourly rate are flying blind on their most important cost input.
The Fully Loaded Labor Rate
Most home service owners know what they pay their techs per hour. Few know what the tech actually costs per hour once all employment costs are included.
The fully loaded rate includes:
- Base wage ($30.00/hour in this example)
- Payroll taxes (FICA employer share 7.65%, FUTA ~0.6%, SUTA varies by state but budget 2-3%): adds $3.08-$3.38/hour
- Workers compensation insurance: rates vary by trade and state, but HVAC, plumbing, and electrical typically run $8-$14 per $100 of payroll; that is $2.40-$4.20/hour on a $30 base
- Health insurance (employer contribution): $150-$400/month per employee if you offer it, or $0.94-$2.50/hour on a 160-hour month
- Vehicle cost: if the company provides a vehicle, budget $600-$900/month all-in (insurance, fuel, maintenance, depreciation on a purchased vehicle or payment on a financed one), which is $3.75-$5.63/hour
Add it up:
- Base: $30.00
- Payroll taxes: $3.08-$3.38
- Workers comp: $2.40-$4.20
- Health insurance: $0.94-$2.50
- Vehicle: $3.75-$5.63
- Total: $40.17-$45.71/hour
A tech you believe costs $30 per hour actually costs $40-$46 per hour. That gap is not a rounding error: it is 33-53% of the base wage added on top. A business pricing jobs based on a $30 hourly cost assumption while the actual cost is $42 is systematically under-pricing every job.
The fully loaded rate is the number that should go into job costing. It is the number that should inform the floor on your pricebook rates. And it is the number that determines whether adding one more tech actually improves margin or just adds revenue with zero net profit. See job costing for contractors and how to calculate overhead and markup for the surrounding math.
Text Clint: "what is my total labor cost as a percentage of revenue this month, broken down by field vs. office?"
Overtime: When It Costs More Than Another Hire
Field service businesses with seasonal peaks (HVAC in summer, plumbing in winter, landscaping in spring) routinely let overtime balloon during peak months. The logic is: the work is here now, we need to capture it, we will figure out the cost later.
The cost calculation often does not get done. Here is the math on a $30/hour tech at 60 hours per week:
- Regular 40 hours: 40 × $30 = $1,200 base
- Overtime 20 hours at 1.5x: 20 × $45 = $900 premium
- Weekly labor base: $2,100
- Versus a 40-hour week: $1,200
- Overtime premium over a 40-hour week: $900/week
Add the fully loaded burden on all 60 hours (taxes, workers comp, health insurance, vehicle: call it $12/hour burden above base):
- Burdened cost at 60 hours: $2,100 + (60 × $12) = $2,820/week
- Versus one 40-hour tech at full burden: $1,200 + (40 × $12) = $1,680/week
The overtime cost for the additional 20 hours: $1,140 per week. That covers 26 hours of a second tech at the same hourly rate. For 20 hours of incremental work, the overtime option costs $1,140 more than a 26-hour part-time or seasonal hire doing the same hours.
The math holds consistently: once a tech exceeds 45-48 hours per week, adding a part-time seasonal tech is cheaper per labor hour than continuing overtime. The real barrier is the recruiting and onboarding cost of that hire. For a business with peak seasons, a roster of seasonal workers who return each year eliminates most of that cost. See when to hire the next technician for the broader decision.
Text Clint: "how many hours of overtime did each of my techs work last month, and what was the total overtime premium cost?"
Commission Structure That Aligns Incentives
Commission paid on revenue is the most common structure in home service and one of the most problematic.
When a tech earns a percentage of job revenue, the incentive is to maximize the invoice amount, not the customer's actual need. The result, documented repeatedly in HVAC and plumbing, is over-sold repairs and unnecessary add-ons. The short-term revenue gain is real. The long-term cost: negative reviews, customer churn, and the reputational damage that follows a service company known for upselling.
The alternative structures:
Commission on gross margin (not revenue): the tech earns a percentage of the gross margin on their jobs. If they sell a job well (right diagnosis, right parts, right price), the margin is strong and their commission is strong. If they discount unnecessarily or over-order parts, their margin is lower and so is their commission. This structure aligns the tech's incentive with the business's profitability rather than with raw invoice size.
Customer satisfaction threshold-gated commission: the tech earns standard commission when their job satisfaction score (Google review, post-job survey) is above a threshold (4.5/5 or above), and a lower rate when it falls below. This creates an explicit tie between how well the tech serves the customer and their earnings. High-performing techs consistently beat the threshold. Techs who upsell inappropriately and generate complaints fall below it.
Performance bonus above quota: flat base salary plus a bonus tied to revenue or gross margin above a monthly quota. The base removes the desperation dynamic that drives bad upselling. The bonus preserves upside for high performers. The quota is set at the expected output for the role so the business is not paying bonus on work that should be standard output.
The key principle: commission structures create the behavior they reward. If the structure rewards revenue regardless of margin or quality, the behavior follows. Design the incentive around the outcome you want. The full bonus design is in how to build a tech bonus plan.
Text Clint: "for each of my field techs, what is their average job ticket, their average gross margin per job, and their average post-job review score for the last 90 days?"
W-2 vs. 1099 Classification
Misclassifying employees as independent contractors is the most common regulatory exposure in home service. The IRS's test for employee vs. independent contractor comes down to control: if the business controls when, where, and how the worker does their job, the worker is an employee.
For most home service field techs:
- You set their schedule.
- You provide or specify their equipment and vehicle.
- You assign them to specific jobs.
- They represent your brand to the customer.
- They cannot work for your competitors on the same days.
All of these point to employee status, not independent contractor. Using 1099 for these workers creates:
- IRS liability for the employer's share of payroll taxes that should have been withheld (FICA, FUTA) plus penalties
- State labor board exposure for unpaid workers comp contributions
- Workers comp liability if an injured "1099" worker files a claim and the carrier denies it because the worker was misclassified
The cost of proper W-2 classification (described in the fully loaded labor rate section above) is roughly $10-$15/hour above base wage. The cost of an IRS misclassification audit is back taxes plus interest plus penalties, typically calculated on 3 years of improperly classified payroll. For a 5-tech shop paying $30/hour: 5 techs × 2,000 hours/year × 3 years × ($30 × 0.0765 employer FICA) = $69,000 in back taxes before penalties.
The 1099 structure is appropriate for genuinely independent contractors: a licensed electrician who runs their own business, sets their own rates, has multiple clients, and provides their own tools and vehicle. If that description does not fit the worker, the classification should be W-2.
Text Clint: "what is my current breakdown of field labor cost between W-2 employees and 1099 contractors this year?"
The COGS vs. Overhead Classification Error
This is the payroll error that produces the most misleading P&L. When admin, dispatch, and owner compensation are booked to cost of goods sold (COGS) instead of overhead, the gross margin looks worse than it is and the comparison to trade benchmarks becomes invalid.
Gross margin should only include direct costs: labor that physically performs the job, parts and materials installed in the job, subcontractors hired to complete specific job work. These costs vary directly with revenue; they exist because of the job.
Overhead includes: office staff, dispatch, sales, marketing, insurance, rent, utilities, owner compensation, and any admin functions that exist regardless of how many jobs run. These costs do not vary directly with revenue in the short term.
A common pattern in small home service shops: the owner pays themselves through payroll and books it to COGS because they sometimes do field work. The result is a gross margin that looks like 28% when the business is actually running 48% gross margin. When the owner takes a vacation and does not do field work for two weeks, the margin jumps. The number is telling a story about the owner's labor, not about the business's fundamental economics.
The fix: establish a market-rate for your field labor, book that rate to COGS (whether the owner or an employee does the work), and pay the owner through an owner's draw or officer compensation booked above the operating income line. The gross margin then reflects the true economics of the business independent of how the owner chooses to compensate themselves. See how to read a profit and loss for home service for the wider P&L cleanup.
Text Clint: "what is my gross margin for the last quarter, and can you break down what is in COGS versus overhead in my accounting data?"
How Clint Surfaces Payroll Cost Data
Clint connects to your accounting system (QuickBooks Online, Xero) and CRM to pull labor cost by category, overtime by tech, and COGS vs. overhead breakdown. You ask "what is my total labor cost as a percentage of revenue this month, broken down by field versus office?" and get the split from your actual transaction data.
Clint can also calculate the fully loaded cost per hour for each tech if the component costs (workers comp rate, vehicle cost, benefits) are recorded in your accounting system, and flag which techs are running overtime above a threshold you set.
The calculation does not require building a custom report. It is a question against your existing financial data.
Sources
- IRS worker classification guidance - W-2 vs. 1099 control test
- ServiceTitan 2025 AI in the Trades Report - technician compensation benchmarks and commission structure data
- Housecall Pro 2025 State of Home Services Report - labor cost as percentage of revenue by trade
- ACCA labor and compensation benchmarks - HVAC-specific burden rate data
- Levelset 2024 Contractor Financial Health Report - payroll cost benchmarks and cash flow patterns
- IRS Publication 15-A: Employer's Supplemental Tax Guide - payroll tax rates and employer obligations
Frequently Asked Questions
4 questions home service owners actually ask about this.
01How do I calculate workers comp rate for my fully loaded labor cost?
Get your workers comp rate from your insurance policy or ask your insurance agent. The rate is expressed as a cost per $100 of payroll and varies by classification code (HVAC tech, plumber, electrician, cleaner all have different codes). Multiply the rate by the tech's annual payroll divided by 100 to get the annual workers comp cost, then divide by the number of work hours in the year to get the per-hour cost.
02Is it ever appropriate to keep 1099 contractors for overflow or seasonal work?
Yes, for genuinely independent workers who meet the IRS criteria: they set their own rates, work for multiple clients, use their own tools and vehicle, and are not under your behavioral control. A licensed HVAC tech who owns their own business and picks up overflow jobs from you at a fixed rate per job can legitimately be 1099. The test is behavior, not the label on the form.
03How should I handle the owner's compensation in job costing if I do field work?
Use a market rate for the field work portion. If comparable HVAC techs in your market earn $30/hour, book $30/hour of your time to COGS when you are doing field work. Pay yourself the remainder through an owner's draw or officer compensation above the gross margin line. This separates your role as labor from your role as business owner and makes the gross margin accurate.
04My gross margin looks low but I think it is because of how my bookkeeper categorizes costs. Where do I start?
Run the P&L for the last 12 months and list every item in COGS. Ask: does this cost exist because of a specific job? If yes, it belongs in COGS. If it would still exist even if you ran 20% fewer jobs this month, it belongs in overhead. Common COGS items that should be overhead: office manager salary, dispatch software subscription, owner vehicle if it is not a field vehicle, owner health insurance.
See Clint in action
Clint is the pre-built AI for home service shops. Connect your CRM, email, and phone system in minutes and the agents run on your real data.