Revenue per employee for the trades: what HVAC, plumbing, and electrical owners should expect
Revenue per employee is your last 12 months of revenue divided by the number of full-time people it takes to produce it. It is the fastest read on whether your trades business is built to make money or just built to stay busy, and it is the first number an owner should know cold.
Is this you? You are doing somewhere between $500K and $15M. Revenue is up but the bank account does not show it. You keep adding people and the work gets harder, not easier. You have never actually divided your revenue by your headcount and looked at the answer. If any of that lands, this number is for you.
This is a working guide, not a skim. Read it to understand the number, then come back when you are deciding whether to hire, raise prices, or figure out why a busy year did not feel like one.
What revenue per employee actually is
Revenue per employee (RPE) is one formula:
Revenue per employee = revenue over the last 12 months divided by your number of full-time-equivalent employees.
Trailing 12 months means the last 12 months ending today, not a calendar year and not a single month. A single month is too noisy. One big install or one person quitting throws it off. The fractional-CFO firm Iota Finance makes the point directly: calculate it on a trailing-twelve-month basis, because a monthly snapshot gets skewed by one large project or one departure.
Full-time-equivalent (FTE) means you convert part-timers to a fraction before you count. A 20-hour-a-week person counts as 0.5, not 1. That is the standard convention across finance sources. Count raw heads instead and your number comes out artificially low.
Two judgment calls the sources do not settle, so decide once and stay consistent:
- The owner. Count yourself if you still run calls or sell. Leave yourself out if you only run the business. There is no single rule. Pick one so your trend means something.
- 1099 subcontractors. Legally a 1099 is not an employee. But for this metric the useful test (per Iota Finance) is whether the sub fills a seat you would otherwise hire for. If subs are a real part of how you deliver work, leaving them out flatters your number.
Revenue per employee is not revenue per technician
This is the single most important distinction, and it is where almost every benchmark online goes wrong.
- Revenue per employee divides revenue by everyone: techs, dispatchers, CSRs, install crews, sales, admin, and maybe you. It measures the whole business.
- Revenue per technician divides revenue by your field producers only. It is always the bigger number, because it ignores the office.
The field-service resource Tradesly frames it well: revenue per technician reveals field productivity, while total revenue can hide declining productivity behind added headcount. You want both. A shop can have strong revenue per tech and weak revenue per employee at once, which simply means the office got heavy.
<rect x="32" y="64" width="6" height="58" fill="var(--color-clay)"/>
<text class="t-lab" x="50" y="82">Revenue per employee</text>
<text class="t-sub" x="50" y="102">All staff: techs, office, install, you.</text>
<text class="t-num" x="50" y="120">$150,000 to $250,000 for most shops</text>
<rect x="32" y="138" width="6" height="58" fill="var(--color-wine)"/>
<text class="t-lab" x="50" y="156">Revenue per technician</text>
<text class="t-sub" x="50" y="176">Field producers only. Always higher.</text>
<text class="t-num" x="50" y="194">$200,000 to $450,000 (HVAC)</text>
<rect x="32" y="212" width="6" height="58" fill="var(--color-steel-500)"/>
<text class="t-lab" x="50" y="230">The "$500,000 elite" number</text>
<text class="t-sub" x="50" y="250">Energy, finance, tech. Not a trades target.</text>
<text class="t-num" x="50" y="268">Context, not your goal</text>
<line class="t-rule" x1="32" y1="300" x2="688" y2="300"/>
<text class="t-src" x="32" y="326">Read your number next to cash collected and net profit, never on its own.</text>
<text class="t-src" x="32" y="350">Ranges: BaaDigi, Siana Marketing, HRBench.</text>
<text class="t-src" x="32" y="372">Coaching figures are aggregates, not survey data.</text>
How to calculate your number, step by step
- Pull your trailing-12-month revenue. Use what you invoiced over the last 12 months. (Hold the question of what you collected. It matters and we come back to it.)
- Count your FTEs. Full-timers as 1, part-timers as the fraction they actually work. Decide whether the owner and regular 1099s are in or out, and write it down.
- Divide revenue by FTEs. That is your revenue per employee.
- Do it again for field techs only. Revenue divided by the people who produce billable work in the field. That is your revenue per technician.
- Lock your conventions. Gross or net revenue, owner in or out, subs in or out. Keep them the same every time, because the trend matters more than any single reading.
That is the whole calculation. You can also just run it in the free tool and get your band back in about 30 seconds.
What good looks like, honestly
Here is the truth the benchmark blogs bury: there is no public government dataset that publishes a clean revenue-per-employee line for a residential HVAC, plumbing, or electrical shop. The hard industry datasets (ACCA, PHCC, NECA, IBISWorld) are gated. The round numbers you see everywhere come from coaches and benchmarking firms reviewing client books. That does not make them useless. It makes them coaching aggregates, not survey data, and anyone honest tells you which is which.
Revenue per employee, all staff counted
For small businesses generally, the benchmarking firm HRBench puts companies under $1M near $43,000 per employee and companies in the $2M to $5M range around $100,000 to $150,000. Trades should beat the bottom of that, mostly because of equipment revenue.
Sized to construction and the trades, the 2026 report from Siana Marketing (citing the CFMA benchmarker and Census data) lays out revenue per employee by firm size: about $145,000 for micro firms of one to four people, around $243,000 for medium firms of 20 to 99, and topping out near $412,000 only at enterprise scale of 500-plus. Most owner-operated shops live in the $145,000 to $245,000 band, and that is normal.
The contractor firm BaaDigi, working from coaching data, puts a practical all-staff floor at $130,000 to $150,000 per employee, solid at $150,000 to $170,000, and strong above $170,000.
A fair read for most residential shops doing $500K to $15M: roughly $150,000 to $250,000 per employee, climbing as you get bigger and as more revenue comes from replacement and recurring work.
Revenue per technician, field producers only
These run higher, and they are almost entirely coaching figures, so treat them that way.
- HVAC. BaaDigi and Service Business Evolution converge on a healthy floor near $200,000, an average of $250,000 to $350,000, and strong at $350,000 to $450,000. Elite individual selling techs run from $700,000 into the millions, but that is one exceptional person on one truck, not a company average. Do not benchmark your shop against it.
- Plumbing. Lower per tech, because most tickets carry no large equipment line. Contractor In Charge and the M&A firm Lightning Path Partners put top performers around $200,000 to $300,000, with $180,000 the line below which you likely have a productivity problem. Plumbing makes up for it with higher margins.
- Electrical. The thinnest data of the three. The implied range sits near $200,000 to $300,000, but treat any electrical per-tech number as lightly sourced.
A rule of thumb across coaches: a tech tends to produce around five times their total compensation, or put another way, a tech’s pay runs 14 to 20 percent of the revenue they generate (Service Business Evolution). A tech costing $75,000 loaded should be producing somewhere around $375,000. It is a sanity check, not a law.
About the $500,000 per employee number
You will hear that elite companies do $500,000 per employee. That is real, and it is not a trades number. The cross-industry average is around $350,000 (HRBench), the “good” band runs $200,000 to $500,000, and the top quartile across all industries sits near $565,000 (CompanySights). That tier is where energy, finance, and big tech live. A labor-driven trades shop running $150,000 to $250,000 per employee is not behind. It is in a different business. Compare yourself to other shops your size and to your own last year.
Is there a danger zone?
Be careful, because this is where folklore is thickest. No credible source states a real statistical survival threshold. Every “below this number you are in trouble” line is a coaching judgment, not a probability from a dataset.
The most-quoted version, “$350,000 per employee,” is folklore, and the consultant who repeats it (Synchronous Solutions) then debunks it with real P&L math: a $12M shop at a 10 percent net margin only produces about $182,000 of revenue per employee, and even at 20 percent net it is around $222,000. The $350,000 figure almost certainly comes from someone quoting revenue per technician and calling it revenue per employee. The honest version: most healthy shops run $150,000 to $250,000 per employee, and a number drifting below roughly $130,000 is worth investigating, because it usually means the office got heavy or the field got slow.
How to read your number
A revenue-per-employee figure on its own is a half-truth. Read it next to three things.
Cash collected, not just revenue billed. This is the one that bites. Your accounting system shows revenue as billed, not money in the bank. A high number built on invoices you have not collected is a false signal. As the trades bookkeeping firm Contractor In Charge puts it, profit is a theory and cash is a fact. The scale is real: a ConstructConnect survey reported by Foundation Software found 84 percent of construction companies dealing with cash-flow problems. CEO Finance Academy gives the worked version: a shop at $1.8M revenue and a 12 percent net margin shows $216,000 of profit on paper, but with 58 days of receivables and $240,000 stuck in unpaid invoices, the owner feels broke. Track revenue generated, cash collected, and cash balance side by side. Residential service should collect at the time of service.
Net profit, or better, overhead percentage. Revenue per employee measures efficiency, not profit. You can run a high number into the ground by underpricing. Pair it with net margin. For context, the 2024 ACCA Financial Benchmarking Study (as reported by CEO Finance Academy and Profitability Partners) put the median HVAC net profit near 5.8 percent and the top quartile near 13.2 percent. CEO Finance Academy reframes office bloat as overhead percentage: the best-run shops under 25 percent, average 32 to 40 percent, a warning sign above 40 percent. Watch the climb: when overhead goes from 28 to 38 percent as a shop scales from $2M to $4M, the owner works twice as hard for the same money, and it shows up in revenue per employee first.
Your own trend and your own size class. The only fair comparison is you last quarter and shops roughly your size. A $900K shop and an $8M shop are not the same business.
How to raise it
Revenue per employee goes up when you produce more revenue with the same people. The real levers, with the numbers behind them:
- Average ticket and pricing. Built on Tenth puts a healthy same-visit HVAC repair at $400 to $700 and a replacement at $5,000 to $15,000 and up, and notes flat-rate pricing produces 15 to 25 percent higher tickets than time-and-materials for the same work. Offering financing on every call raises close rates around 30 percent and average tickets around 20 percent (ACCA), yet most contractors barely use it. (This is where a clean, well-built pricebook earns its keep. It is also what we do, so we are biased, but the math is the math.)
- Technician utilization. A Field Promax study of 300 HVAC companies, reported in ACHR News, found only 65 percent of paid technician time is actually billable, about 5.7 hours of an 8.8-hour day, with over an hour a day lost to unrecovered drive time. FieldEdge calls 70 to 85 percent healthy. The gap between 65 and 80 percent is real money.
- Cutting non-billable drag. The most concrete figure in the whole subject: ACCA put the loaded cost to roll a truck near $84.40 an hour, and found each supply-house run costs about one billable hour, so 5 runs a month is roughly $22,000 a year per truck and 15 runs a month is around $60,000. Drive time, supply runs, and rework are revenue per employee leaking out the side.
- The tech-to-office ratio. Every non-billable hire lowers revenue per employee, so the question is whether each office seat enables enough field output to earn its place. The honest answer on the right ratio is that it varies. Watch overhead percentage instead of chasing a ratio.
- Recurring revenue. The M&A firm Auxo Capital Advisors flags 30 percent of revenue from recurring maintenance agreements as the threshold where shops show higher valuations and smoother cash flow. The real lift is pull-through: members call you first for repairs and replacements.
The free loaded labor rate calculator handles the pricing-floor side of this, and the four numbers every owner watches on Monday puts revenue per employee in the small set of metrics worth tracking weekly.
How revenue per employee differs from the metrics next to it
- Gross margin is revenue minus the direct cost of the work, as a percentage. Right lens for pricing a single job. Its blind spot is time: ACCA showed two jobs at the same 40 percent gross margin can earn $73 an hour on one and lose money on the other. Revenue per employee catches what margin percentage misses.
- Net profit margin is what is left after everything, the right lens for overall health. But as Ruth King put it at ACCA, you cannot take percentages to the bank: a 20 percent net job over 40 hours can be worse than a 20 percent job over 16. Net margin per job hides labor efficiency. Revenue per employee exposes it.
- Loaded labor rate is what one hour of a tech actually costs you once you add taxes, comp, benefits, the truck, and tools, usually 1.25 to 1.6 times base wage (PushLeads). It is an input to your pricing, not a measure of output.
- Revenue per truck runs roughly $400,000 to $650,000 a year per service vehicle (BaaDigi, MarginPlug). Right lens for capacity and fleet planning. Its blind spot is the office, which revenue per employee catches.
Common mistakes
- Counting heads instead of FTEs. Two part-timers are one FTE, not two.
- Ignoring subcontractors. If 1099s do real production and you leave them out, the number looks great and means nothing.
- Confusing per-tech with per-employee. The number one error online, and why “benchmarks” disagree by two to three times.
- Reading the number off uncollected revenue. A big number on invoices you have not collected is a trap.
- Chasing it into understaffing. You can raise the number by running people into the ground. That shows up later as turnover and dropped calls.
- Comparing across different business models. A new-construction electrical shop and a residential service plumber are not comparable, and neither is comparable to a software company at $500,000 a head.
Two worked examples
A $3M shop with 12 people
Say you do $3M with 12 FTEs: 8 field techs and 4 in the office, including you part-time on sales.
- Revenue per employee: $3,000,000 divided by 12 = $250,000.
- Revenue per technician: $3,000,000 divided by 8 = $375,000.
Solid per employee for a shop this size, and strong per tech. At a 10 percent net margin that is about $300,000 of profit, assuming you collect it. To move revenue per employee from $250,000 to $290,000 without adding people, you need about $480,000 more revenue (12 times $40,000), from ticket, utilization, and recurring work, not from more hours. And before you add a fifth office seat, know it drops the number to $3,000,000 divided by 13, about $231,000, unless that hire drives more than its share of new revenue.
A $900K shop with 5 people
Say you do $900K with 5 FTEs: 3 field techs and 2 in the office, one of them you.
- Revenue per employee: $900,000 divided by 5 = $180,000.
- Revenue per technician: $900,000 divided by 3 = $300,000.
Healthy for a small shop. At a 7 percent net margin that is about $63,000 of profit, which is why small shops feel tight even when the number looks fine. Now the hire question, which is what this metric is for. Add a fourth tech who produces near the existing $300,000 and no office, and the number becomes $1,200,000 divided by 6, or $200,000. It went up. Add that tech and a second office person at the same time and it is $1,200,000 divided by 7, about $171,000. It went down, and you are working harder. The cleaner way to make the call is the Labor Efficiency Ratio from Greg Crabtree: gross margin divided by direct labor cost. Run the marginal hire on what it adds to gross profit, not gross revenue.
Run your number
You can compute your revenue per employee in about 30 seconds in our free revenue per employee tool. It gives you your number, the band it lands in, and the lever most likely to move it. When a low number traces back to thin pricing and a low average ticket, that is usually a pricebook problem, which is the thing we build for a living.
Sources
Every benchmark above is attributed to its source by name. The full list is here, collapsed to keep the page clean. These open in a new tab.
Sources and benchmarks
- Corporate Finance Institute, Revenue Per Employee
- Iota Finance, revenue per employee (trailing-12-month, FTE, 1099)
- Tradesly, revenue per technician
- HRBench, Revenue per Employee 2025 benchmarks
- CompanySights, Revenue per Employee benchmarking
- Siana Marketing, Average Construction Company Revenue 2026
- BaaDigi, HVAC business benchmarks 2026
- Service Business Evolution, HVAC technician revenue
- Lightning Path Partners, plumbing profitability
- CEO Finance Academy, profit versus cash and HVAC margins
- Foundation Software (ConstructConnect 84 percent cash-flow stat)
- Greg Crabtree, Labor Efficiency Ratio
- ACCA HVAC Blog, what it costs to run your business
- ACHR News / Field Promax, 65 percent billable time
Benchmarks here are attributed to their sources and vary by definition and trade. Coaching figures are operator aggregates, not survey data, and any “elite” target like $500,000 per employee is a cross-industry high-performer mark, not the trades average.