A tech pulls up to a job, opens the truck, and the part he needs isn’t there. He knew it might happen because he grabbed what he thought he’d need this morning, based on a job description that was three lines long. Now he’s driving 25 minutes back to the shop, or worse, to a supply house, while the customer watches the clock and you eat the labor cost of a truck that isn’t earning.
If you run a plumbing, HVAC, electrical, or roofing business doing $1M to $25M a year, this isn’t a rare event. It’s Tuesday. And it’s Wednesday. It happens enough times a month that most owners have stopped counting, which is exactly the problem. Unmanaged truck inventory is one of the quieter ways this vertical bleeds $50,000 to $200,000 a year, and almost none of it shows up on a P&L line labeled “inventory loss.” It shows up as wasted labor hours, missed same-day slots, and callbacks that never should have happened.
Why parts inventory on trucks is harder than it looks
Most owners assume this is a stocking problem. Buy more of everything, load every truck heavier, done. That fixes nothing. Overstocked trucks tie up working capital in parts that sit unused for months, and they still run out of the one fitting a tech actually needs because nobody matched inventory to the job type going out that day.
The real issue is that truck stock decisions get made with almost no data. A dispatcher assigns a job. A tech loads what he remembers from the last similar call, or what’s left over from yesterday. Nobody’s tracking which SKUs actually move on water heater replacements versus drain clears, or which electrical panel jobs consistently need a specific breaker brand that’s back-ordered at the supplier. The information exists somewhere, usually scattered across invoices, job notes, and whatever’s in someone’s head, but nobody’s turning it into a stocking decision before the truck leaves the yard.
Add in the fact that most trades businesses run this manually through one of three methods:
- A whiteboard or spreadsheet that gets updated when someone remembers to.
- A text thread with the parts guy that goes quiet during busy weeks.
- Techs self-reporting what they used, days after the job, if at all.
None of these give you a real-time read on what’s on which truck. So when a job comes in that needs a specific part, you’re guessing whether truck 4 has it or truck 7 does. That guess costs you a callback, a second trip, or a tech standing in a customer’s driveway on the phone trying to find out who has the part he needs.
The dollar reality of a stockout
Run the math on your own numbers, but here’s what we typically see across shops this size. A single truck-to-supply-house trip costs somewhere between 45 minutes and 90 minutes of billable time once you count the drive, the wait, and the drive back. At a $95 to $150 effective hourly rate for a licensed tech, that’s $70 to $225 lost on labor alone, not counting the job that gets pushed to reschedule the next customer on the route.
Now multiply that by how often it happens. If you run 15 trucks and each one has even one part-related delay a week, you’re looking at 780 lost tech-hours a year, conservatively. That’s before you count the second-visit callbacks, the customers who cancel because the job ran long, and the reviews that never happen because the experience wasn’t clean.
That number is a real driver of the $50K-$200K annual leakage band we see across this vertical, alongside missed calls and stale estimates. It’s not the single biggest bucket, but it’s one of the most fixable, because the fix isn’t more inventory. It’s better prediction.
What an AI inventory agent actually does
This is where the manual approach hits its ceiling. A person can’t hold ten trucks’ worth of stock levels, thirty job types, and six months of usage history in their head and make a good call every morning before dispatch starts. An AI agent can, and it does it continuously, not once a week.
Here’s how it works end to end. The agent pulls three sources of data: the job type and details coming in through your dispatch system, the historical parts usage tied to similar jobs over the past 6 to 12 months, and the current stock level on each truck, updated as parts get used and restocked. From that, it predicts what a given truck needs before the job is even assigned, not after the tech is already three miles down the road wondering if he grabbed the right coupling.
When a water heater replacement gets booked for truck 6, the agent already knows what that job type has required on the last 40 similar calls for your business specifically, not some generic industry average. It checks what’s currently loaded on truck 6, flags any gap, and can trigger a restock request or reroute the job to a truck that’s already carrying the right parts. If your supplier has a known lead time on a specific SKU, the agent factors that in too, so you’re not finding out about a shortage the morning a job needs it.
This isn’t a static reorder point system like a retail inventory tool. It’s tuned to your job mix. A roofing business and an electrical business have completely different usage patterns, and even within one trade, a commercial service contract and a residential emergency call pull different parts. The agent learns your specific patterns instead of applying a one-size-fits-all rule.
The output a dispatcher or owner actually sees is simple: a daily readout of which trucks are stocked correctly for tomorrow’s jobs, which ones have a gap, and what needs to move where. No spreadsheet. No group text. No guessing.
Where this fits with the rest of your operation
Truck inventory doesn’t operate in isolation, and neither should the fix. The same discipline that predicts parts needs is what powers the other pieces of an automated operation we build inside Omni for trades businesses. The 24/7 Dispatch Voice Agent, for example, answers every incoming call, figures out if it’s an emergency or a scheduled job, books the slot directly into your dispatch tool, and texts the customer a confirmation. That booking data is exactly what feeds the inventory prediction. The system knows a job is coming before your team does, which gives it a head start on making sure the right truck is stocked for it.
The Estimate Follow-Up Agent plays a similar role on the revenue side. It tracks every estimate you send and follows up on day 2, day 5, and day 14 with messages tuned to the trade and the job size, which is how you recover the 15% to 25% of stale estimates that typically just die in an inbox. None of that is directly about parts, but it’s the same underlying idea: replace manual tracking with a system that never forgets and never gets too busy to follow through.
If you want a broader look at how these pieces connect, our ops automation work covers the full range of what gets built for back-office and field operations, and the voice systems page walks through how call handling ties into the rest of the stack.
What manual tracking actually costs you in owner time
Set aside the parts cost for a second. Think about who’s currently managing this. In most shops this size, it’s the owner, a lead dispatcher, or an office manager, and they’re doing it on top of everything else. Chasing down what’s on which truck, calling suppliers, rerouting a job because the wrong truck got sent, all of that eats into the 20-plus hours a week that owners already lose to dispatch overhead generally. Inventory chasing is a meaningful slice of that number, and it’s the kind of work that doesn’t need a human doing it. It needs a system that checks stock levels automatically and flags problems before they become a customer-facing issue.
If you’re the one fielding the “hey, do we have a 3/4-inch ball valve on truck 2” text at 7am, you already know what this is costing you, even if you’ve never put a number on it.
Where to start if you want this fixed
You don’t need to overhaul your entire operation to test this. Most owners start with a narrow question: how much are stockouts and second trips actually costing us in a typical month, and which job types drive it. That’s a data question, not a guessing question, and it’s exactly what a proper audit should answer before you commit to any new system.
This is what we do in an Omni Audit. It’s 60 minutes, no slide deck, and you walk away with three concrete outputs: a breakdown of where the leakage is actually happening in your operation, a realistic estimate of what it’s costing you annually, and a specific recommendation on which agent or system would close the biggest gap first. For a lot of trades businesses, truck inventory turns out to be a bigger drag than they expected once we actually look at the job data.
If you want to see what this looks like specifically for your trade, see Omni for trades businesses before you book anything. It’ll give you a clearer picture of what gets built and how it plugs into dispatch, parts tracking, and the rest of your field operation.
While you’re thinking through the field-service side of this, it’s worth grabbing our After-Hours Call Recovery Plan for Trades. It’s a practical worksheet for the calls that come in when your office is closed, and it pairs well with fixing truck inventory, since both problems come down to the same root cause: manual processes that can’t keep up with real demand. You can get the direct copy here.
If the numbers in this article sound close to your own operation, the next step is a conversation, not a pitch. Book a 60-min Omni Audit and we’ll walk through your actual job data, not a hypothetical.
The bottom line for owners this size
Trucks that aren’t stocked correctly aren’t a minor inconvenience. They’re a direct hit to billable hours, customer experience, and the reputation that drives repeat work and referrals in this industry. The fix isn’t buying more parts or hiring another person to manage a spreadsheet. It’s giving your operation a system that predicts what each truck needs before the job starts, based on real usage patterns instead of memory.
We’ve seen this pattern across plumbing, HVAC, electrical, and roofing businesses in the $1M-$25M range, and the leakage is consistent enough that it’s usually one of the first three things we look at in an audit. If you want to know what it’s actually costing your business, and what it would take to fix it, see the AI audit for trades businesses or go ahead and book my Omni Audit directly. You can also browse more operational breakdowns like this one in our guides library or check the blog for other angles on where trades businesses typically lose margin without realizing it.