For newbies to Azure, one of the most baffling aspects of the service is pricing. We’re not going to lie, it’s not always easy to put a price on an Azure deployment ahead of time. With projects having many variables and different dependency arrangements, plus the varied nature of Azure’s pricing model; budgeting accurately can prove challenging. Sometimes though, understanding the basics is an important first step, so let’s look at some of the ways Azure services are charged so you can make sense of the costs involved in your projects.
Launching a workflow or developing an app/service on Azure is broadly analogous to running a car in terms of the ways costs are incurred. With a vehicle, you have certain unavoidable costs such as your lease payment and insurance costs. Then you have the variable costs such as maintenance and fuel, which broadly correlate with how much you use your vehicle. Then there are the “nice to haves” such as an extended warranty, which provide that extra reassurance should any unexpected problems show up. Running a service in Azure is no different, with costs that are unavoidable, costs that fluctuate depending on usage, and costs that are optional.
What is consumption pricing?
If you’ve done some research into Azure pricing, you’ve likely encountered the term “consumption pricing.” This is (as expected) a model of pricing where the charge reflects the amount of a resource consumed. Contrast this with a subscription-based model, where you’ll pay exactly the same monthly cost for a service which you may use to varying degrees from one month to the next.
However, this doesn’t paint the full picture…
Within the consumption pricing model, you’ll find your various project costs fall into two categories: time-based pricing and pay-per-use pricing.
While these costs are referred to as consumption-based (because time is consumed), in practical terms they are usually fixed costs because you’ll want to keep your cloud deployment running 24/7. These are the easiest costs to calculate as you pay for a set amount of resource – memory, computing power or network capacity – on a monthly or perhaps hourly basis.
The hourly cost varies when higher computing capacity is specified for a locally redundant SQL database. This cost remains fixed, even if you never require the amount of computing power you’ve specified.
Similarly, should you want to create, build and test web apps, Azure offers hourly price plans with pre-specified storage and instance limits. Again, you pay for the full amount of storage you’ve allocated, not the quantity you actually use.
Seems simple, right? Well, to a point yes, as most Azure services can be procured under a time-based model. However, such plans come with usage thresholds, and it’s when these are exceeded that things become a little more complex…
Once usage thresholds are breached, charges accrue on a per unit used basis. This can make budgeting more difficult, as these charges will be based on dependencies and variables some of which may be outside your control. Virtual machines for example come with a variety of additional, variable costs in addition to the compute element which is charged on a monthly basis. The full cost of a VM will include:
• The monthly computing costs (fixed).
• Storage charged per GB (variable)
• Data egress (data leaving Azure) charged per GB (variable)
The graph below shows how the monthly costs associated with a virtual machine might fluctuate. Please note that this graph is purely illustrative.
Some services themselves are charged based on usage, such as Azure’s service bus offering, which charges on a “per million operations” basis.
When a service is charged on a usage basis you might see: $/per execution, $/per API call or $/per gigabyte.
Let’s summarise what we’ve discussed:
• Most Azure services are available on time-based pricing plans. This involves paying for blocks of resources, and you’re charged the same whether you use these resources or not. These plans come with usage thresholds.
• Usage-based charges are accrued when thresholds are breached on time-based plans, or when extra, supplementary services are required. These charges can be hard to forecast.
• Some Azure services (such as virtual machines) incorporate a number of individual charges both, time and usage-based. The result is that the your monthly bill is likely to fluctuate somewhat depending on demand.
Predicting the cost of an Azure deployment involves careful analysis of the big picture. It’s important to consider resource allocation, how different services interact with one another and how these interactions might affect the running costs of your projects.
To get a handle the cost of your projects, get in contact!
Ensuring a secure IT Landscape
We customize our services to meet your specific business needs. Whether you have a single location or multiple operations across the country or around the globe, Centarus will partner with you to implement the right IT solutions to help you reduce costs, streamline your processes, and increase productivity. Our team of experts will ensure that you and your team are not only working in the most secure way possible on your IT environment, but also that you are prepared for a secure future too. Please don’t hesitate to get in contact with us.