It starts with the software vendor’s additional costs (after all they are in business to make money) and carries on throughout the implementation.
One solution is to identify the total cost of ownership, not just the software, as clearly as you can prior to acquisition. If you establish and compare the total costs associated with each software package for 1 year and 5 years from the date of acquisition, you will have a much better idea of what to expect. Fairly obviously, a low cost for software does not necessarily mean that it is the best overall value.
Another solution is to look out for potential hidden costs and either include them or a contingency, and then manage them as best as possible at the time they occur. To help, here is a (not exhaustive) list of such potential hidden costs:
The software application licence – the modules you really need, rather than what you would like to have (or be talked into), what the prices are based on – number of concurrent system users, number of employees or records (eg for Human Resources Software), number of transactions or a mix of these? What are the different price bands? How it will work out for your organisation?
Training costs – number of days and day rate. What is the typical amount of training required for the average customer and specifically, what would be required for your organisation? What is the cost of setting up a training facility on your site? Or to use the vendor’s facilities?