by Chris Doig

Calculating the total cost of ownership for enterprise software

Nov 19, 2015
Enterprise ApplicationsFinancial Services IndustryIDG Events

The TCO is a vital part of the ROI calculation for enterprise software, yet too often it is ignored or underestimated. See what should be in the TCO estimate, and use that to make better software selection decisions based on the ROI.

cost cloud computing dollar sign hidden costs
Credit: Getty Images

The total cost of ownership (TCO) for enterprise software is the sum of all direct and indirect costs incurred by that software, and is a critical part of the  ROI calculation. However, it is often ignored or woefully underestimated. In this article, we look at the lifetime costs incurred by the three main types of enterprise software, namely:

  1. Cloud software, e.g. Salesforce or NetSuite
  2. Off-the-shelf software. Typically runs in an on-premises or hosted data center
  3. Custom software that is developed by a company, usually because it gives them a competitive advantage (e.g. Netflix’s movie selection software), or because they can’t buy something close enough to what they need.

There are variations like a hybrid between off-the-shelf and cloud, custom software in the cloud or even open source. We won’t specifically cover these, but they will incur many of the costs listed below. The purpose of this article is to list these costs to help build realistic TCO and ROI estimates for proposed software.

Startup costs

These are the costs incurred when getting new software into production.

Software. Off-the-shelf software usually has an up-front software cost plus user licenses. Remember to include any finance charges.

Hardware. The cost of servers and storage to run the software and other costs like backup and disaster recovery. Does not apply to cloud software.

Implementation. The cost of setting up, configuring and testing software so it can be used in production. Applies to all software, although with custom software the configuration is usually part of development. Also includes the costs of setting up things like backups, disaster recovery, etc.

Data migration. The cost of moving data from the old to the new system, including data format changes. Sometimes not economically viable, so the old system is archived in a read-only mode.

User licenses. For off-the-shelf software, these come in two flavors: named users and simultaneous users. For the cloud, licenses are usually named. Does not apply to custom software.

Training. The cost of training employees to use the software. Applies to all types of software. Note that in addition to end users, helpdesk and system admin employees must also be trained.

External system interface costs. These days no enterprise system operates in isolation, and will require interfaces to other systems in the organization.

Customization. Some companies customize off-the-shelf software to the way they work, rather than the reverse. Whenever the software is upgraded, there is a risk of the custom code no longer working. Sometimes the customizations can even prevent upgrades. For these reasons, it is usually better to stay with the “plain vanilla” version of the software where possible. Applies to off-the-shelf software.

Operational costs

These are the costs incurred while the software is in production.

Software maintenance & support. Usually sold as annual contracts with off-the-shelf software. Ensures you get all patches and upgrades. Typically costs around 20% to 25% of the total purchase price per year. With custom software, maintenance & support is an ongoing cost and is often much greater than the initial build cost over the lifetime of the product. Does not apply to cloud software.

Patches. The cost of applying security and bug-fix patches. Applies to off-the-shelf software.

User licenses. For off-the-shelf software, as the number of users grows in the company, new licenses must be purchased. If the number of users decreases, there are no refunds. For cloud software, licenses are typically priced per month, although they usually require an annual contract. Note that if the number of users increases, this cost increases. If the number of users decreases, this cost may decrease but often only when the contract is renewed.

Training. New users come from company growth and employee turnover. Also, when cloud vendors push enhancements some training may be required. 

Enhancements. Applies to custom software where the company must pay developers to provide new functionality as needed, e.g., when the business environment changes or new regulations come into effect. Remember to include documentation and project management costs. Can also apply to customized off-the-shelf software.

User & admin support. This is the cost of helpdesk and system admins and maybe a few analyst/developers who will be supporting the system. Bear in mind that you need to use the fully loaded employee cost, and factor in the costs of managing them.

Disaster recovery & high availability. This ranges from backups through to hot failovers and includes regular testing. Hot failover is very expensive to implement for off-the-shelf or custom software. With cloud products, it is often part of the standard offering, except for smaller vendors. However, there is an additional cost for cloud products, namely being able to recover if the cloud vendor goes out of business.

Data center. The costs of running the software in your data center like power, cooling and floor or rack space. Should also include indirect costs like security, data center maintenance, management of the data center and so on. If you are using a hosted data center, it is the monthly cost of running the hardware used by that software. Applies to off-the-shelf and custom software.

Downtime. The cost to the business when the software is unavailable. Custom software is not tested nearly as well as cloud or off-the-shelf software and is likely to have much higher downtime costs. Off-the-shelf software is more likely to go down than cloud software because cloud vendors invest in things like hot failover.

Depreciation. Writing off the capital cost of the software and the hardware it runs on. Does not apply to cloud software because it is usually an operational expense.

Upgrades. Off-the-shelf software usually has upgrades over the life of the software. These projects can be large, expensive, time-consuming and a real risk to the business. Sometimes also applies to custom software, where a new version is created. Does not apply to cloud software because most vendors continually upgrade their software.

Security. The costs of keeping an application secure, especially if the application is visible outside of the firewall. Does not apply to cloud software because it is paid for by the cloud vendor.

Retirement costs

These are the costs incurred when retiring software. Many companies forget that retired systems can still incur considerable costs, e.g. if you had grown out of one cloud product and moved to another. It was not worth the expense of migrating transactional data, but for compliance reasons it had to be available for several years. Another example is migrating from one helpdesk system to another. Is it worth moving things like the knowledgebase? In many of these situations, it is worth keeping the old system in and archived/read only mode for several years, and there are costs associated with that.

Data export. You want to be able to export existing data in a suitable format. Some vendors make it easy to get data into their systems, but there is little incentive to make it easy to get that data out again so it can be expensive.

Archived systems. You want to keep off-the-shelf or custom software available for reference. You need to keep it running on servers in the data center, with their associated costs. For cloud software, you want the system to be available for reference, preferably in a read-only mode. You want to pay a minimal amount for use of the system, but unless this was part of the original agreement, you could be forced to pay a lot more.

Inactive licenses. You may need to keep all user licenses on the system to preserve audit trails, but you certainly don’t want to pay full user costs for an archived system.


Use the costs above to help estimate a realistic TCO over the lifetime of the software. While this article lists the more common costs, be alert for others specific to your situation.

Typically the TCO and ROI are estimated at the start of a software selection project. When selecting one of several software alternatives on the shortlist, update the TCO of each product for more accurate ROI estimates. You may find much larger differences in ROI than expected, especially when comparing cloud, custom, and off-the-shelf software.

More on TCO and ROI: