Azure Storage pricing

Prior to using cloud, someone once told me: there is no charge for transferring data in to Cloud, but you are charged for taking it back out. This is of course… not true.

When you are experimenting with Azure Storage in a learning environment, perhaps copying a few large’ish media files up to a storage account, you may not consider what the costs are (beyond the storage cost in terms of space, maybe) and you may never think to review storage costs later. Indeed, if you are in a free trial period, as long as you don’t exceed 50 GB, you’ll never be charged.

When designing Enterprise systems, estimating storage costs is hugely important and the charges add up quickly. Without proper planning, you’re going to be taken by surprise when you are invoiced by MSFT.

Since blobs are common among many deployments, we’ll focus on blobs. In regards to pricing, generally you will need to pay attention to the following: the storage tier (hot, cool, or archive), total amount of data stored, write operations, and read operations.

Storage tiers

There are three main storage tiers: hot, cool, and archive. Contrary to what some believe, “hot” has no performance advantage over “cool”. Archive has some additional caveats, but in general only use archive when you’re reasonably certain you can wait “on the order of hours” to retrieve archive tiered data, as it is not considered “online”. By default, a new storage account will be deployed as hot, but you can easily change it at deployment time or afterwards. Be warned that changing tiers will cost you; how much depends.

Storage tier overview

Hot: Storage set as hot has the highest storage costs (per gigabyte) and the lowest transaction costs.

Cool: This tier of storage has a lower storage cost compared to hot, but higher transaction costs.

Archive: The lowest cost per gigabyte, with the highest transaction fees. Also, this is offline storage. If you need to retrieve it, this will take literally hours.

Scenario time

The scenario: You are currently storing around 5TB of data on-premise using some NAS appliances. This 5TB of data is also replicated to a second data center for backup purposes. You want to stop replicating this data to the second data center and replicate it to Azure instead. At this time, the goal of replicating the data is strictly for backup purposes, but you want any file not older than 90 days “online” for immediate retrieval; however, you don’t plan to access the data very often, if at all. Any file older than 90 days needs to be retrieved within 24 hours. The 5TB of data is made up of small media files, each around 250KB each. How much will it cost?

The MSFT storage pricing calculator provides an easy way to reasonably estimate storage costs by plugging in numbers and selecting other relevant storage information, but it assumes you understand how the storage platform works.

5 TB is 5368709120KB and 5368709120 / 250 = 20,971,520. You’ll consume 20,971,520 write operations. If 100,000 write operations is charged at $1, that’s a charge of $209.72 just to write the data to Cool storage. You will then pay $51.20 in storage costs. This all assumes a single billing cycle.

Total DataFile SizeWrite OperationsWrite ChargesStorage CostsTotal Billed from MSFT
5 TB250KB20,971,520$209.72$51.20$260.92

If you do not write any more data, there will be no more write charges. Bear in mind though, there are numerous operations that are counted as write operations, such as SetBlobTier (see below).

Or, let’s say you have 5TB of data, but rather than being made up of 250KB files, it is made up of 200 MB files.

Using our example scenario, 5 TB is 5242880MB and 5242880 / 200 is 26,214. You’ll consume 26,214 write operations. If 10,000 write operations is charged at .1, you’ll pay $.26 cents. You wrote the same amount of data as the first example, but because the files were substantially larger, there were far less write operations. You’ll still pay the $51.20 in storage costs.

Total DataFile SizeWrite OperationsWrite ChargesStorage CostsTotal Billed from MSFT
5 TB200MB26,214$.26$51.20$51.46

Of note, if you need to archive this data long-term (perhaps contractually or for compliance reasons), you’d want to move the data to the Archive tier most likely. However, bear in mind that SetBlobTier is a write operation and you’ll once again pay for write operations. So, in the first example using the 250KB files, you’ll pay $209.72 to move that data to archive and $.26 to move it to Archive in the second example using the 200MB files.

This was a relatively simple example of Azure Storage pricing. The takeaway here is that you really need to understand the storage platform, your workloads, and your data in order to appropriately design storage solutions and to estimate the cost.

Leave a comment

Close Bitnami banner