Back to Blog Home

The Blog


By Micah Brandenburg
in Development Cornerstones

How much will it cost to develop custom software for your business? That’s a good question, but it’s not the best question. That’s because software has costs that recur after launch has happened. So it’s important to ask:
* What expenses should you plan for beyond the development itself?
* How do you know whether you’ve budgeted enough?
* How do the long-term costs compare to the long-term seat license costs from a SaaS (Software as a Service) product?

It’s wise to ask all of these questions on the front end of your software transformation project. Total cost of ownership (TCO) takes into account all costs associated with the software, both direct and indirect. As you tally up these expenses and fees, you’ll be in a better position to budget for the project and to calculate your potential return on investment (ROI). We usually recommend companies look at a three-year span for a good measurement of TCO vs. ROI.

Projected costs can be sorted into three main categories: acquisition, implementation, and maintenance. Let’s look at how it all breaks down.

Development Costs

Custom software means you aren’t stuck with the specs offered by a manufacturer—specs that may or may not match the needs of your business. Instead, you work with the developer to tailor the software for your industry, your processes, and your growth potential. Of course, that means you’ll need to get a project quote from the developer so you can plan your budget.

Development costs includes all the initial one-time costs of creating the software itself, including:

Development Team and Labor

If you’re developing the software in-house, this cost will consist of the time and labor your team invests. If you choose to outsource the development, you’ll come to an agreement with the software development company based on either a fixed project quote or hourly billing model.

Hardware

If you need new servers, updated computers, or new mobile devices to run the software, include these in your development cost estimate.

External system integrations

Your ERP doesn’t operate in isolation, and neither does any other component of your business software. Integration can be approached in different ways, so talk through the methodology with your development team to determine expected costs of integrations via API or other formats.

Development costs eat up a large chunk of your budget, but it would be a mistake to stop there. Getting the software up and running takes money, too.

Implementation and Training Costs

Once the development phase has been completed, you’ll need to set up the software and deploy it. Implementation may be included in your development contract, but be sure you get specifics on how many hours are planned, how many consultants there will be, and how much training is included. If these numbers are very low, ask how much each additional hour or support person will cost, since those numbers can add up quickly.

Implementation costs include setting up the software, configuring it according to usage specs, testing, and training your team to use the new system.

Software configuration and testing

This includes setting up the software based on your company’s requirements, configuring it for your users, and testing for usability and functionality. With a custom project, this step may be included in the project quote. Still, it’s good to know up front how much you can expect to pay for the time and labor involved.

Hosting

If you’re not hosting the software onsite, you’ll need to plan for monthly hosting fees.

Data migration

Moving data into the new system may require formatting changes or other changes to your existing data to ensure data quality and eliminate redundancies.

Training

Every new software system introduces a learning curve to users. Training costs will depend on how radical the change is and how deeply it affects current workflows and processes. The size of your workforce will also affect training needs and related costs. Don’t forget to plan for slowdowns in efficiency and productivity as employees learn the new system. These drops may not fall under your software budget, but they are very real costs that you should expect. These may be hard costs (money paid to actual trainers) or soft costs (the time your leadership team spends to train other employees).

Maintenance and Upgrade Costs

If we could deploy the software and call it done, the accounting office would be thrilled. But we also have to plan for ongoing maintenance and upgrades to the system to keep it functional and relevant over the long term.

Maintenance costs are often overlooked in the initial cost estimate because they don’t happen right away and they tend to be recurring costs. They include adding new functionalities, additional users, new software versions, patches or bug fixes, vendor contracts, and other long-term expenses.

Backups/Recovery

If you lose your data in a power outage or other technology failure, you don’t get a do-over. That’s why you need to invest in reliable backups or disaster recovery management solutions. These solutions can range in scale and cost depending on your needs and the size of your system, but they should be a non-negotiable for every organization.

Security

Ditto for security. In 2015, the average total cost of a data security breach was $3.8 million. With numbers like that at stake, you can’t afford to risk sensitive data to a hacker or disgruntled employee. This is even more important if you use or store data that must be PCI or HIPAA compliant.

Support

Support contracts ensure that you receive needed maintenance over the life of the software, both in terms of keeping it up (online) and in terms of keeping it working.

Version Updates

You should also factor in the cost of version updates so that your software continues to have access to the latest innovations. Usually, doing this on a quarterly or perhaps an annual basis will keep you up to date at a reasonable cost.

Bug Fixes

Once the software has launched, the development team will need to identify and correct any glitches or bugs.

Feature Additions

If your business environment or workflows change, you may need to add functionality to your software. Include project management and other project costs in this budget item.

Ongoing Training Needs

As you upgrade software, users may need additional training on the new features. You’ll also need to train new employees on the system.

Scaling the System

If you initially plan for 500 users, but your organization grows beyond that number, you’ll need to scale the software to accommodate the increase. That means overall costs will also scale. With SaaS products or Microsoft-based stacks, these costs will include seat licenses. For custom software, you can often avoid seat licenses, but will need to consider hosting, database storage size, and other back-end factors.

Staffing and Labor

Will you need to hire support staff or system administrators to maintain and manage the system internally? Will you outsource those requirements to someone else? How many people (and hours) will it take to keep the software running efficiently? Be sure you plan for both current and future staffing needs to keep your system operational and efficient.

Conclusion: Covering All Your Bases

Have we discussed every last possible cost associated with developing and maintaining custom software? Probably not. Every system and every organization is unique, and that means you’ll have to take a close look at the specifics of your project in order to parse out the details of your budget. However, this list gives you a good bird’s eye view of the common costs associated with software development and long-term maintenance.

One cost we haven’t discussed yet is the cost of retiring your software. When your platform has outlived its usefulness (and it will happen quicker than you think), you’ll need to replace it. When that happens, plan for the costs of exporting data, archiving systems, and getting rid of outdated hardware.

With a strong TCO estimate at the outset of the project, you should also be in a good position to create an accurate estimate of your return on investment. It’s also a good starting place for evaluating your options, determining whether to replace current hardware, and developing an implementation and training strategy.

If you fail to plan accurately, however, you may find that you have built an elaborate architecture that you can’t afford to maintain, especially as your business scales. But if you get the numbers write, you’ll make the most of your investment and set your company up for profit.

Micah Brandenburg
Micah ensures that our team listens to our clients' and contacts' needs and expectations so we can make the right recommendation on scope and process, and oversees the no-regrets customer experience we provide.
FIND Micah ON

Request a Free Consultation

Get Started Today