Calculating the Total Cost of Software Ownership

Calculating Total Cost

Whether you’re using commercial software products or developing custom software to meet your technology needs there are always costs that need to be factored into your overall budget.  The term ‘Total Cost of Ownership’. or TCO, refers to the sum of all direct and indirect costs incurred by the software whether it be through development, purchase, implementation, training, or maintaining. Determining the TCO is crucial for budgeting and calculating the return on investment (ROI) of any IT solutions developed and/or purchased. It’s essential to plan ahead and anticipate how business changes and growth may influence costs down the line.

Here is a list of the most common factors affecting the TCO for both custom and commercial software solutions:

Initial Software Costs

Commercial Software Costs:  Off-the-shelf software typically has an up-front software cost. This can be a one-time fee, annual fee, or monthly subscription. This may include user licenses. Sometimes there are customization costs associated with commercial software solutions

Custom Software Development Costs: This is the cost associated with having your own unique software custom-built and tailored to your business. This price can vary depending on whether you’re using in-house developers or hiring a software development company. Project quotes may vary, some are fixed-fee while others are billed hourly. In other cases, you may only be building a minimum-viable-procuct version of the software.

Hardware Costs:  The cost of any equipment required to run the software such as servers or additional staff computers, tablets etc.

Data Migration:  The cost of moving any data you may have in old systems (such as spreadsheets) to new systems. This may include data format changes. Sometimes this can be done by archiving the old system in read-only mode if the costs are too great.

Implementation:  Costs associated with setting up the software, configuring, and testing software as well as setting up backups and recovery.  This cost is typically included in the overall estimate with custom software.

Training:  With any new software, commercial or custom, there is a learning curve. The cost of training staff and employees to use the new software can vary greatly depending on how radical the change is and how large the number of users will be.

Maintenance & Running Costs

Maintenance & Support: With commercial software there are typically regular upgrades. With custom software you’re responsible for doing those upgrades yourself. Maintenance and support costs may exceed initial development costs across the lifetime of custom developed software. Whereas with commercial software you may pay additional fees for bug fixes and patches.

Additional User Licenses: For commercial software new licenses may need to be purchased as the number of users increases with company growth.

Ongoing Training:  New employees may need to be trained on the software each time they are hired.

Enhancements: As your company grows and the technology market changes you may wish to add additional features, which will in turn result in additional costs. For custom or customized software these enhancements will need to be paid for solely by you, for commercial software these enhancements will either be included, available at an additional cost, or the vendor may not release any enhancements at all.

Support:  The cost of Q&A, system administrators, and anyone else who may be supporting the software system in place.

Backups, Recovery, & Security:  Backups for custom software tend to be more expensive, though you may have to pay for additional storage with commercial products. The same goes for security upgrades.

Retirement Costs

Ultimately as your business evolves and the technology landscape changes you may find you need to retire your software. If you have taken the time to develop and maintain custom software that grows alongside your business this is less likely to be necessary. If you do decide to retire software there are often the associated costs of exporting data and archiving systems.


In order to ensure that your technology is successful it is important to evaluate the total cost of ownership and how it affects return-on-investment as a part of the software selection process. Failing to do so can result in oversights that affect project outcomes, budgets, and selecting the best solution possible. There even some tools designed specifically to help businesses calculate the TCO.

You can also check out our blog post on ‘Measuring the ROI of Automation Software‘ to get a better idea of what the TCO for your project may be.