I made both mistakes, and I made them within two years of each other. First I hired a full-time marketing coordinator at a point when we didn't have the internal structure to give her anything useful to do. She was talented, completely directionless because I didn't know enough about marketing to manage her, and gone inside eight months. Then, a couple of years later, I outsourced field supervision on a project to cut overhead, which turned out to be exactly the wrong call. The vendor didn't know our standards, the communication was a mess, and I spent more time managing the relationship than I would have spent just putting our own lead hand on the job.
Both errors cost real money. The over-hire cost a salary, some recruiting fees, and eight months of producing very little. The over-outsource cost me a client who didn't ask us back for phase two and left a review I still wince at. Neither failure was obvious from the front end. They both looked like reasonable decisions at the time, which is exactly why the hire vs. outsource question in a construction business needs a better framework than "which one is cheaper right now?"
The Question Most People Are Actually Asking
When contractors come to me with a hire vs. outsource question, they're usually asking it as a cost comparison: here's what the salary would be, here's what the vendor charges, which number is lower? That's a reasonable starting point and a completely insufficient way to make the decision.
The real question isn't which option has the lower number on the invoice. It's which option produces the best outcome at the true cost of producing it, including the cost of doing it badly, which is almost always the version that gets left out of the calculation.
Every outsourced function has a floor on quality. That floor is set by the vendor's understanding of your business, their responsiveness to your context, and whether the daily friction kills the working relationship. Every hire has a floor set by your ability to manage and develop that person in the role. If you can't do either of those things well, both options will produce mediocre results, just in different ways.
When overhead grows faster than your revenue, it's often the downstream consequence of staffing decisions made without this kind of full accounting: a position added at the wrong time, or a role scoped wrong, creating fixed costs that don't flex when the work does.
The Framework That Actually Holds Up
Here's how I think about it now. A function belongs in-house if it's recurring, central to how you deliver your service, and requires real institutional knowledge about your specific business. Your clients, your standards, your processes, the way projects actually run. Those three things together are the signal that you need someone embedded in the daily reality of the work, not a vendor relationship where you're one account among many.
A function belongs outsourced if it's specialized, irregular, or something a vendor does at such greater scale and focus that they will simply always do it better than you can. Legal is the clearest example: you don't need a lawyer on payroll, you need a good lawyer on call. HR compliance is similar. The rules change, the expertise is specialized, and a good outside partner will stay current in a way that a generalist employee managing it as one of eight responsibilities probably won't.
"You don't need a lawyer on payroll. You need a good lawyer on call."
Bookkeeping was a good outsource for us for years. At a certain point, the complexity of our project billing, job costing, and cash flow tracking had grown enough that having someone embedded who understood our specific financial structure saved meaningful time and improved the quality of the reporting. That was the signal to bring it in-house. Not a specific revenue number, but the point where the outsource relationship was producing friction that cost more than the savings justified.
Field supervision I should have known from the start: you cannot run a quality operation through a contractor relationship. The people on site need to be yours. What happens when critical knowledge lives in one person is a closely related problem, but in that outsourcing case the issue was that the critical knowledge wasn't living with anyone in the chain, because the person responsible was an outsider who couldn't build it fast enough.
The Cost of Doing It Badly
The single most useful question I've found when evaluating this decision is: what does it cost to do this badly?
If you hire someone into a specialized role — a financial controller, an estimator for project types outside your core, a marketing function — without the internal capacity to give them good direction, you'll almost certainly do it badly. You'll discover you don't know how to manage the position, you'll get mediocre output at full salary cost, and the best case is that you eventually let the person go and try again with a better understanding of what you actually need. The worst case is that you keep them because letting go feels disruptive, and the mediocre output compounds.
If you outsource something that requires daily involvement with your operations — project coordination, client communication during delivery, anything touching your quality standards on the job every day — you'll also do it badly. The vendor won't have the context. The communication overhead will be painful. The results will reflect the friction in the relationship, and the friction will be visible to your clients.
"The question isn't which option is cheaper on the invoice. It's which option produces the best outcome at the actual cost of producing it — including the cost of doing it badly."
That second part, the cost of doing it badly, is always part of the real calculation. It just tends to get excluded because we're optimising for the lower number up front rather than the actual cost of the outcome. The P&L numbers that hide what's actually happening are often hiding exactly this kind of diffuse cost, the outcome of a bad hire or a bad outsource decision showing up as margin erosion across several months without a clean attribution.
How to Apply This to Your Current Situation
If you're sitting on an active decision about whether to hire or outsource a specific function, run it through these three questions before you move.
First: can I actually manage this function well in-house? Not in theory, in practice, right now. Do you understand the role well enough to set expectations, give meaningful feedback, and evaluate the output? If the honest answer is no, a hire is likely to disappoint regardless of how good the person is.
Second: does this function require context that a vendor can't reasonably have? Day-to-day client relationships, live project decisions, quality standards that live in the details of your specific work. These are things a vendor can't absorb quickly. If the answer is yes, outsourcing is likely to produce the frustration you'd expect when context is missing.
Third: is the volume of this function consistent enough to justify a full-time role? Specialized needs that come up three times a year aren't positions. They're relationships. Build the relationship with a vendor or specialist who can be called in, rather than hiring a full-time person you won't be able to keep productively occupied. Why most small contractors stay small often includes a pattern of adding overhead too early — positions added before the volume justifies them — creating cost drag that slows growth instead of enabling it.
The Honest Version of "It Depends"
The hire vs. outsource question always involves some version of "it depends," but "it depends" should lead to specifics, not a shrug. It depends on whether you can manage the function. It depends on whether the task requires your institutional context. It depends on whether the volume is there to support a full-time role. Run those questions honestly and the answer usually clarifies.
The two mistakes I made shared a root cause: I was answering the cost question without answering the capability question. In the first case, I hired a marketing function without the ability to direct it. In the second, I outsourced a field function without understanding what context loss would cost me. In both cases, the number on the invoice looked reasonable. In both cases, the actual outcome cost a lot more than the number.
The Bottom Line
Hiring when you should outsource creates overhead you can't direct well and a position you'll eventually have to exit. Outsourcing when you should hire creates context gaps, quality drift, and frustrated clients. The framework that holds up across both mistakes is the same: ask what it actually costs to do this badly, and then be honest about which option is more likely to go badly given your current capability.
If you're working through a team structure question — whether to hire, what to outsource, how to build the right combination as you scale — that's exactly the kind of decision I work through with trades business owners in my construction business coaching. Getting it right early saves a lot of money and frustration on the other side of a wrong move.
Quick answers
How do you decide whether to hire someone or outsource a function in a trades business?
Ask two questions: Is the task recurring and central to how you deliver your service? And does it require institutional knowledge about your specific business? If yes to both, it likely belongs in-house eventually. If the task is specialized, irregular, or something a vendor does at greater scale and quality than you could, outsource it and stay focused on your core work.
What are the most common outsourcing mistakes in construction businesses?
Over-outsourcing things that require daily involvement with your team creates fragmentation and quality drift that's hard to diagnose. The vendor won't have your context, the communication overhead builds up, and the results reflect the friction. If a function touches your clients or your delivery quality every day, you probably need it in-house.
When should a small contractor bring bookkeeping in-house instead of outsourcing it?
When the complexity of your financial tracking — project billing cycles, multiple job costing lines, cash flow forecasting — has grown to the point where an outside bookkeeper can't stay current without significant overhead. The trigger is complexity and the friction it creates, not a specific revenue number.
Get The Builder's Playbook in your inbox
A short note from Eddy with a link to the week's post — one email a week, every Thursday, nothing else.
No spam. Unsubscribe with one click any time. Privacy policy.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.