Revenue Per Crew Hour: How to Calculate and Improve It
Revenue per crew hour is job revenue divided by the crew hours that produced it. If a three-person crew works 120 hours in a week and the jobs they touched invoice for $18,000, you earned $150 per crew hour. The number matters because every hour on the clock costs you a burdened wage plus a slice of overhead whether or not it produced anything — so a single figure tells you if the week was worth running. CRMb computes it from crew hours actually punched against real jobs, not from estimates typed in after the fact.
Most shops track revenue and track payroll, but never divide one by the other. That division is where a busy month and a profitable month stop being the same thing.
What the number actually measures
Revenue per crew hour is a productivity rate, not a price. It answers one question: for every hour a person is on your payroll and on a job, how much revenue does the business collect?
It sits between two metrics you may already run. Crew utilization tells you what share of paid hours were billable at all. Job margin tells you whether one job was priced right. Revenue per crew hour tells you how hard the whole operation is working, across every job, in one figure you can trend week over week.
It is also the fastest way to compare two crews doing the same kind of work. Two landscape crews can both look busy. One turns $118 per crew hour, the other $164. Nothing in a schedule or a timesheet explains that gap. The rate does.
The formula, in two versions
All-in revenue per crew hour = total job revenue ÷ total crew hours
Use this for trending the business. It is the simplest version and the one to put on a monthly dashboard.
The catch: material-heavy jobs inflate it. A job where you resold $9,000 of equipment in eight hours will make a week look extraordinary without anyone working harder.
Labor revenue per crew hour = (job revenue − materials − subcontractors) ÷ crew hours
Use this for pricing and for comparing crews. Stripping pass-through cost leaves the revenue your labor actually generated, which is what your rate has to cover.
A worked example, one week, three-person crew:
| Line | Amount |
|---|---|
| Invoiced revenue | $18,000 |
| Materials on those jobs | $4,200 |
| Subcontracted work | $1,500 |
| Crew hours punched | 120 |
| All-in per crew hour | $150.00 |
| Labor revenue per crew hour | $102.50 |
The $150 is the headline. The $102.50 is the number that has to beat your cost.
Setting your target
A target is not a guess. It is built from what an hour costs you, plus the profit you intend to keep.
Step 1 — Burdened labor cost per hour. Base wage plus payroll taxes, workers' comp, insurance, and paid time off. See how to calculate labor burden rate. Say $38.00.
Step 2 — Overhead per crew hour. Total monthly overhead divided by the crew hours you actually bill in a month. See how to calculate overhead rate. At $9,000 of overhead and 480 billable crew hours, that is $18.75.
Step 3 — Break-even. $38.00 + $18.75 = $56.75 per crew hour. Below this, the hour lost money.
Step 4 — Add the margin you want to keep. Divide, do not multiply. For a 15% net margin: $56.75 ÷ (1 − 0.15) = $66.76, call it $67.
That $67 is a floor on labor revenue per crew hour. The example crew above is running $102.50, which is healthy. A crew at $61 is working every day and quietly funding the customer.
Rough ranges seen across field service work, labor revenue only:
- Residential service and repair: $85 to $140 per crew hour. High rate, heavy drive time.
- New construction and commercial crews: $65 to $105. Lower rate, dense hours, little travel.
- Cleaning and janitorial: $45 to $75. Thin per-hour rate carried by route density.
- Specialty trades with licensing: $110 to $180.
Treat these as orientation, not a grade. Your own trend line beats any benchmark.
The five things that move it
Price. The most direct lever and the one shops avoid. A 6% price increase moves revenue per crew hour 6% with no change on the ground. See how to raise your prices without losing customers.
Non-billable hours. Drive time, shop time, and waiting on suppliers sit in the denominator and produce nothing. Tightening routes is often worth more than a price increase.
Rework and callbacks. Hours spent twice on one job halve the rate for those hours. Track them separately or they hide inside "the job took longer."
Scope creep. Unbilled extras add hours to the bottom of the fraction and nothing to the top. Write them up as change orders.
Crew mix. Sending three people where two would do splits the same revenue across more hours. The job still finishes. The rate drops.
Where the number goes wrong
Revenue per crew hour is only as honest as the hours underneath it.
The common failure is hours that were never attached to a job. If a tech punches in for the day and nobody records which job the afternoon went to, those hours either vanish from the denominator — inflating the rate — or land on the wrong job, which quietly moves margin from one customer to another. Either way the report is confident and wrong.
The second failure is timing. Revenue lands when you invoice, hours land when they are worked. On a job that runs three weeks and invoices at the end, a weekly rate swings wildly. Fix it by measuring per job, or by running the rate monthly where the mismatch mostly washes out.
In CRMb, crew hours come from Punch, the time-tracking app that shares the same organization and data, and are attached to the job as they are punched. Job labor cost is built from those hours, and Reports show margin against them — so the denominator is a record of what happened, not a reconstruction.
Read it next to two other numbers
Revenue per crew hour on its own can mislead. Read it as a trio:
- Utilization explains the denominator. A falling rate with falling utilization is a scheduling problem, not a pricing problem.
- Job margin explains the numerator. A high rate with thin margin means materials or subs are eating the job. Check the post-job profitability review.
- Backlog explains what happens next. A strong rate on two weeks of work left is a different business than the same rate on ten. See how to measure job backlog.
Together they answer the only question that matters at the end of a month: were we busy, or were we profitable?
FAQ
What is a good revenue per crew hour? Anything comfortably above your break-even, which is burdened labor plus overhead per hour. For many shops that floor lands between $50 and $70, and healthy operations run well above it. The right target is calculated from your own costs, not copied from a benchmark.
Is revenue per crew hour the same as your hourly rate? No. Your hourly rate is what you charge. Revenue per crew hour is what you actually collect per hour worked, after non-billable time, discounts, unbilled extras, and rework are absorbed. It is almost always lower than the rate on your price sheet, and the gap between the two is where the money goes.
Should materials be included? Include them for a trend line, exclude them for pricing decisions. Material-heavy jobs distort the all-in figure enough that two similar crews can look nothing alike. Running both versions takes no extra work once hours are attached to jobs.
How often should I calculate it? Monthly for the business, and per job at closeout. Weekly is useful for a crew with short jobs, and noisy for anyone running multi-week work that invoices at the end.
Does it work for fixed-price jobs? Yes, and it is more revealing there. On fixed-price work the revenue is locked, so every extra hour drops the rate directly. That makes it an early warning that a job is going over budget while there is still time to act.
What if my crews are different sizes? Use crew hours, not crew days or job counts. A two-person day and a five-person day are different amounts of payroll, and only hours put them on the same scale.
Getting started with CRMb
Revenue per crew hour is arithmetic. The hard part is the denominator: knowing which hours went to which job, every day, without asking anyone to remember.
CRMb keeps clients, quotes, jobs, scheduling, inventory, and invoicing in one place, and takes crew hours from Punch as they are punched at the job site. Job labor cost is built from those hours. Reports show margin on real punched hours, so the revenue and the labor behind it come from the same record.
Start a 14-day free trial — no credit card required. Available on Mac and iPad.