Skip to main content
Outsource vs in‑house repairs: an ROI decision matrix for fleet managers

Outsource vs in‑house repairs: an ROI decision matrix for fleet managers

A practical way to decide which repair jobs stay in your bays and which ones leave the building

Most fleet managers don't make the outsource-vs-in-house call deliberately. It just kind of happens. A bay gets backed up, a job gets farmed out, and three years later 40% of your transmission work is going to a third-party shop at a markup nobody ever formally approved. Or the opposite — you've got a technician burning six hours a week on AC recharges that a strip-mall shop handles in under an hour.

The problem isn't outsourcing itself. It's that the decision almost never gets evaluated at the job-family level with actual thresholds. People land on "we do brakes in-house" as a blanket policy, when the honest answer is usually more specific: in-house for the pickups, outsource for the box trucks because the lift rating isn't there.

This is an attempt to build an actual outsourcing fleet maintenance decision matrix — one with numbers you can defend when finance asks why axle work costs what it costs.

Why the "we've always done it in-house" logic quietly loses money

There's a pattern that shows up constantly in mixed fleets. A shop was sized years ago for a fleet that no longer exists. The vehicle mix shifted — more EVs, more medium-duty, fewer sedans — but the bay layout, tooling, and technician skill mix didn't. So the shop keeps doing the work it's set up to do, regardless of whether that work is still the cheapest path to getting the vehicle back on the road.

The hidden cost isn't the labor rate. It's bay occupancy. Every hour a slow-moving, low-frequency job sits in your bay is an hour a high-frequency PM job can't. When bays are your constraint — and in most urban fleets they are — the real cost of doing a job in-house is whatever you couldn't do instead.

A quick illustration. Say your fully-loaded in-house labor cost runs around $78/hour and a third-party shop quotes an effective $115/hour on the same job. On paper, in-house wins by $37/hour. But if that bay hour spent on a fast PM would have returned a vehicle to revenue service a full day earlier, the downtime cost on a delivery van — lost route, rental, missed SLA — can easily exceed that $37 difference. The "cheaper" option ends up more expensive once you count what you didn't do.

This is why job families, not individual repairs, are the right unit of analysis.

The decision variables that actually matter

Before building any matrix, you need to agree on what you're measuring. Four variables carry most of the weight:

  1. Frequency — how many times a year this job family hits your fleet. Low-frequency specialty work almost never justifies in-house tooling.
  2. Tooling and certification cost — the amortized annual cost of the lift, scan tool, calibration rig, or OEM cert required to do the work legitimately.
  3. Downtime sensitivity — how expensive is a vehicle being down an extra day? A reefer truck mid-route is not a pool sedan.
  4. Skill depth — can your current techs do it well, or are you one resignation away from losing the capability entirely?

Most teams only look at labor rate. Labor rate is probably the fourth most important factor. The jobs that cause real problems are the ones that are rare, tooling-heavy, and skill-fragile — because those are the ones where maintaining in-house capability costs a fortune and still produces mediocre turnaround.

The make-vs-buy matrix

Here's the core framework. Score each job family on the two axes that actually drive the decision: annual volume and capital/skill intensity to do it well in-house.

Job familyAnnual volume (per 100 vehicles)Tooling/skill intensityDefault callWhy
Oil + routine PMHigh (300+)LowIn-houseVolume justifies dedicated bay flow; fastest turnaround
Brakes (light/medium)High (120+)Low–medIn-houseFrequent, predictable, keeps techs loaded
Tires / alignmentMed–highMed (alignment rig)MixedIn-house mount/balance, outsource alignment if rig underused
HVAC / AC rechargeMedMed (recovery equipment, refrigerant certs)Outsource unless volume highCert + equipment rarely pays off at low volume
Transmission rebuildLow (<10)HighOutsourceSpecialty skill, long bay dwell, high rework risk
EV high-voltage repairLow–med (growing)Very high (certs, PPE, tooling)Outsource now, revisit yearlyCert cost and liability too high until volume climbs
Diagnostics / calibration (ADAS)Med (rising)High (targets, OEM access)MixedIn-house basic scan, outsource complex calibration
Body / collisionLowHigh (booth, frame rig)OutsourceAlmost never worth in-house for a non-collision fleet
Welding / fabricationLowMed–highOutsourceOccasional need, not worth a dedicated station

The default call isn't a rule. It's a starting position you override with the ROI thresholds below.

The ROI thresholds that override the defaults

A matrix cell tells you the typical answer. The threshold tells you when to break it. For each job family, calculate the break-even volume — the annual job count where in-house becomes cheaper than buying, including amortized tooling.

The rough formula:

Break-even jobs/year = Annual tooling & cert cost ÷ (Outsource price per job − In-house cost per job)

A worked example on ADAS calibration:

  1. Calibration target kit + software access, amortized

    roughly $9,000/year

  2. Outsource price per calibration

    about $280

  3. In-house cost per calibration (labor + consumables)

    about $120

  4. Savings per job in-house

    $160

  5. Break-even

    $9,000 ÷ $160 = about 56 calibrations/year

If your fleet generates more than ~56 ADAS calibrations a year, bringing it in-house pays for the kit. Below that, you're subsidizing idle equipment. This single calculation kills more bad in-house decisions than any policy memo, because it forces tooling cost into the open where it usually gets ignored. Set a threshold band, not a single number. A reasonable rule: bring in-house only when projected volume is 1.5× the break-even point, leaving margin for utilization swings and the real cost of getting techs to competence. If you're hovering right at break-even, outsource — the operational flexibility is worth more than a razor-thin savings.

When outsourcing actually makes sense

Low-frequency, high-tooling jobs. Transmission rebuilds, frame work, EV high-voltage repair at low volume. The amortized equipment cost alone sinks the in-house case.

  1. Low-frequency, high-tooling jobs. Transmission rebuilds, frame work, EV high-voltage repair at low volume. The amortized equipment cost alone sinks the in-house case.
  2. Capability you can't staff reliably. If one technician represents your entire capability for a job family, you don't have a capability — you have a single point of failure. Outsourcing converts that risk into a contract.
  3. Surge and overflow. When bays are the bottleneck, a third-party overflow agreement protects uptime better than overtime. This pairs directly with how you schedule technician shifts and build surge plans — outsourcing is just another surge valve.
  4. Certification-gated work. OEM warranty work or safety-critical calibration where cert cost and liability outweigh the labor savings.

Certification-gated work. OEM warranty work or safety-critical calibration where cert cost and liability outweigh the labor savings.

When outsourcing is a bad idea

High-frequency core PM. The moment you outsource routine oil and brake work, you lose control of your most predictable throughput and hand a permanent markup to someone else.

  1. High-frequency core PM. The moment you outsource routine oil and brake work, you lose control of your most predictable throughput and hand a permanent markup to someone else.
  2. Anything that feeds your bay rhythm. If a job family keeps technicians loaded between bigger jobs, outsourcing it creates dead time you'll pay for regardless. The takt-time and bottleneck mapping view matters here — don't export the work that smooths your flow.
  3. Jobs where downtime cost dwarfs repair cost. If a day of truck downtime costs more than the entire repair, the extra turnaround latency of shipping the vehicle out usually makes outsourcing the expensive choice, even at a lower quoted rate.

Jobs where downtime cost dwarfs repair cost. If a day of truck downtime costs more than the entire repair, the extra turnaround latency of shipping the vehicle out usually makes outsourcing the expensive choice, even at a lower quoted rate.

Who should not restructure this right now

If you don't have clean job-level cost data — labor hours and parts tagged by job family — don't build this matrix yet. You'll be plugging in guesses and the break-even math will lie to you. Get at least two quarters of tagged work-order history first. Fleets running everything through a free-text work-order field will produce a matrix that feels rigorous and is actually fiction.

Also skip this if your fleet is mid-transition through a major mix change — big EV rollout, acquisition, anything that's reshaping your vehicle population. Wait until things stabilize, because today's break-even volumes probably won't survive next year's fleet.

Sample contract clauses that keep outsourcing from going sideways

Outsourcing moves work off your bay, but it also moves control. These are the clauses fleets most often wish they'd included after the first dispute:

  1. Turnaround SLA with teeth. "Vehicles returned within [X] business hours of parts availability; credits of [Y]% of labor per day beyond SLA." Without a credit mechanism, the SLA is decoration.
  2. Parts transparency. Right to see OEM vs aftermarket part choice and markup caps on pass-through parts. This is where third-party margins quietly balloon.
  3. Comeback / rework clause. Rework on the same complaint within 30–90 days performed at no charge. Protects you from paying twice for the same failure.
  4. Evidence capture requirement. Shop must supply before/after photos, failure notes, and old parts on request — critical for warranty recovery later.
  5. Data handoff. Repair details delivered in a structured format, not a PDF someone has to retype, so the work stays in your maintenance history.
  6. Volume-tier pricing. Pre-negotiated rate drops as annual volume crosses thresholds, so growth doesn't get penalized.

The data handoff clause gets skipped constantly and it's one of the more damaging omissions. Every outsourced job that comes back as a paper invoice is a hole in your vehicle history and your analytics.

A short real scenario

A regional last-mile fleet — roughly 160 vans and a dozen medium-duty trucks — was doing everything in-house, including ADAS calibration and occasional transmission work. Bays were chronically backed up and PM compliance had slipped into the low 70s.

They ran the matrix. Transmission rebuilds, about 6 per year, were outsourced immediately; the bay dwell those jobs caused was destroying PM throughput. Calibration volume came in around 40 per year, below their 1.5× break-even threshold, so that stayed outsourced for the time being. Meanwhile, they pulled some light brake overflow back in-house because the data showed they'd been farming out high-frequency work that actually smoothed their bay rhythm. Net effect over roughly two quarters: PM compliance climbed back into the high 80s, average bay dwell dropped, and outsourcing spend went down even though they outsourced more things — because they stopped outsourcing cheap, frequent work and started outsourcing expensive, rare work. Nothing dramatic week to week, but the shop stopped feeling permanently behind.

How to run the transition without disrupting uptime

If the matrix tells you to flip a job family, don't flip it overnight. Pilot it:

  1. Pick one job family with clear data and moderate volume. Don't start with your highest-risk work.
  2. Baseline it — current cost per job, turnaround, rework rate, bay hours consumed. You need a before.
  3. Run a 60–90 day pilot sending that family out (or pulling it in) while keeping a small control volume the old way for comparison.
  4. Measure the real delta — total cost including downtime, not just the invoice. Check rework and SLA adherence.
  5. Decide and document — keep, revert, or expand. Record the break-even assumptions so next year's review has a starting point.
  6. Schedule the review. Break-even volumes drift as your fleet changes. Re-run the matrix at least annually, and immediately after any significant mix shift.

Here's a simple pilot workflow visualization:

Process diagram

Keep a small control volume during pilots so you can measure delta without risking uptime.

Transition checklist

  1. - [ ] Job-level cost data tagged for at least two quarters
  2. - [ ] Break-even volume calculated per job family
  3. - [ ] 1.5× threshold applied, not raw break-even
  4. - [ ] Contract clauses in place (SLA, rework, parts transparency, data handoff)
  5. - [ ] Baseline metrics captured before the switch
  6. - [ ] Control group kept during pilot
  7. - [ ] Downtime cost included in the comparison, not just invoice cost
  8. - [ ] Annual re-review scheduled

Schedule the review. Break-even volumes drift as your fleet changes. Re-run the matrix at least annually, and immediately after any significant mix shift.

The thing most teams get wrong

There's an instinct to treat make-vs-buy as a loyalty question — "real fleets do their own work." It isn't. It's a utilization and risk question. The job families worth keeping in-house are the frequent, predictable ones that keep bays flowing. The ones worth sending out are the rare, tooling-heavy, skill-fragile ones that quietly eat throughput while looking cheaper because the labor rate seemed reasonable on paper.

Build the matrix with your own volume and cost numbers, set honest break-even thresholds, and revisit it on a schedule. The decision that drifted into place over three years can be undone in two quarters — and the fleets that do this deliberately almost always find they were outsourcing the wrong half of their work.

Build the matrix with your own volume and cost numbers, set honest break-even thresholds, and revisit it on a schedule. The decision that drifted into place over three years can be undone in two quarters — and the fleets that do this deliberately almost always find they were outsourcing the wrong half of their work.

Built for Fleet Managers Tailored to fleet maintenance operations and compliance requirements
Save Time Automate scheduling, notifications, and reporting tasks
Increase Uptime Reduce breakdowns with predictive maintenance alerts
Control Costs Optimize parts usage and maintenance budgeting