
October 23, 2026 · Mitt Patel · 5 min read
You have a sense of who your best technician is. Maybe it's the one who never complains, or the one who's been with you the longest. But if you pulled up your books right now, could you prove it with numbers? For most owners, the answer is no, because the books only show one number: total revenue for the company.
Why this happens and what it costs you
Most heating and cooling businesses track revenue the way their invoicing software defaults to tracking it: by job, by customer, or by month. Technician name might be in there somewhere, but it isn't tagged in a way that lets you add it up and compare.
So when it's time to decide who gets a raise, who gets more calls routed to them, or who needs coaching, you're going on impressions. Impressions are shaped by who's friendliest, who's been around longest, or who happened to land a few big jobs last month. They're not shaped by who actually turns an hour of labor into revenue, and who turns that revenue into margin after parts and drive time.
This matters because technicians vary a lot in how they work. One might close add-on sales during a maintenance call. Another might take twice as long on the same repair. Without per-technician numbers, you can't tell the difference between a technician who's slow and a technician who's thorough and upselling. You end up paying bonuses or giving praise based on guesswork, and you miss the coaching conversations that would actually move the needle.
A worked example
Say you have two technicians, Dave and Luis. In March, Dave worked 160 hours and generated $24,000 in invoiced revenue. Luis also worked 160 hours and generated $16,000 in invoiced revenue.
On the surface, Dave looks like the better earner. Revenue per hour for Dave is $150. For Luis, it's $100. That's a real gap, and it's worth asking why.
But say you also track parts cost by technician. Dave's jobs used $9,000 in parts and materials, while Luis's jobs used $3,000. Subtract parts from revenue and you get gross margin dollars: Dave produced $15,000 in margin, Luis produced $13,000 in margin. Divide by hours worked and Dave's margin per hour is $93.75; Luis's is $81.88.
The gap is still there, but it's much smaller than the raw revenue numbers suggested. Maybe Dave is doing bigger install jobs with more material cost built in, and Luis is doing smaller service calls that happen to run leaner. Neither number alone tells you who to coach or how. But together, they tell you where to start asking questions, instead of relying on which name you remember hearing more often.
How to set it up
- Add a technician field to every invoice. In QuickBooks Online, this can be a custom field on sales forms, or a class or location tag if you want to run reports by technician later. Pick one method and use it consistently.
- Tag labor hours the same way. If you track hours in a separate system for payroll, make sure technician name and hours worked flow into a place you can match against invoiced revenue. This might mean a simple spreadsheet that pulls from your scheduling or payroll tool.
- Separate parts and materials cost by job. If your point-of-sale or invoicing system lets you tag cost of goods to the technician who used them, turn that on. If not, you may need to estimate it from job tickets.
- Build one monthly report that lines up three numbers per technician: hours worked, revenue invoiced, and parts/materials cost. From there you can calculate revenue per hour and margin per hour for each person.
- Review it at the same time every month, ideally when you're already looking at overall company numbers, so you can see how individual performance rolls up into the whole.
Whether class tracking, location tracking, or a custom field works best in QuickBooks Online depends on how your business is set up and what other reports you rely on. This is worth working through with whoever manages your books, since the wrong setup can create reporting headaches later.
Mistakes that undo it
- Tagging invoices but not labor hours. Revenue without hours worked just tells you who sold the most, not who used their time best.
- Ignoring parts and materials cost. A technician with high revenue but also high material cost may not be your most profitable earner.
- Letting the tag field go unused on some invoices. If office staff sometimes skip the technician field because they're rushed, your report will have gaps that make the numbers unreliable.
- Comparing technicians doing very different work. A technician who mostly does new installs will have different revenue and margin patterns than one who does small repairs. Compare similar roles, or account for the difference before drawing conclusions.
- Treating one bad month as the full picture. A single slow week from a vacation or a run of warranty calls can skew the numbers. Look at a few months before making pay or coaching decisions.
Monthly checklist
- Confirm every invoice from the past month has a technician tag.
- Confirm labor hours per technician are recorded and match payroll.
- Pull parts and materials cost by technician, even if it's an estimate.
- Calculate revenue per hour and margin per hour for each technician.
- Compare this month's numbers to the prior two or three months, not just one month alone.
- Note any technician whose numbers moved sharply, and ask why before assuming it's a performance issue.
Common questions
Do I need special software to track this?
Not necessarily. QuickBooks Online can handle this with custom fields, classes, or location tracking, depending on how your business is structured. Some shops also use a separate scheduling or dispatch tool and bring that data into a spreadsheet alongside QuickBooks reports.
What if my technicians work on the same job together?
You'll need a way to split hours and, if possible, revenue between them. Some owners split evenly, others assign based on who did the lead work. Pick one method and apply it consistently so your comparisons stay fair over time.
Should I tie pay directly to revenue per hour?
That depends on your business and how you structure compensation already. Revenue and margin per technician are useful for coaching and for spotting patterns, but turning them into a pay formula is a bigger decision that's worth thinking through carefully, since it can change how technicians behave on calls.
How far back should I look before I trust the numbers?
A single month can be thrown off by vacations, slow weeks, or one big install. Most owners get a clearer picture looking at three to six months of data before drawing conclusions about any one technician.
North Hudson Bookkeeping sets up technician-level tracking inside QuickBooks Online and keeps it current every month, so the numbers are ready when you need to make a coaching or pay decision. The first call is free.
