How to Price Tool Cost Into a Job

Why this matters

Almost every small shop recovers tool cost the same way: not at all, explicitly, and then partially by accident through whatever margin happens to be in the labor rate. That works until the work mix shifts. The shop that adds a job type which eats blades, or buys a specialty tool for a niche, or starts renting equipment every other week, is now quietly funding those jobs out of the margin on unrelated ones. The symptom is a job type that everyone agrees is busy and nobody can explain the profit on. Recovery is not complicated, but it does require deciding which of four channels each kind of tool spend belongs in, because putting all of it in one channel is what causes the cross-subsidy.

The unit that makes this workable, and the unit you must never mix with it

You cannot price tool cost sensibly by carrying purchase prices around, because they go stale and because they do not compare to anything else on the job. Convert every tool cost into hours-equivalent: the number of billable labor hours it takes, at your own labor rate, to cover that cost. A tool that costs the same as three billed hours of work is 3 hours-equivalent. That single conversion lets you compare a purchase, a rental, and a blade against the one thing you actually sell.

Then keep hours-equivalent strictly separate from clock hours, which are real technician time. They are different currencies and mixing them produces nonsense. A rental that costs 6 hours-equivalent and takes 1.5 clock hours to fetch and return is not a 7.5 hour anything. The 6 is money sized in rate units; the 1.5 is time a person spent, which has its own cost and which you may or may not be billing. Keep two columns and never add them together.

Step 1: Split the spend into four channels

The channels exist because these four behave differently across jobs, and one recovery method cannot serve all of them.

Channel What is in it How it recovers
General tools Hand tools, cordless bodies, meters, ladders, the standard kit every truck carries Flat burden inside the labor rate, spread over billable hours
Consumables Blades, bits, wheels, tips, abrasives, anything with a defined service life Per job, or per job family, because usage is uneven
Specialty tools Items bought to serve one job type and mostly idle otherwise Per job of that type, over the tool's expected job count
Rentals and loaners Anything brought in for a specific job Direct to that job, plus the handling time

The most common mistake is putting consumables in the general channel. They look like tools and they behave like materials, and burying them in a flat rate is exactly what makes a high-consumption job type look artificially profitable.

Step 2: Get the denominator right

Burden is spread over billable hours, not paid hours and not shop hours. If you divide by paid hours you will recover less than the true cost, because a meaningful share of paid hours are not sold: travel that is not billed, shop time, training, warranty returns. Using paid hours as the denominator makes the per-hour burden look smaller and quietly guarantees under-recovery.

Take the billable-hour figure from the last full year rather than from a plan. A plan is a forecast; the burden calculation needs the number that actually happened.

Step 3: Set the flat burden for general tools

Annual general-tool spend in hours-equivalent, divided by annual billable hours, expressed as a percentage of the labor rate. That percentage gets added to the rate, not to individual jobs, because general tools genuinely do serve every job roughly equally.

If the resulting percentage is small enough to feel unimportant, that is the correct outcome, not a reason to skip it. General tools should be a small, boring, uniform load. If yours comes out large, that is a signal about your purchasing or your tool life, not about your pricing, and the tool-life and replacement-cycle articles are where that goes.

Step 4: Pull out the job families that break the flat burden

A flat burden is only honest when consumption is roughly even. It never is, and the fix is a threshold rather than a feeling.

Per job family, measured over at least 12 completed jobs in that family: if the family's own consumable and specialty load per billable hour exceeds the shop-wide flat burden by more than 2.0x, take that family off the flat burden and give it its own per-job allocation. The 12-job minimum matters because a single unusual job will double a small family's apparent load and send you re-pricing on noise. When you move it, move the allocation in one step to the measured load, not to an estimated one and not part way, because a half-step correction leaves you re-visiting the same number every quarter without ever landing on it.

Families under the 2.0x line stay on the flat burden. The point is not perfect attribution, it is catching the families where the flat rate is materially wrong.

Step 5: Price a specialty tool across the jobs it exists for

The decision of whether to buy it at all belongs to the specialty-tool article, which sets the earning threshold. Once it is bought, the pricing question is narrower: purchase cost in hours-equivalent, divided by the number of jobs of that type you expect it to serve over its useful life, equals the per-job allocation added to every job of that type.

Two adjustments people miss. Setup, transport, and cleanup time for the specialty tool is clock hours and belongs in the labor estimate for that job, not in the allocation. And if the tool ends up serving fewer jobs than expected, the allocation is wrong and stays wrong until you re-divide, so re-check the job count once a year against what actually happened.

Step 6: Price a rental including the part everyone forgets

The rental fee is the easy half and it goes straight on the job. The half that gets lost is handling: pickup, return, fueling, cleaning, and the trip that gets made because the yard closes before the job ends. That is clock hours of technician time, and it is real whether or not anyone bills it.

Decide once whether handling time is billed to the job or absorbed as overhead, and then actually apply it. Shops that leave it undecided absorb it every single time, because in the moment nobody wants to explain a line item for driving.

Worked example: a five-tech shop, all four channels

The shop. Five techs, 4,000 billable hours last year, which is the denominator for everything below.

The spend, converted to hours-equivalent at their own labor rate.

  • General tools: 40 hours-equivalent
  • Consumables: 55 hours-equivalent
  • Specialty tool bought this year: 30 hours-equivalent purchase, expected 5 years of service at about 12 jobs of that type per year, so 60 jobs over its life
  • Rentals: 18 hours-equivalent across 12 rental events

The flat burden. 40 hours-equivalent over 4,000 billable hours is 1.0% of the labor rate. That is the general-tool load, and it is appropriately unremarkable.

Testing the consumables against the 2.0x rule. Spread flat, 55 hours-equivalent over 4,000 billable hours would be 1.4% of the labor rate. But when they tagged consumable usage by job family for a quarter, about 70% of consumable use came from one job family that accounts for 25% of billable hours.

Run it out. That family's share is 0.70 x 55 = 38.5 hours-equivalent, spread over 0.25 x 4,000 = 1,000 billable hours, which is 3.85% of the labor rate. Everything else is the remaining 16.5 hours-equivalent over the remaining 3,000 billable hours, which is 0.55%.

Against the 1.4% flat rate: the heavy family's true load is 3.85%, about 2.75 times the flat rate, which is over the 2.0x threshold, so under the rule as written that family comes off the flat burden and gets its own allocation at the measured 3.85%. The rest of the work is at 0.55%, about 39% of the flat rate, meaning the flat burden had been overcharging the light work by roughly two and a half times while undercharging the heavy family by about the same factor. They had 40-plus jobs in that family over the quarter, comfortably past the 12-job minimum, so the sample was not the problem.

The specialty allocation. 30 hours-equivalent over 60 expected jobs is 0.5 hours-equivalent added to each job of that type. Separately, that tool adds about 40 clock minutes of setup and cleanup per job, which went into the labor estimate for those jobs as time, not as burden.

The rentals. 18 hours-equivalent across 12 rental events averages 1.5 hours-equivalent per event, billed direct. The handling time was the finding: about 1.5 clock hours per event for pickup and return, so 12 events consumed about 18 clock hours of technician time over the year, none of which had been billed or planned. Those 18 clock hours are not added to the 18 hours-equivalent of rental cost; they are a separate leak in a separate column, and stating them together as 36 of anything would be exactly the mistake the unit rule warns about.

The under-recovery check. Total annual tool cost, all four channels: 40 general, plus 55 consumables, plus 6 for the specialty tool's annual share of its 30 hours-equivalent over 5 years, plus 18 rentals, equals 119 hours-equivalent. What they had actually been recovering: the general burden only, and rentals on roughly 60% of rental events because the rest were forgotten at invoicing. That is 40 plus about 11 of the 18, so around 51 of 119 hours-equivalent, about 43%. The other 57% was coming out of margin, invisibly, concentrated on one job family.

What the fix changed. They did not raise the labor rate. They moved the heavy family onto its own allocation, added the specialty allocation to its job type, and made the rental line mandatory on any job with a rental attached, which closed the 40% of rental events that were being missed at invoicing.

The reconciliation that tells you it is working

Once a year, add what the four channels actually recovered and compare it to what you actually spent, both in hours-equivalent. If recovery is within about 10% of spend, the model is working. If it is materially under, find which channel is leaking before you touch the labor rate, because raising the rate to cover a rental-billing failure punishes every customer for a process gap.

The second check is per family. Pull the three job families with the highest consumable load and confirm each is either over the 2.0x threshold and carrying its own allocation, or under it and on the flat burden. A family that has drifted above the threshold since last year is the exact case this whole method exists to catch, and it will drift, because work mix moves.

The purchase that never waits for the math

One category is outside this entire framework. A safety-gated item that has failed inspection gets replaced when it fails, not when its recovery math works out. A ladder with a cracked or bent rail is tagged and taken out of service the day it is found, and stays out until it is repaired or replaced, and a test instrument that fails its verification is out of service that moment, regardless of where either sits in a replacement cycle or a budget. Pricing decides how you recover the cost of tools over time. It never decides whether a defective safety item stays on the truck tonight.

References

  • IRS Publication 946, how to depreciate property, for how tool purchases are treated on the tax side rather than in job pricing
  • OSHA 29 CFR 1910.242(a), which requires the employer to maintain hand and portable powered tools in safe condition, meaning a defective tool is removed regardless of budget cycle
  • See related: How to Decide What a Specialty Tool Has to Earn; The Real Cost of a Cheap Tool Over Its Life; How to Decide Whether to Buy, Rent, or Subcontract a Tool; How to Set a Tool Replacement Cycle