What Is Cloud Pricing?
Cloud pricing is a critical concern for businesses when adopting cloud computing technology. It refers to the cost model and the specific price points associated with the use of cloud services. Such services might include software applications, infrastructure, and platforms delivered over the internet.
Most cloud platforms allow businesses to pay for what they use, eliminating the need for significant upfront investments in hardware or software. However, understanding cloud pricing and its various components can be a challenging task. Deciphering cloud pricing and accurately comparing pricing between providers is critical for optimizing IT spending.
Cloud costs typically depend on the resources consumed (compute, storage, data transfer, databases) and the pricing model chosen (on-demand, reserved, spot instances). Understanding these components and their interplay can help businesses make informed decisions and optimize their cloud spending.
In this article:
Key Factors Affecting Cloud Pricing
1. Compute Costs
Compute costs are associated with the processing power required to run applications in the cloud. The price typically depends on the type of instance (virtual machine) chosen, the region where the instance is run, and the operating system used. Businesses can choose from a variety of instance types, each with different specifications and price points, to suit their specific needs.
The instance type determines the hardware of the host computer, including the processor speed, memory capacity, storage type, and networking capacity. Different applications require different types of instances. For instance, memory-intensive applications may require instances with high memory capacity while compute-intensive applications may require instances with high processor speed.
In addition to the instance type, the region where the instance is run also affects the compute costs. Cloud providers have data centers in various regions around the world, and the price of instances may vary between these regions due to differences in operating costs.
2. Storage Costs
Storage costs are another significant factor in cloud pricing. They refer to the costs of storing data in the cloud. Similar to compute costs, storage costs depend on the amount and type of storage used, and the region where the data is stored.
Different types of storage are available in the cloud, each with different performance characteristics and price points. For instance, block storage is suitable for workloads that require low latency and high IOPS, such as databases and high-performance applications. Object storage, on the other hand, is suitable for storing unstructured data, such as images, videos, and documents.
3. Database Pricing
Database pricing is a factor that can significantly affect cloud pricing. It refers to the cost of using managed database services in the cloud. The price depends on the type of database service (relational, NoSQL, in-memory), the capacity and performance of the database instance, and the region where the database instance is run.
Managed database services provide several benefits, including automatic backups, replication for high availability, and automatic scaling. However, these services come at a price. Businesses need to carefully evaluate their database needs and choose the right type of database service to optimize costs.
Learn more in our detailed guide to cloud cost optimization.
4. Data Transfer Fees
Data transfer fees are often overlooked, but they can significantly affect cloud pricing. They refer to the costs of transferring data into and out of the cloud. The price depends on the amount of data transferred and the region where the data is transferred.
Most cloud providers charge for data transfer out of the cloud, but not for data transfer into the cloud. The cost of data transfer out can add up quickly, especially for applications that serve a large amount of data to users, such as video streaming services. Businesses need to carefully monitor their data transfer costs and implement strategies to minimize these costs.
5. Cloud Pricing and Discounting Models
Most cloud providers offer a set of pricing models that provide varying levels of flexibility and price discounts. The three most common models are:
- On-demand pricing: On-demand pricing is the most flexible pricing model. It allows businesses to pay for cloud resources as they use them, without any long-term commitments or upfront payments. This model is ideal for businesses with unpredictable workloads, as it provides the flexibility to scale resources up or down based on immediate needs. The cost is typically higher compared to other pricing models.
- Reserved instances/VMs: Reserved instances offer a significant discount (up to 75% in most cloud platforms) compared to on-demand pricing, in exchange for committing to a specific amount of compute capacity for a set term (usually one or three years). This model is suitable for applications with predictable usage patterns. It requires upfront payment or monthly payments, which can lead to substantial cost savings over time.
- Spot instances/VMs: Spot instances allow businesses to bid for unused cloud capacity at hugely discounted prices (up to 90% less than on-demand rates for most providers). Actual pricing is variable and is based on supply and demand. However, these instances can be terminated by the cloud provider with very short notice if the demand for capacity increases or if the current spot price exceeds the bid price.
Related content: Read our guide to cloud savings
Cloud Pricing Examples from Leading Cloud Providers
Let’s see a few concrete examples of pricing from the world’s leading cloud providers.
Amazon Web Services (AWS) Cloud Pricing Examples
Compute (EC2)
Amazon Elastic Compute Cloud (EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers.
The pricing for EC2 is based on the types and sizes of instances you use. An instance is essentially a virtual server. The cost of an instance is determined by factors such as the physical hardware of the host computer, the location of the instance, and any additional features like enhanced networking or GPUs.
For instance, using a small instance type in the US East region for a month can cost as little as $0.0042 per hour on-demand. Assuming a 30-day month and 24/7 usage, this would amount to $3.024. However, a larger instance type with more powerful hardware and additional features can cost several hundred dollars a month. Remember, you’re only billed for the time your instances are running, so turning off instances when they’re not in use can result in significant savings.
Storage (S3)
Amazon Simple Storage Service (S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance.
S3 pricing is based on the amount of data you store, the region where your data is stored, and the frequency with which your data is accessed. For instance, storing 500GB of data in the US East region can cost around $10 per month if the data is infrequently accessed (using S3 Standard-IA storage class). However, storing the same amount of data but frequently accessed (using S3 Standard storage class) can cost upwards of $20 per month.
Additionally, there are costs associated with data transfer and various operations like PUT and COPY requests. It’s also worth noting that AWS offers a free tier for S3, which includes 5GB of storage, 20,000 GET Requests, and 2,000 PUT Requests.
Database (RDS)
Amazon Relational Database Service (RDS) makes it easy to set up, operate, and scale a relational database in the cloud.
The pricing for RDS is primarily based on the database instance hours, which is the hourly rate for running your DB instance. The cost of a DB instance hour depends on the DB instance class, which is essentially the computational and memory capacity of the DB instance.
For example, a db.t3.small instance (2 vCPU, 2GiB RAM) running MySQL in the US East region can cost around $0.036 per hour. However, a db.r6i.large instance (2 vCPU, 16GiB RAM) running the same database can cost around $0.25 per hour.
In addition to the DB instance hours, there are costs associated with storage, I/O, and data transfer.
Data Transfer
Data transfer pricing applies when data is transferred in or out of AWS services over the internet. For instance, data transferred in is generally free, while data transferred out to the internet is charged on a tiered basis.
For example, the first 1GB of data transferred out to the internet each month is free. However, the next 9.999TB is charged at $0.09 per GB, and the price decreases as the amount of data transferred increases.
Data transferred between AWS services in different regions is charged on both sides of the transfer. However, data transferred between AWS services in the same region is generally free.
Microsoft Azure Pricing Examples
Compute (Virtual Machines)
Azure Virtual Machines (VMs) are on-demand, scalable compute resources. The pricing for Azure VMs is based on the size and type of the VM, the region in which the VM is hosted, and the operating system.
For example, a general-purpose VM in the US East region running Linux costs around $0.0672 per hour for an instance with 2 vCPUs and 8 GB of memory. A memory-optimized VM in the same region running Windows costs around $0.1130 per hour for an instance with 2 vCPUs and 16 GB of memory.
Azure also offers discounted pricing for reserved instances, where you commit to using a VM for one or three years. For instance, a 3-year reserved instance of the general-purpose VM mentioned above would cost around $0.0032 per hour, a significant reduction from the pay-as-you-go price.
Storage (Blob Storage)
Azure Blob Storage is a service for storing large amounts of unstructured data, like documents, images, and videos. Blob Storage pricing is based on the amount of data stored, the redundancy level, and the region in which the data is stored.
For example, in the US East region, storing 1 TB of data in a locally redundant storage account costs around $0.018 per GB per month. If you choose geo-redundant storage, which replicates your data to a secondary region for greater durability, the cost would be around $0.037 per GB per month.
Azure also charges for data transactions (such as read and write operations) and data egress (data transferred out of a storage account). For instance, in the US East region, the cost for 10,000 read operations is $0.0004, and the cost for 1 GB of data egress is $0.01 between availability zones in the same region.
Database (Azure SQL Database)
Azure SQL Database is a fully managed relational database service. The pricing for Azure SQL Database depends on the deployment model, the service tier, the compute tier, and the amount of storage used. For instance, a single database in the general-purpose service tier with 10 DTUs and 250 GB of storage costs around $0.0202 per hour in the US East region.
Azure SQL Database also offers provisioned and serverless compute, which automatically scales compute based on workload demand and bills for the amount of compute used per second. For example, a serverless database in the general-purpose service tier with a maximum of 80 vCores and 240 GB of storage costs around $0.5218 per vCore per hour.
Data Transfer
Azure charges for data transfer based on the amount of data transferred out of Azure data centers. Inbound data transfer (data transferred into Azure data centers) is free. For outbound data transfer, the first 5 GB per month is free, and beyond that, the cost starts at $0.087 per GB for the next 10 TB (in the US East region).
Azure also charges for data transfer between Azure regions (also known as Geo-Replication Data Transfer). For example, the cost for transferring 1 GB of data between two Azure regions within the US is $0.02.
Google Cloud Platform (GCP) Pricing Examples
Compute (Compute Engine)
Google Compute Engine is a service that provides virtual machines that run on Google’s infrastructure. You can use these machines for a variety of tasks, such as running applications or storing data.
The cost of Google Compute Engine depends on several factors, including the type of machine (e.g., standard, high-memory, high-CPU), the region where the machine is located, and the operating system. For example, the cost of a standard machine in the US running Linux can start from $0.02 per hour.
Let’s consider a real-world example. Suppose you’re running a mid-sized web application. You might choose to run your application on a fleet of n1-standard-4 machines (4 vCPUs, 15 GB memory), which cost around $0.19 per hour in the US. If you have ten of these machines running 24/7, your monthly cost would be approximately $1,377.
Storage (Cloud Storage)
Google Cloud Storage is a service that provides scalable, durable, and highly available storage for your data. You can use it to store any type of data, from simple blobs to structured data like databases.
The cost of Google Cloud Storage depends on the type of storage (e.g., standard, nearline, coldline, archive), the region where the data is stored, and the amount of data stored. For example, the cost of standard storage in the US can start from $0.02 per GB per month.
Let’s say you’re running a media website and you need to store 5 TB of high-quality images. Using standard storage in the US, your monthly cost would be approximately $102.40.
Database (BigQuery)
BigQuery is Google’s fully managed, petabyte-scale data warehouse that enables super-fast SQL queries using the processing power of Google’s infrastructure. It’s a powerful tool for big data analytics.
The cost of BigQuery depends on how much data you store, how much data you process (query), and where your data is located. For example, the cost of storage is $0.02 per GB per month, and the cost of queries is $6.25 per TB.
Suppose you need to analyze 100 GB of data every day. Your monthly storage cost would be $2, and your monthly query cost would be approximately $18.75. That’s a total cost of $20.75 per month.
Data Transfer
Data transfer refers to the movement of data in and out of the Google Cloud. The cost of data transfer depends on the amount of data transferred and the destination of the data.
Ingress (data transfer into the Google Cloud) is generally free, while egress (data transfer out of the Google Cloud) can cost from $0.01 per GB to $0.15 per GB, depending on the destination.
For instance, if you’re streaming video content and you have a global audience, you might transfer 10 TB of data out of Google Cloud each month. Your monthly data transfer cost could range from $650 in the US East region to $850 in the Australia Southeast region.
Optimize Cloud Costs with Spot by NetApp
Cloud providers offer a myriad of options to build and scale your cloud infrastructure. As a result, however, the process of making sense of cloud pricing can quickly become overwhelming even to skilled practitioners.
Spot by NetApp offers a suite of tools to help you drive cost-efficiency in your cloud environment. With Spot’s solutions, you can take advantage of spot instances/VMs, even for mission-critical applications, and simplify your cloud infrastructure management. Learn more about Eco from Spot by NetApp.