GitHub

Cloud Pricing Comparison — AWS vs Azure vs GCP

Indicative, not a quote. Prices are normalized to a common unit per capability and carry a confidence tag (live = pulled from the provider’s pricing API; list = published list price). Each row shows its as_of date. Excludes committed-use discounts, support, and tax. Cloudflare is covered on its own page (partial, edge-native stack) — its standout is $0 egress.

Unit: USD per GB-month

ProviderServiceUnit priceSourceAs of
AWSS3 Standard$0.023live2026-06-30
AzureBlob Storage (Hot, LRS)$0.0208live2026-06-30
GCPCloud Storage Standard$0.02live2026-06-30

Cheapest of the three: GCP at $0.02/GB-month.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.023, 0.0208, 0.02], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "Object Storage \u2014 USD per GB-month", "yaxis": {"title": "USD per GB-month"}, "height": 320}}

Assumptions: Standard/hot tier, single-region, locally-redundant (LRS-equivalent); Capacity (data-at-rest), first pricing tier. Excludes: Request/operation charges, Data egress, Replication/GRS, Lifecycle transitions.

Unit: USD per GB-month

ProviderServiceUnit priceSourceAs of
AWSEBS gp3$0.08live2026-06-30
AzurePremium SSD Managed Disk$0.12list2026-06-30
GCPPersistent Disk (Balanced)$0.1live2026-06-30

Cheapest of the three: AWS at $0.08/GB-month.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.08, 0.12, 0.1], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "Block Storage (SSD volume) \u2014 USD per GB-month", "yaxis": {"title": "USD per GB-month"}, "height": 320}}

Assumptions: General-purpose SSD volume, provisioned capacity; Excludes provisioned IOPS/throughput add-ons. Excludes: Provisioned IOPS/throughput, Snapshots, Egress.

VM Compute (general purpose, ~2 vCPU / 8 GB)

Section titled “VM Compute (general purpose, ~2 vCPU / 8 GB)”

Unit: USD per vCPU-hour

ProviderServiceUnit priceSourceAs of
AWSEC2 m5.large (2 vCPU)$0.048live2026-06-30
AzureD2s v5 (2 vCPU)$0.048live2026-06-30
GCPe2-standard-2 (2 vCPU)$0.0335live2026-06-30

Cheapest of the three: GCP at $0.0335/vCPU-hour.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.048, 0.048, 0.03350571], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "VM Compute (general purpose, ~2 vCPU / 8 GB) \u2014 USD per vCPU-hour", "yaxis": {"title": "USD per vCPU-hour"}, "height": 320}}

Assumptions: On-demand Linux, general-purpose 2 vCPU/8 GB reference SKU, normalized per-vCPU; No reserved/committed-use discount. Excludes: Reserved/savings-plan discounts, Attached storage, Egress, Windows licensing.

Unit: USD per 1M requests

ProviderServiceUnit priceSourceAs of
AWSLambda$0.2list2026-06-30
AzureFunctions (Consumption)$0.2list2026-06-30
GCPCloud Run / Functions$0.4list2026-06-30

Cheapest of the three: AWS at $0.2/1M requests.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.2, 0.2, 0.4], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "Serverless Functions / Edge Compute \u2014 USD per 1M requests", "yaxis": {"title": "USD per 1M requests"}, "height": 320}}

Assumptions: Request/invocation price only; After any free monthly allowance. Excludes: GB-second compute duration, Egress, Provisioned concurrency.

Managed Relational DB (PostgreSQL, ~2 vCPU / 8 GB)

Section titled “Managed Relational DB (PostgreSQL, ~2 vCPU / 8 GB)”

Unit: USD per instance-hour

ProviderServiceUnit priceSourceAs of
AWSRDS PostgreSQL db.m5.large$0.178list2026-06-30
AzureAzure DB for PostgreSQL (Flexible, D2s_v3)$0.14list2026-06-30
GCPCloud SQL PostgreSQL (2 vCPU)$0.1list2026-06-30

Cheapest of the three: GCP at $0.1/instance-hour.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.178, 0.14, 0.1], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "Managed Relational DB (PostgreSQL, ~2 vCPU / 8 GB) \u2014 USD per instance-hour", "yaxis": {"title": "USD per instance-hour"}, "height": 320}}

Assumptions: Single-AZ managed PostgreSQL, ~2 vCPU/8 GB reference instance, on-demand. Excludes: Storage + IOPS, Multi-AZ/HA, Backups beyond free, Egress.

Unit: USD per GB

ProviderServiceUnit priceSourceAs of
AWSEC2/S3 egress$0.09list2026-06-30
AzureBandwidth egress$0.087list2026-06-30
GCPNetwork egress$0.12list2026-06-30

Cheapest of the three: Azure at $0.087/GB.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.09, 0.087, 0.12], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "Internet Data Egress \u2014 USD per GB", "yaxis": {"title": "USD per GB"}, "height": 320}}

Assumptions: Data transfer OUT to internet, first paid tier (after free allowance). Excludes: Inter-region/inter-AZ transfer, CDN-discounted egress, Private link.

Unit: USD per GB

ProviderServiceUnit priceSourceAs of
AWSCloudFront$0.085list2026-06-30
AzureFront Door / CDN$0.081list2026-06-30
GCPCloud CDN$0.08list2026-06-30

Cheapest of the three: GCP at $0.08/GB.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.085, 0.081, 0.08], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "CDN (content delivery egress) \u2014 USD per GB", "yaxis": {"title": "USD per GB"}, "height": 320}}

Assumptions: Cache egress to internet, North America/Europe first tier. Excludes: Requests, Real-time logs, WAF/security add-ons.

Unit: USD per cluster-hour

ProviderServiceUnit priceSourceAs of
AWSEKS$0.1list2026-06-30
AzureAKS$0list2026-06-30
GCPGKE$0.1list2026-06-30

Cheapest of the three: Azure at $0/cluster-hour.

{"data": [{"type": "bar", "x": ["AWS", "Azure", "GCP"], "y": [0.1, 0, 0.1], "marker": {"color": ["#ff9900", "#0078d4", "#4285f4"]}}], "layout": {"title": "Managed Kubernetes (control plane) \u2014 USD per cluster-hour", "yaxis": {"title": "USD per cluster-hour"}, "height": 320}}

Assumptions: Control-plane/management fee only. Excludes: Worker node compute, Load balancers, Storage, Egress.


Generated from the live cost catalog via scripts/gen_cloud_docs.py. Re-run to refresh pricing.