As specialists in software development, we work with many business leaders who have decided to invest in custom software to address a specific set of business challenges. Arriving at this decision is not always simple. In fact, it can be extremely challenging.

Often the process starts by looking at commercial-off-the-shelf software (COTS) solutions. Sometimes there are several that seem to fit the bill. The challenge in this instance is understanding the pros and cons of each, narrowing the list, and picking the one that’s the best fit.

Other times, the choices are positively underwhelming. None of the COTS options seem to meet very many of the customer’s fundamental requirements.

If you feel as though you’ve done your homework and find yourself in the latter position, it can be particularly difficult to know how to proceed. You can waste a lot of time and money continuing to bark up the COTS tree when it seems unlikely that’s where the answer lies.

This is the point at which decision makers typically consider another option: building a custom software application.

To help you as you weigh your options, here are seven signs you should be investing in custom software for your business.

1. The system you’re looking for doesn’t exist

Here’s a common scenario. After deferring the decision for a long time, you’ve finally determined that your organization needs a new system. There could be many reasons for this. You may have an existing system that’s served you well but just doesn’t cut it anymore because of lack of features, poor performance, bad user experience, high cost, etc.

Or it could be that your team has been managing to function using manual processes. You realize this is neither sustainable nor sufficient given the speed with which your business is growing.

Once you’ve identified the need, you fire up your web browser and start researching your options. You educate yourself on the various solutions available by conducting extensive research. You visit vendor websites, download white papers, and read product reviews. Then you start talking to the vendors that interest you.

At some point you’ll get demos of the products and begin talking to salespeople about the different solutions. Now that you’re armed with quite a bit of knowledge about what’s available, you might even embark on an RFI process to determine which solution best fits your needs.

Sometimes at the end of this laborious process, you realize it’s all for naught. None of the solutions you’ve evaluated provide the right mix of features, price, usability, flexibility and so on. One or more of them may meet some of your needs, but there are very big gaps. Some crucial, must-have features are simply not available.

2. Off-the-shelf solutions have too many features you don’t need

Another potential outcome of this process is that you do successfully identify two or three vendors whose solutions appear to meet most of your needs. And maybe they do it pretty well. The only problem is, these solutions also do a wide assortment of things that you don’t need now and likely never will. And because buying just the subset of things you need often isn’t an option, you will end up paying for a lot of irrelevant (to you) functionality.

3. A good user experience is critical

Extra cost is the obvious drawback of having too many irrelevant features, but the impact of this on the user experience is something to consider as well. If your users only need to perform a relatively small number of tasks using the system, they may find it hard to navigate through all the many other things the system does.

This kind of negative user experience can also have an impact on adoption levels. When users struggle to use the system, they’re less motivated to buy into it. They may even be tempted to go back to using the old method.

In contrast, when you decide to build a custom solution, you can design the user experience to meet the specific needs of your users.

4. There’s no way to customize it

Before you reject any of the COTS systems you’re considering, you might ask the vendors in question if their systems can be customized with the high-priority features you need.

This is often not possible because COTS systems are by definition intended to meet the needs of all the vendor’s customers. Your features can likely be added to the product roadmap, but the vendor will consider your requests alongside those of its other customers and make a priority call. Getting the features you need into the system could take many months, which is likely not soon enough to meet your needs.

5. You can’t integrate it with your existing systems

Another important consideration is the system’s ease of integration into your existing environment. Some systems simply cannot be easily integrated with other systems. For those that have open APIs, integration services mean additional cost. If the integration of your systems is important to your business, this could be a show-stopper.

6. You want to be in the driver’s seat

Sometimes you can work around many of these challenges and find a COTS solution that you’re happy with. But what if the software you’re searching for will be a key differentiator for your business? What if it gives you a competitive advantage in the market? If so, chances are you’re going to be less willing to accept a compromise.

On the other hand, if you decide to go with a custom solution, you get to be in the driver’s seat. Working with an experienced development partner using a proven iterative development process means you can be involved from beginning to end. You’ll have a lot of control over the final product, including supported features, the quality of the user experience, the level of integration with your existing systems, and more.

7. Your business is unique!

The final sign that you should be investing in custom software is that your business is unique! This is often the case with our customers. They have unique requirements and realize that there simply aren’t off-the-shelf solutions available that are going to satisfy their requirements.

Scott Brookes

Scott Brookes

Scott is NetFore’s Vice President of Software Engineering. For more information about NetFore and our software development services, visit