Cloud Pricing Explained: How AWS, Azure and GCP Actually Charge You

Updated July 2026 ⏱ 12 min read Cloud Pricing

How Cloud Billing Works

Cloud providers measure consumption at the resource level — each virtual machine, gigabyte of storage, and gigabyte of data transferred generates a separate line item on your monthly invoice. AWS, Azure, and GCP all use a pay-per-use model billed in arrears: you consume resources throughout the month and receive an invoice at the end of the billing period.

The fundamental unit of cloud billing is the vCPU-hour for compute and the GB-month for storage. A single m5.xlarge instance (4 vCPU, 16 GB RAM) running for 730 hours in a full month generates 4 × 730 = 2,920 vCPU-hours of consumption. At AWS US East on-demand rates of approximately $0.192/hr, this produces a compute bill of $140.16 before any OS licensing, storage, or networking charges.

Understanding this granular metering is critical because enterprise cloud bills often contain dozens or hundreds of line items. A typical mid-size deployment might include charges for EC2 instances, EBS volumes, S3 storage (multiple tiers), data transfer, CloudFront CDN, Route 53 DNS, RDS databases, EKS control planes, NAT gateways, Elastic Load Balancers, CloudWatch metrics and logs, and support plan fees.

Key Insight: The single most common cause of cloud bill shock is data egress. Inbound data transfer to the cloud is always free. Outbound data transfer to the public internet is typically $0.08–0.09/GB. A deployment pushing 100TB/month to users generates approximately $8,000–9,000/month in egress fees alone.

The 4 Pricing Models

Every major cloud provider offers four distinct pricing models for compute resources. Understanding when to apply each model is the single most impactful cost optimization lever available to cloud architects.

ModelDiscount vs On-DemandCommitmentBest For
On-Demand0%NoneDevelopment, testing, unpredictable workloads
1-Year Reserved~35% off12 monthsStable production workloads with predictable usage
3-Year Reserved~55% off36 monthsLong-running core infrastructure, databases
Spot / Preemptible~70% offNone — interruptibleBatch jobs, CI/CD pipelines, stateless workers
📊 Try it — Pricing Model Cost Simulator
Drag the slider to see how monthly cost changes across all 4 pricing models for a fleet of m5.xlarge instances
Instances 10
Hours / month 730

On-Demand Pricing

On-demand instances are billed per second (AWS, GCP) or per minute (Azure) with no upfront cost and no long-term commitment. This model is ideal for workloads that are irregular, unpredictable, or short-lived. The major drawback is cost: on-demand is the most expensive pricing model by a significant margin.

For enterprise workloads running continuously in production, operating entirely on on-demand pricing is wasteful. A common pattern is to maintain a baseline reserved fleet covering your minimum predictable capacity, while using on-demand instances to cover demand spikes beyond that baseline.

Reserved Instances

Reserved Instances (RIs) represent a billing commitment in exchange for a significant discount on the hourly rate. You commit to a specific instance type in a specific region for 1 or 3 years. AWS offers three payment options: All Upfront (maximum discount), Partial Upfront (moderate discount plus reduced hourly rate), and No Upfront (lower discount but no capital outlay).

The financial impact of Reserved Instances is substantial. A fleet of 50 m5.xlarge instances running 24/7 at US East on-demand rates costs approximately $9,600/month or $115,200/year. The same fleet on 3-year No Upfront Reserved pricing costs approximately $4,320/month — a saving of $63,360 annually. Over three years, the total saving exceeds $190,000.

AWS introduced Convertible Reserved Instances which allow you to exchange one RI for another of equal or greater value, providing flexibility to change instance families, operating systems, or tenancy during the term. This is recommended for most enterprise deployments as instance families evolve over 3-year periods.

Spot and Preemptible Instances

Spot Instances (AWS), Spot VMs (Azure), and Preemptible VMs (GCP) leverage unused cloud provider capacity at discounts of 60–90% below on-demand pricing. The critical caveat is that these instances can be interrupted with 2 minutes notice (AWS) or 30 seconds (GCP) when the provider needs the capacity back.

Despite the interruption risk, spot instances are extremely valuable for the right workload classes. Batch data processing jobs, machine learning training runs, CI/CD build workers, rendering farms, and genome sequencing pipelines can all be designed to tolerate interruptions using checkpointing and job retry logic. Engineering teams running ML training on spot instances commonly report 70–80% reduction in AI infrastructure costs.

Savings Plans

AWS Savings Plans and Azure Savings Plans are a more flexible alternative to Reserved Instances. Instead of committing to a specific instance type, you commit to a dollar amount of compute usage per hour. Compute Savings Plans apply across EC2, Fargate, and Lambda; EC2 Instance Savings Plans apply to a specific instance family in a region with slightly higher discounts.

GCP offers Committed Use Discounts (CUDs) for 1 or 3-year commitments on vCPUs and memory, and Sustained Use Discounts that are applied automatically (no commitment required) when a resource runs for more than 25% of a month.

Hidden Cost Factors

Beyond compute and storage, enterprise cloud bills contain numerous secondary cost categories that are frequently underestimated during architecture planning:

💡 Click each hidden cost to see real numbers
These charges rarely appear in initial budget estimates

Official Provider Calculators

While this estimator provides accurate planning-level estimates, always validate final architecture decisions against the official pricing calculators before committing:

Frequently Asked Questions

Why is my cloud bill higher than I expected?

The most common cause is data egress — outbound data transfer to the public internet, typically billed at $0.08–0.09/GB, is frequently left out of initial budget estimates. Other common surprises include NAT Gateway processing charges, inter-AZ data transfer, and CloudWatch/log ingestion fees that accumulate quietly across dozens of line items on a typical enterprise invoice.

What's the difference between on-demand, reserved, and spot pricing?

On-demand has no commitment and the highest hourly rate. Reserved Instances commit to 1 or 3 years in exchange for 35–55%+ discounts. Spot/preemptible instances use unused provider capacity at 60–90% discounts but can be interrupted with little notice, making them suitable only for fault-tolerant, checkpointed workloads.

What is a vCPU-hour and why does it matter?

A vCPU-hour is the fundamental unit cloud providers use to meter compute consumption — a 4-vCPU instance running for one hour generates 4 vCPU-hours. Understanding this unit matters because it's the basis for calculating exactly how instance size and runtime combine to produce your bill, independent of which pricing model you choose.

Should I use Reserved Instances or Savings Plans?

Reserved Instances offer slightly higher discounts but lock you into a specific instance family and region. Savings Plans (AWS) or Committed Use Discounts (GCP) commit to a dollar amount of usage instead, giving you flexibility to change instance types as your architecture evolves — a better fit for most teams unless your infrastructure is genuinely static.

The Four Cloud Pricing Models Explained

Every cloud resource can typically be purchased under one of four pricing models, each with different cost, risk, and flexibility profiles. Understanding when to use each model is the foundation of cloud cost management.

On-demand pricing charges a fixed hourly (or per-second) rate for resources as they are used, with no commitment required. It is the most expensive pricing model but provides maximum flexibility — start and stop any time, scale up or down immediately, and only pay for what you use. On-demand is appropriate for variable workloads, development and testing, and new workloads where utilization is unpredictable.

Reserved instances and savings plans commit to a minimum usage level in exchange for a discount of 35–57% versus on-demand. The commitment can be 1 or 3 years, with all-upfront, partial-upfront, or no-upfront payment options. Reserved pricing is the right model for any production workload that runs continuously and whose resource requirements are predictable. The financial case is simple: if a workload will run for more than 8 months, a 1-year reservation almost always costs less than paying on-demand.

Spot or preemptible instances use spare cloud provider capacity at 60–90% discounts. The trade-off is that instances can be interrupted with 2 minutes warning (AWS) or terminated at any time (GCP) when the provider needs the capacity back. Spot is ideal for fault-tolerant batch processing, machine learning training with checkpointing, CI/CD build pipelines, and any workload that can gracefully handle interruptions.

Committed use contracts (primarily GCP) and enterprise agreements (all providers) are negotiated volume discounts for organizations committing to a minimum annual spend. These typically require $1M+/year in spend to negotiate meaningfully, and the discount varies by service, region, and relationship. Enterprise agreements can deliver 20–40% discounts on eligible services for large organizations.

The Five Cloud Pricing Surprises That Blow Budgets

Data egress is the most common source of cloud bill shock. Transferring data from cloud to the internet costs $0.085–0.09/GB. A web application serving 5 million users who each download 20 MB per session generates 100 TB of egress per month — a $9,000 egress bill that can dwarf the compute cost. Many architects design for compute cost and discover egress cost in production.

NAT Gateway charges are invisible until you see the bill. Every byte of internet traffic from private subnets passes through a NAT Gateway at $0.045/GB processed. An internal microservices architecture where services make external API calls, download packages, or access public endpoints can process hundreds of GB/month through NAT Gateways without anyone realizing it. Switching to VPC Endpoints for AWS service traffic ($0.01/GB) eliminates NAT charges for S3, DynamoDB, and other AWS services.

CloudWatch Logs storage and ingestion costs $0.50/GB ingested and $0.03/GB/month stored. An application logging verbosely at 1 GB per hour generates 720 GB/month in CloudWatch — $360/month in ingestion costs alone. Log filtering, sampling at high-throughput endpoints, and routing verbose logs to S3 instead of CloudWatch can reduce log costs by 80–90%.

RDS I/O costs on Aurora (not standard RDS) charge $0.20 per million I/O requests. A write-heavy database with 100 million I/O operations per day incurs $20/day = $600/month in I/O charges on top of instance and storage costs. Aurora I/O-Optimized pricing eliminates this charge for a 30% storage premium — the break-even is approximately 10M I/O operations per day per 100 GB stored.

Multi-AZ and cross-AZ data transfer adds complexity. Multi-AZ database deployments double the instance cost. Cross-AZ data transfer charges $0.01/GB in each direction — a seemingly small amount that becomes significant in microservices architectures with high inter-service call rates across availability zones.

About the author

Mustafa M. Elrafie — IT Infrastructure Engineer · Founder, CloudCalcep

Mustafa M. Elrafie is an IT infrastructure engineer based in Dammam, Saudi Arabia with 21 years of hands-on experience designing, deploying, and running enterprise server, storage, and cloud environments across the GCC region.

✓ Pricing verified against provider public rate cards

Ready to estimate your cloud costs?

Use our free estimator to calculate and compare costs across AWS, Azure and GCP with real-time pricing across 130+ global regions.

📊 Open the Cloud Calcep →