When Is It Worth It To Build Custom Software?
Building and maintaining custom software can be a pretty big investment of time and money. Custom solutions aren’t just for big, established companies. Many startup business models depend on custom software development. We’ve had lots of conversations with decision-makers in a variety of situations, and we know where you’re coming from. Making the decision to build a software solution comes with excitement and some anxiety. The fear of failure: fear of wasting your time and money on something that doesn’t make a difference--or that makes a difference in the wrong direction. The excitement of creating something uniquely valuable that differentiates your company or product year after year. It’s the kind of decision that can keep you awake at night, no matter what you choose to do.
Are you on the verge of making the decision to build a custom software solution? However you end up solving your problem--whether it’s buying a software solution off the shelf, or building custom software--it’s time to tame your feelings and organize your thoughts. We’ve found that thinking through a few key questions helps you to make a build-versus-buy decision you can live with.
Who is the user?
Does your business (and your software solution) seek to serve an audience of a thousand company compliance managers? Or is your user base composed of tens of millions of DIY crafters? The first group might be trained to use an off-the-shelf solution with good results, and complain about anything that costs too much. The DIY crafters may notice any discontinuities of user experience in your site, and burn it down on Twitter the day after launch. If your audience is captive and small, lean toward an off-the-shelf solution. If it is diverse, heavily opinionated, and has the option to walk away at any moment, lean toward custom development.
How central is the software to your business’ core value?
Are you building a logistics company for Spanish olive producers? If so, there are lots of logistics packages out there that can be tailored to your needs. None of your customers are likely to need anything beyond what an off-the-shelf ERP system can deliver. The Spanish part and the olive part are where you use domain knowledge and your connection to the market to differentiate your business. You don’t need custom software - an off-the-shelf ERP system will get you where you need to go. On the other hand, if your business idea is an app that listens to your phone calls and tracks the progression of Alzheimer’s by listening to your speech, then you probably should plan for custom software to solve that unsolved (or undersolved) problem.
How close does an off-the-shelf solution come to solving your problem?
Can you buy something that can be tailored to meet your needs? If a low- or no-code solution gets you 90% of the way to proving your business idea, then why wouldn’t you do that? Here’s the catch: many off-the-shelf solutions look easy from the point of view of feature comparison charts and demonstrations; but if you buy based on a sales call, you probably won’t know for certain that it’s going to work until you’re pretty far down a committed path. Reserve some time for technical discovery, to kick the tires and get some specific use cases to work. Then make your decision based on a relatively deep dive, and the knowledge of the breadth of use cases that will be required for your launch.
How closely aligned are your goals and the goals of your off-the-shelf solution provider?
An important follow-up to the previous question: what path is your solution provider on? Are they aligned to add features that serve your users? Your no-code solution could get bought and merged into an organization that doesn’t care about your users. There are no ironclad guarantees, but if you can see how your solution provider’s goals are aligned with yours, that is as good an indicator as you can get of future roadmap alignment.
How important is the existence of a broad feature base to testing your product-market fit?
That’s a mouthful: let’s unpack. Suppose that you want to test a business idea that involves selling the user a discounted airline ticket. Your cool idea is that they’ll be more excited to buy a ticket to a destination that their friends are talking about, so you plan to build a bot that will eavesdrop on them, and recommend a destination based on what it hears. There are so many things to do to support the process of buying an airline ticket, but the one thing that will be different and unique about your idea might only take you a month to build. It seems like an easy idea to try; but if your very first customers are dissatisfied with anything about the process of buying the airline ticket (selecting times, airlines, flights, seats, extras; requesting changes; demanding refunds; etc) then your business idea will fail validation. So, you want to somehow use the off-the-shelf solution to handle all the selecting and buying and refunding; but you want to graft your special feature onto that solution. That’s where you want to try to find a low-code solution that keeps you from having to reinvent a very large process where users already have high expectations.
How long do you expect to use it?
Are you addressing an opportunity that will come and go away again in the space of 18 months? (Maybe your solution helps companies to solve a problem like Y2K, or the removal of support for 3rd party cookies by Google.) If your problem is not going to be around for very long, a low-code solution based on off-the-shelf components may be perfect for you. That way, you can get to market faster, not spend too much, and not feel bad when you’re shutting it down.
How difficult is it to build?
Is your business idea to build Matlab? The software that’s been written and tested by thousands of mathematicians and data scientists from all over the world? You should know what you’re in for. Matlab works pretty well, and unless your business idea is specifically to compete with Matlab, you should just use Matlab.
How important is it to you to follow where your users lead?
We help our clients test a lot of business ideas. We love to use low-code or no-code solutions when we can, because we want our client to learn as quickly as possible whether their business idea will work. Over time, when you’re committed to serving your users, you sometimes need the flexibility to go with them where they lead you.
Suppose your business plan involves leveraging a market segment that you can reach uniquely. And you have done enough research to identify a problem that you can solve for this segment with a low-code approach. When you release that low-code solution, you get some traction, but the users who are most willing to pay for it desperately want something that didn’t come out of the box. In this case, if you’re committed to serving those users that you can reach uniquely, you want the flexibility of custom software to give them exactly what they’re looking for.
Do you have enough at stake to make the effort worthwhile?
What all of this boils down to is whether you get more value out of it than you put effort into it.
A year from now, you don’t want to be regretting your decision to build an elaborate custom acquisition and onboarding experience just to find out that the real customer of your business is B2B (and doesn’t require onboarding at all). You’d be stuck maintaining something you didn’t need to build in the first place, while you steal time and resources from your central value proposition.
This isn’t an exhaustive list of everything you need to consider, but if you’re currently in an excitement / anxiety state, thinking through these questions will bring some order to your decision-making process. And you may find that some new things come into scope that you likely need to consider.
At Lab Zero, we love to build the things! But even more, we love to see our clients succeed. Are you staying awake, deciding whether to build custom software? We should talk.
Continue the conversation.
Lab Zero is a San Francisco-based product team helping startups and Fortune 100 companies build flexible, modern, and secure solutions.