Your door rate is the number you decided on. Your effective labor rate is the number that actually happened.
The labor rates post already mentions this gap in passing — a shop posting $130 and collecting $104. This post is the version where we do the arithmetic out loud, because the formula alone doesn’t tell you where the missing $26 went, and knowing where it went is the entire point.
The formula
Effective labor rate is labor revenue collected divided by hours actually billed, for whatever period you’re measuring. That’s it. Same formula the labor rate calculator’s ELR tab runs. Two inputs, one division.
The part that trips shops up isn’t the math. It’s which hours count. “Hours billed” means hours that landed on a repair order and got invoiced to a customer — not hours a tech clocked in, not hours the shop was open, not hours a bay sat available. A tech can work a full nine-hour day and bill six of it. The other three didn’t vanish. They just never became a number on an invoice, and ELR only knows about the number on the invoice.
A worked week (this shop doesn’t exist)
Here’s a made-up example, numbers picked to make the arithmetic clean, not pulled from any real shop or survey. Use the shape of it, not the dollar figures.
Two bays, two techs, door rate $135 an hour, one week in March. Between the two techs, the shop billed 64 hours that week — that’s what showed up on repair orders and got invoiced.
If every one of those 64 hours had gone out at the full $135 door rate, labor revenue for the week would be $8,640. What actually hit the bank: $6,720.
$6,720 ÷ 64 = $105 effective labor rate.
The sign says $135. The bank account says $105. That’s a $30-an-hour gap, or $1,920 for the week, and it didn’t happen because the writer typed the wrong number on any single ticket. It happened in five smaller places, none of them dramatic on their own.
The five leaks, and where the $1,920 went
Discounts nobody’s tracking. Two regulars got a round-down at pickup — “let’s call it $200 even” on a job that priced out at $250. Nice gesture, real money: $400 for the week. Most shops that do this don’t have a discount code or a report that catches it. It just happens at the counter and disappears into the total.
Comebacks. A water pump job came back leaking. The tech spent 2.5 hours redoing it, correctly, for free — and those 2.5 hours still count as “billed” on the RO even though they generated zero additional revenue. Cost for the week: $350. This is the leak that punishes good shops for admitting a mistake, which is exactly why it needs to be measured rather than felt — and it’s the same comeback risk that shows up in the pay math on flat rate vs. hourly, from the other side of the ticket.
Unbilled diagnostic time. A no-start took two hours to trace. The customer declined the repair once they heard the price, and the shop wrote off the diag fee rather than collect for time already spent finding the problem. $300 gone, and it’s gone every time a diagnosis doesn’t convert into a job — which is often.
Warranty labor. A part installed six weeks earlier failed early. The parts warranty covered the part; the shop ate the 2 hours of labor to swap it, because billing the customer for a warranty comeback is a fast way to lose the customer. $270, and it’s the right business call — it’s just not a free one.
Jobs quoted under book time. A job that the labor guide says takes 4.5 hours got written on the estimate at 3, because the writer didn’t want the bigger number to scare the customer off before they’d even said yes. $600 for the week, and it’s the largest single leak here because it’s a decision made before the work even started, not something that happened to the shop afterward.
Add them up: $400 + $350 + $300 + $270 + $600 = $1,920. Divide by 64 billed hours and you’re back at the $30-an-hour gap between the $135 door rate and the $105 that actually landed.
How to find each one in your own numbers
You don’t need all five to be visible at once — most shops can find one or two just by asking the right question of their own repair orders.
Discounts show up if you look at invoice totals against original line totals, job by job, for a week. If nobody’s writing discounts down anywhere, the first fix is simply writing them down.
Comebacks show up on the RO history for a vehicle — a second visit for the same complaint inside a short window, with parts and labor but no new invoice line. If your system doesn’t flag repeat visits automatically, a manual scan of “customer’s back for the same thing” once a month catches most of it.
Unbilled diagnostic time hides in declined estimates. Pull every RO from the last month where an estimate was written but never approved, and check whether the diag time got billed anyway or just absorbed.
Warranty labor is usually already tracked somewhere as a cost, just not connected to the hours it consumed. The fix is tagging warranty jobs the same way you’d tag any other labor line, so the hours show up in the denominator even when the revenue doesn’t show up in the numerator.
Under-book quoting is the hardest to catch, because it looks identical to a fast, efficient tech from the estimate alone. The tell is a pattern: the same job type consistently coming in under guide time on the same writer’s estimates. That’s not efficiency. That’s a habit of writing smaller numbers to close the sale.
What a good ELR actually looks like
Nobody can hand you a target percentage here, and the sourcing problem is the same one the labor rates post already walked through — most published ELR benchmarks come from a company that sells you the fix for missing it, which makes the number convenient rather than trustworthy.
The structural answer is simpler than a benchmark: your ELR should sit close to the door rate you already worked out for real reasons — your costs, your bay capacity, your margin — and it should stay close from month to month. A small, steady gap is what a normal shop looks like; goodwill, warranty work, and the occasional bad diagnosis are part of running a business with people in it. A gap that keeps widening, or one that’s large enough to make you wonder whether the door rate means anything, is the thing to work on. Compare this month against your own last quarter, not against a number some vendor published.
Measuring it without a spreadsheet
The formula doesn’t need software — a calculator and last week’s invoices will do it. What software changes is whether you do it every week or once a year by accident.
BayDocket’s owner reports show labor revenue and billed hours per technician, so the two numbers this whole post is built on are already sitting there rather than waiting to be assembled from paper tickets at tax time — ELR is one of the four weekly numbers worth watching regardless of what you use to track them.
The part no report does for you
A report will tell you your ELR is $105 against a $135 door rate. It will not tell you why, and it definitely will not fix it.
Closing the gap between $105 and $135 means an uncomfortable conversation — with the tech who’s quietly comping comebacks for a regular customer, or with the writer who under-quotes book time because they hate the look on a customer’s face when the number’s honest, or with yourself about the round-down you’ve been giving at pickup for two years because it felt generous. None of that happens on a screen. A dashboard can point at the leak. Somebody still has to have the conversation that plugs it, and that part stays a management job no matter how good the numbers get.