A contractor in the Permian Basin called us last spring frustrated with an AI tool he’d bought to write proposals faster. It worked. Proposals went out in half the time. Revenue didn’t move.
The reason was sitting in the next room. Every job still waited on one estimator to price it, and she was already two weeks behind. Faster proposals just made the pile on her desk taller.
That is the most common way AI money gets wasted: speeding up a step that wasn’t the constraint.
Every system has exactly one
This idea comes from the Theory of Constraints, and it holds up in every business we’ve audited. At any moment, one step limits how much work the whole company can finish. Improve anything else and you get more inventory waiting in front of the bottleneck, not more throughput.
The constraint is not always obvious, because it hides behind workarounds. People wait, batch, nag and double-check so long that the waiting feels normal. You don’t see a bottleneck; you see “that’s just how long it takes.”
How to find yours
Trace one piece of work from first contact to money in the bank. A lead, a quote, a job, an invoice, a payment. At every hand-off ask two questions:
- How long does the work sit here before someone touches it?
- How many items are waiting in this spot right now?
Wait time and queue length point straight at the constraint. The step with the biggest pile in front of it is your bottleneck. In a service company it is usually one of these:
- A single expert: the estimator, the senior tech, the owner who approves everything.
- A hand-off between systems: the field app that doesn’t talk to billing, so someone retypes.
- An approval loop: a change order waiting on a signature, a PO waiting on a credit check.
- A data problem: nobody can find the drawing, the price list, or the last version.
Then, and only then, apply AI
Once you’ve named the constraint, the question becomes specific: how do we get more work through this one step? Three moves, in order:
Exploit it. Make sure the constraint only does constraint work. If your estimator spends a third of her day chasing drawings and formatting PDFs, AI can take that off her plate today: pulling device counts from plans, filling the pricing template, drafting the cover letter. That alone can lift throughput by a third without hiring.
Subordinate everything else to it. Stop feeding the bottleneck faster than it can work. Qualify leads harder. Don’t let sales promise dates the constraint can’t keep. This is a policy change, not a software one, and it is free.
Elevate it. If the constraint is still the constraint after the first two moves, add capacity: a second estimator, or software built to multiply the one you have. Now the investment pays, because every extra unit of capacity at the constraint is extra throughput for the whole company.
Then the bottleneck moves somewhere else, and you start again. That cycle is what a healthy operation looks like.
A worked example
Back to the Permian contractor. The constraint was pricing. The fix was not the proposal writer he’d bought; it was an AI takeoff step that counted devices from the drawings and pre-filled his pricing sheet, so the estimator reviewed counts instead of making them. Her time per bid dropped by more than half. Then the proposal tool finally mattered, because bids were actually leaving the building.
Do this before your next AI purchase
Take an afternoon and draw the flow. Count the piles. Name the constraint out loud. If you want help, a Bottleneck & Workflow Audit does exactly this with timestamps from your systems and a day on your floor, anywhere from El Paso to Midland, Albuquerque or Tucson. Start the conversation here.