63% of contractors cannot accurately state their profit margin on completed jobs, according to a 2023 Construction Industry Survey by MyQuoteIQ. That is not because they are bad at business. It is because they are tracking revenue instead of profit.
You can invoice $15K on a job and lose money on it. If you are not cross-referencing invoice totals, actual labor hours, burdened labor rates, materials, and drive time on every job, you have no idea whether your business is working.
Why your most "productive" tech might be your biggest liability
Here is a scenario seen across dozens of contractor accounts: your highest-volume tech is constantly busy, invoicing more than anyone else on the team. He has the highest callback rate, the longest average drive time per job, and uses 15% more materials than the next tech. His real margin is 19%.
Your quieter tech - the one who does fewer jobs - runs at 42%. Who do you dispatch first when a $3,000 job comes in?
This is not a hypothetical. This is the exact output the Job Costing and Profit Tracker by Tech automation produces. We built a step-by-step recipe for this that cross-references your invoices, timecards, and material costs weekly and ranks every technician by true margin - not just revenue.
What does "true margin" actually mean by technician?
Most job costing setups only subtract direct material costs from invoice revenue. That gives you a number that feels good and means almost nothing.
True margin requires subtracting the technician's burdened labor rate (not their hourly wage), drive time treated as billable hours consumed, material receipts tied to that specific job, and a proportional overhead allocation. The Construction Financial Management Association (CFMA, 2025) found that nearly 35% of contractors miscalculate profit targets because they use base wages instead of actual loaded labor costs. A tech earning $25/hr costs you $40-$55/hr when you add employer taxes, insurance, benefits, and overhead.
The Home Service Business Institute (HSBI, 2025) adds another layer: field technicians bill only 58% to 65% of their total working hours. In a 2,080-hour work year, that is roughly 1,200 to 1,350 billable hours. Every hour of drive time, admin, and shop time eats into that number - and it varies significantly by tech.
The gap between what contractors think they make and what they actually make
The average contractor thinks they are running 35-40% profit margins, according to MyQuoteIQ's 2023 industry data. Once systematic job costing is applied, the real number lands at 15-22%. That 15-20 point gap is not rounding error. It is the difference between building a business and slowly liquidating one.
The 2024 ACCA Financial Benchmarking Study puts it in hard numbers: the median net profit margin for HVAC contractors is 5.8%. The top quartile averages 13.2%. That 7-point gap does not come from the top-quartile contractors working harder - it comes from them knowing which jobs, which service types, and which technicians are actually making them money.
Rodriguez HVAC is a documented example from BuildFolio (January 2026). When they started tracking job costs, they discovered service calls generated 45% margins versus 22% on replacements. That single data point changed their entire dispatch and marketing strategy.
What callbacks are quietly costing you every year
Callbacks are where margin goes to die, and callback rates vary dramatically by technician. If a callback takes 3 hours including drive time, that is 3 hours a tech could have spent generating $400-$600 on a billable call. Industry data from CEO Finance Academy (April 2026) puts the average cost of a callback at $350 per trip when you account for labor, fuel, and opportunity cost.
On 1,000 jobs per year with a 1-2% callback rate, that is $35,000 to $70,000 in lost margin annually. That margin shows up nowhere on your P&L because it was never invoiced. It simply vanishes.
Until you track callbacks by technician, you cannot identify which techs are generating them or what it is costing you. This is also why reducing technician turnover matters financially beyond just recruiting costs - experienced techs with low callback rates are worth dramatically more than their invoice totals suggest.
Why QuickBooks alone does not solve this
QuickBooks records what happened at the business level. It was not built to answer the question: "Was this specific HVAC installation profitable after the callback two weeks later, factoring in Mike's drive time and the extra parts he had to order?"
ServiceTitan has a job costing module. Most contractors who use it have never opened it. Jobber and FieldPulse both have job costing features too.
The tools exist. The problem is connecting them, interpreting the output, and making the data actionable on a weekly basis rather than letting it sit in a dashboard no one looks at. Manual job costing processes delay financial visibility by 2-4 weeks, according to Dapt.tech (2026). By the time you find out last month's margin by tech, the month is closed.
Automated systems reduce that reconciliation time from days to minutes. If you are serious about managing material costs and understanding where your margin actually goes, the data infrastructure matters as much as the intent.
Get the Job Costing Automation Recipe
Get StartedHow the automation actually works
The Job Costing and Profit Tracker by Tech uses QuickBooks, Google Sheets, and ServiceTitan together. The input is weekly job data: invoice totals, labor hours, material receipts, and drive time. The AI layer matches costs to jobs, calculates true margin per job, and then aggregates by technician.
The output looks like this: "Mike's margin is 42%, Dave's is 19%." It also surfaces which service types are most and least profitable across your whole operation.
Setup time is approximately 4 hours and it is built as a copy-paste script. You do not need to be a developer. You do need clean data coming out of your field software, which means technicians need to be logging start and stop times per job. ServiceTitan's GPS timestamps make this automatic.
ServiceTitan users save an average of 30-60 minutes per month per employee on payroll prep alone by automating gross pay calculations (ServiceTitan, official platform documentation). That is before counting the margin visibility gains.
What this tells you that revenue-per-tech never could
Revenue per technician is a useful benchmark - CEO Finance Academy sets the target at $250K to $400K per tech per year, with below $200K being a danger threshold. But revenue per tech tells you how busy someone is. Margin per tech tells you whether keeping them busy is profitable.
| Metric | Mike | Dave |
|---|---|---|
| Weekly invoiced revenue | $9,200 | $11,400 |
| Burdened labor cost | $2,100 | $3,800 |
| Material cost | $1,900 | $3,600 |
| Drive time cost | $420 | $890 |
| Callback cost (week) | $0 | $700 |
| True gross profit | $4,780 | $2,410 |
| True margin | 52% | 21% |
Dave invoices more. Dave is losing you money relative to his potential. You would never know this without per-job cost tracking.
A contractor documented a similar pattern via MyQuoteIQ (December 2025): commercial work felt like strong revenue with big invoices and steady contracts. Job costing revealed it barely covered costs after crew travel time and equipment wear.
They reduced commercial focus and shifted to residential. Annual profit increased 23% with the same revenue. Same trucks, same team, completely different outcome from understanding where their margin actually came from.
If you are thinking about how to price jobs correctly or debating flat-rate versus hourly pricing, per-technician job costing data gives you the ground truth you need to make those decisions with real numbers.
Overhead rate: the number almost no one calculates correctly
Oryx Horn's HVAC Job Costing Guide (May 2026) gives a clean example: if your annual overhead is $480,000 and your team works 8,000 total hours, your overhead rate is $60 per hour. That $60 gets applied to every job proportionally. Skip it, and every margin number you calculate is wrong.
This is also why managing cash flow requires job-level data, not just monthly P&L. You can have strong revenue months and still be funding unprofitable work.
For HVAC operators in particular, pairing this with service agreement revenue creates a cleaner picture. Agreement work tends to produce different margins than one-off calls, and knowing which techs execute agreement visits most profitably changes how you staff and schedule.
For contractors looking to build a technician sales training program, job costing data is the foundation. You cannot train toward profitability if you do not know which behaviors drive it.