The build or buy software dilemma is a critical decision for your business. So much so that we asked Rob Tregaskes, our Subject Specialist on internal technology, to weigh in. He shares his philosophy on when to build or buy and the pros and cons of each approach.
Buy or build? You’re not alone in asking this question – in fact, I get asked it all the time. As a rule of thumb, you should:
- Build the products that you sell as you can build in points of competitive advantage.
- Buy the tools your business uses when possible as they are cheaper, easier and faster to implement. When it’s not possible, you might have to build.
But, as I explain in this article, whichever way you go, there are pros and cons to both buying and building.
Advantages of buying software
It’s 2021, the Saas industry is already providing great solutions for almost all business needs. So if your company is trying to solve a common business problem, buying is the best option for you. Not only does the software work well but it brings a range of other benefits too.
It’s more cost effective
Making good software is very expensive. It takes teams of people in product and design, engineering, user research, security, infrastructure which all comes at a cost.
In 2019, Slack spent $157m on research and development alone. It doesn’t make sense for your business to try to match this level of investment. Not when you can start using the app from free up to £300 per user, per year.
You’re buying brilliance
Multiple software providers drive competition and continuous improvement. So by paying for software, you’re not only buying a tool but the innovation of a whole industry of thousands of designers, developers and entrepreneurs. Their ideas have created tried and tested, best-in-class approaches that result in high-quality software that will solve your problem.
Most business software you buy will offer you the option to tweak the setup with a few clicks to better fit your business. But often, the standard process encoded in the software will be derived from experience across tens of thousands of companies. And it will be better than your existing processes, driving efficiency while reducing risk.
Integrations come as standard
Buying off the market means the most common integrations will already be built for you. Just plug them in and you’re good to go. Most of these integrations will be updated automatically, ensuring a quality product long after your initial set-up.
It helps with hiring
Buying best-in-class software that’s used by other businesses means the people you hire will be familiar with how it works. This results in less training. And it can also make your business more desirable to applicants who want to work with recognised software that gives them more marketable skills.
Disadvantages of buying a software package
The biggest risk when buying software is making a bad choice. If you’re not ruthless about your goals and selecting the best option to deliver them, you can easily end up with the wrong software.
This creates all sorts of problems. From security exposures and a lack of integrations to users ignoring a tool that’s rubbish or difficult to use – choosing the wrong software is time-consuming and expensive.
Pros for building your own software
At the start of this article, I said you should sometimes build your own software. There are two situations where this is the case:
- It drives revenue; either by:
- Selling the software you have built many times over as a product.
- Using the software many times over for each customer as an enabler or differentiator of the service you offer.
- When you have no choice as the market genuinely doesn’t support your needs. This is very rare but more common in niche industries, or when you are very early to market and the SaaS industry hasn’t identified the opportunity yet.
You can get ahead of your competitors
Assuming that point one applies to you, the biggest advantage of building your own bespoke software is that you can solve a problem the market hasn’t seen.
One example is international e-commerce. When I first entered this market in 2014, you could have multiple e-commerce stores covering different geographies and currencies. You would need multiple fulfilment patterns to ship the orders, But the options for routing orders were poor, so we built our own. Now there are robust options on the market to buy that technology. But we achieved years of efficiency savings by building ourselves before the market was mature enough to have solved the problem.
Today, these little pockets of opportunity to build do exist. But usually only when a company is niche and has lots of processes that technology can make more efficient. However, self-building often isn’t straightforward, as I explain in the next section.
Cons for building your own software
Assuming your business truly has a unique problem to solve and building is the right option, it’s still a risky business.
Poor functionality and quality
The single biggest danger with developing your own software is that you don’t actually understand your requirements. Anyone who’s ever implemented software will tell you that you never truly know what you need until you’ve iterated through the implementation a few times. Which is time-consuming and expensive.
Self-built software means designing and implementing every integration too. You’ll need to keep an eye on a number of changelogs from the software you connect with. Then you’ll need to update your in-house software to maintain the connections. All of which is more work for your developers.
Project costs can quickly mount up
Whether you have or hire in-house developers or use an external agency, building software is expensive. The main issue is that businesses rarely account robustly for what they’re actually spending leading to hidden spiralling costs and risk.
Suppose you’re a software development company with in-house developers. In that case, you can pull them off other work, but that has an opportunity cost – potentially bringing your product to market later and, therefore, that delay’s worth of revenue.
Even with extensive (and expensive) change requests, this is all fine if you’re building software to sell and you can recoup the heavy investment. Or you’re using the software repeatedly to enable or differentiate the service provided to your customers.
But if you’re building software that already exists, it’s nearly always a false economy.
Very often, after launching your self-built software, you find that everybody in the market approaches key concepts in a slightly different way, so integration becomes painful. The reinvented wheel now needs reinvention. Costing another £10,000 or £20,000 in development costs each time. This quickly outstrips the license fee for the best-in-class, off-the-shelf software that does the same thing only better.
Built software isn’t as good for employees’ CVs
Another challenge is that incentives for employees to build expertise on in-house systems are not as strong as market-leading purchased systems. There’s less benefit to their CV or their careers. It also means more time training new hires on your system who might already be familiar with the market-leading tools.
Self-built software can often be a wasted investment
If you’re building a piece of software for a problem that other people can also see, it’s likely that at some point someone’s going to come along and build a SaaS company that will do a better job. You’ll end up ripping out what you built in-house and buying off the shelf. The question is, is it worth investing now in building your own software or can you wait for someone else to do it for you?
Buy or build?
If your business has an opportunity and the appetite to build software for an unsolved problem, it could be time to build, enhance your service or sell and potentially boost your revenue and profit.
However, what’s more likely is that your business needs to solve the same problem other businesses have already solved with software. In this case, you should always challenge build decisions really, really hard. Because you want your management team to focus on building your business rather than building software that already exists and will do a better job for the same price or less.