azure-total-cost-of-ownership-calculator

Azure TCO Calculator | Sanity-Check

Azure TCO Calculator

The Azure TCO calculator has had (more than) its fair share of criticism.  It has to be acknowledged that quite a bit of this has come from companies with a vested interest in highlighting its flaws.  At the same time, however, it also has to be acknowledged that the Azure TCO calculator, at the very least, has definite limitations.  At best, you should see it as loose guidance rather than as a meaningful estimate of what you are likely to pay.

At the end of the day, the purpose of the Azure TCO calculator is to sell you Microsoft Azure

Keep this thought front and center in your mind at all times.  The Azure TCO (total cost of ownership) calculator is basically a sales tool.  Its job is to present Microsoft Azure in the best possible light without actually lying.  This doesn’t mean that it’s without value, it just means that you need to be ready, willing and able to apply “sanity checks” to its output.

Sanity check #1 – remember the T in TCO stands for Total

When you think about the total cost of ownership of Microsoft Azure, remember that a public cloud migration isn’t just about having your apps in the cloud.  Those apps are (presumably) going to need storage for data and have networking capabilities as well and so these costs will need to be accurately factored into your calculations in order for your estimates to be meaningful. 

You’re also going to need to think about license costs and this is one area where the Azure TCO calculator can get interesting.  For example, if you have Microsoft Software Assurance, then you can make use of Azure Hybrid Benefit for Windows Server and essentially make your current license costs do double duty by using them to run Windows virtual machines on Azure at a lower cost.  If you don’t, however, then you either need to buy Microsoft Software Assurance or pay for the relevant licenses.

Sanity check #2 – think carefully about performance

Microsoft Azure is in competition with other public cloud vendors, most notably AWS and Google Cloud.  Given that decisions to move to the public cloud are often driven by the expectation of cost reduction and the ability to undertake cost optimization, it’s entirely understandable that these companies are all really going to push the potential financial advantages of the move.  Just remember that headline figures can be misleading. 

For example, two companies could charge different prices for what, at first glance, appears to be the exact same instance type, but if the one with the more expensive price actually offered a much better performance then it could actually end up working out to be cheaper.

It can be difficult to impossible to get this sort of detail from pure TCO calculators, but there are two ways you can get it.  The first is to have a good look at studies comparing the relative performance of different cloud operators and the second is to do it yourself.  Most cloud operators, including the big ones, give you the opportunity to try out their services for free for a certain length of time.  It can be very beneficial to take advantage of this, especially since it can act as a “dry run” for your “proper” migration.

For the sake of completeness, you don’t necessarily have to do two (or more) “lift-and-shift” migrations to run these comparisons.  You basically keep your own systems running as they are and then “lift” to the clouds you want to test in order to benchmark them.  In order to be fair, however, you have to resist the temptation to correct any issues you may have noticed on your first run.  Conditions have to be identical for the test to be fair.  There is, however, nothing to stop you noting issues and addressing them later.

Sanity check #3 – remember that pricing structure matters

Broadly speaking, the big cloud vendors all offer three main pricing models, on-demand, reserved instances and spot instances.  There may be other pricing variations and factors at play (such as the ability to use Azure Hybrid Benefit in Azure, if you have Microsoft Software Assurance) but these are the three big ones.

As a rule of thumb, in principle, you want to use spot instances as much as possible, with reserved instances being your next choice and on-demand pricing being a last resort.  Get this right and you really can enjoy massive cost savings and great flexibility.  Get it wrong, however, and you could end up wishing that you’d never migrated to the cloud in the first place.

For the sake of completeness, the other major factors which will influence your cost effectiveness are your ability to monitor costs (and avoid excess usage) and your ability to optimize apps in the cloud (to limit the use of cloud resources).

azure tco calculator

What Are the Limitations of Azure TCO Calculator

The Azure TCO calculator often gets a mixed bag of reviews. Some people find it very useful, other people find it very misleading.  The key point to understand is that the Azure TCO calculator is a tool.  To get the most from a tool, you need to understand how to use it and that starts by understanding what it does and also, and just as importantly, what it doesn’t do.

The Azure TCO calculator basically calculates running costs

The key point to understand about the Microsoft Azure TCO calculator is that it basically calculates what you are likely to pay to run any given set up in Microsoft Azure.  This will obviously play a major role in determining whether or not a move to Microsoft Azure is the right choice for your organization.  There are, however, a lot of other factors involved in this decision and the Azure TCO calculator (currently) does not help with them.  Here are three of the main ones.

The cost of the actual migration

It can take a lot of hard work just to figure out how to move to the cloud in the most cost-effective manner.  Even if you’re using a “lift-and-shift” approach and planning update your apps in the cloud, you may well find yourself faced with the choice of either running a hybrid cloud on a temporary basis, or going 100% public cloud straight away but accepting that this may cause you to lose out in other ways. 

For example, let’s say you have 15 servers.  Five of them are just about at the end of their useful life.  You were going to decommission them anyway, so really, you lose nothing by migrating them to the cloud and sending them for recycling.  Of the other ten, however, five are about halfway through their useful life and five are still fairly new.  You can move these to the cloud and try to sell on the hardware, but you may take a financial hit by doing so.  Alternatively, you could run a hybrid cloud until you need to replace the hardware anyway, but this adds complexity to your IT management and operations and may add to your expenses.

In short, over the long term, using the public cloud will save you the hassle of having to spend money updating your own IT infrastructure, however over the short term, you will still have to absorb the expense involved in the actual cloud migration and the Azure TCO calculator cannot help you calculate this cost, you will need to do it yourself and it is very much recommended to take the time and make the effort necessary to do it properly.

The cost of post-migration work

If you are planning on just doing a lift-and-shift migration or perhaps undertaking a bit of refactoring, then you are unlikely to get the full benefit of having your apps in the cloud.  There is certainly a very decent chance that you will make some cost savings, but containerized legacy apps running on a public cloud are highly unlikely to be able to make the most of the cloud the way cloud-native apps do.  That’s essentially the point of cloud-native apps.

This means that in addition to budgeting for the cost of the actual migration proper, you will also need to budget for the cost of redeveloping the apps in the cloud (or creating new ones).  Again, this is an upfront expense for which you can expect to reap the rewards over the long term, but it is still an expense you will need to factor into your calculations and it’s very much down to you to do the sums properly, the Azure TCO calculator cannot help here.

The cost of failing to undertake proper cost optimization

The Azure TCO calculator basically asks you to input details of your current set-up and gives you an idea of how much it would cost to run the same set-up in the Microsoft Azure public cloud.  This is fine as far as it goes, however, there is a massive degree of nuance.

Firstly, your current set-up is, of course, based on your current usage and if you optimize your apps in the cloud correctly, there is a distinct possibility that you could improve on this, possibly very substantially.  Secondly, it assumes that you will keep a grip on your “cloud hygiene”, basically only run what you need when you need it (and switch it off when you don’t).  If you don’t do this, then your costs will go up and again, that one is on you.  Thirdly, you need to make effective use of reserved instances to get the most value out of the public cloud and again, there’s nothing the Azure TCO calculator can do to help with this.

In short, the Azure TCO calculator is designed to give you “best case” pricing for running your current set-up to the cloud.  It certainly has its limitations, but if you accept it for what it is, it can be very useful.