Article

AWS, Azure, and Google Cloud Free Tiers Compared (2026)

How the AWS free tier, Azure free account, and Google Cloud free trial actually work in 2026, plus IBM Cloud's always-free Lite plans - credits, windows, and what stays free.

By 7 min read

TL;DR: AWS, Azure, and Google Cloud all sell you a starting credit, not a sustained free tier: $100-$200 for AWS, $200 for Azure, $300 for Google Cloud, each gone in 30 days to a year. Underneath the credit, each provider also keeps a smaller set of services free every month with no expiry - AWS Lambda, Azure Functions, and Google Cloud Run all give away roughly 1-2 million free requests a month, forever. IBM Cloud skips the credit entirely and runs 40+ Lite plans that never expire and never bill. Read the always-free row for each service before you build on the credit - the credit runs out; the always-free row doesn’t.

The two things “free tier” means

Every big cloud provider blurs two different offers under one phrase.

  1. A signup credit. A pool of dollars, valid for a fixed window, spendable on almost any service. It behaves like a gift card, not a discount.
  2. An always-free allowance. A fixed monthly quota on a specific service - requests, GB, hours - that resets every month and never expires, on any account, forever.

The credit gets people in the door. The always-free allowance is what keeps a hobby project running without a card on file once the credit is gone.

Table 1: the account-level offer

ProviderSignup creditCredit windowCard requiredAfter the window
AWS$100 up front, up to $100 more for setup activities ($200 total)Free account plan runs 6 months or until credits run out; credits themselves expire 12 months after signupYesFree plan closes; AWS holds account data 90 days, then deletes it, unless you upgrade to the Paid plan
Azure$20030 days for the credit; a further set of services stay free for 12 months from account creationYesCard is not charged automatically; the subscription downgrades and stops working until you upgrade
Google Cloud$30090 daysYesTrial ends; billing does not start on its own until you manually activate a paid account
IBM Cloud$200, Pay-As-You-Go accounts only30 daysNot required for the Lite plansNo cliff - the 40+ Lite plans below keep working at $0 indefinitely

IBM is the outlier worth noticing: the credit is optional. You can skip it and sign up straight into the free Lite plans, which is the only account type here with no expiry date attached to the free part at all.

Table 2: always-free allowances by building block

These numbers apply every month, on every account, with no time limit - separate from any of the credits above.

Building blockAWSAzureGoogle Cloud
Serverless functionsAWS Lambda: 1M requests + 400,000 GB-seconds/monthAzure Functions (Consumption plan): 1M executions + 400,000 GB-s/monthCloud Run: 2M requests/month
Managed NoSQLAmazon DynamoDB: 25 GB storage, 25 write + 25 read capacity units/monthAzure Cosmos DB: 1,000 RU/s + 25 GB storage, one free-tier account per subscriptionFirestore: 1 GiB storage, 50,000 reads / 20,000 writes / 20,000 deletes per day
Object storageAmazon S3: no always-free allowance for new accounts - credit onlyBlob Storage: none publishedCloud Storage: 5 GB-months (US regions only)
CDNAmazon CloudFront: 1M requests + 100 GB data transfer/monthNone publishedNone published
MonitoringCloudWatch: 10 custom metrics, 1M API requests, 3 dashboards, 5 GB log ingestion/monthAzure Monitor: 5 GB/month Log Analytics ingestion; standard metrics and activity logs are free with no stated capNone published

Two of those blanks catch people out. Amazon S3 never had an always-free allowance: its 5 GB of standard storage belonged to the 12-month tier, which the July 2025 restructure closed. New accounts pay for S3 from day one or spend the signup credit on it. And CloudFront is the only dedicated always-free CDN allowance of the three: Azure and Google both fold CDN usage into general egress pricing once the account-level credit runs out.

AWS: the July 2025 split still trips people up

AWS retired its old per-service 12-month free tier for new signups on 2025-07-15. Anyone reading a blog post, a GitHub README, or a Stack Overflow answer from before that date is reading about a program that no longer exists for new accounts.

Accounts opened on or after that date get the credit model in Table 1, plus the always-free services that were never time-limited to begin with - AWS Lambda, Amazon DynamoDB, and Amazon CloudFront among them. Accounts opened before 2025-07-15 kept their original 12-month windows, and the last of those closed on 2026-07-14, so the old model is finished in practice now, for every account.

What that means per service: a new AWS account gets no free Amazon EC2 instance hours, no free Amazon RDS database, no free Amazon API Gateway calls, and no free Amazon Elastic Block Store volume. Each of those used to carry its own 12-month allowance - 750 instance hours a month for EC2 and RDS, 1 million calls a month for API Gateway, 30 GB of storage for EBS. Under the credit model they carry none. Usage on all four draws down the $200 signup credit, then bills at standard rates.

The account plan you pick at signup decides what happens when the money runs out. On the Free plan, AWS closes the account after 6 months or once the credits are spent, whichever comes first, and holds the data for 90 days before deleting it. On the Paid plan, nothing closes: the account just starts billing at pay-as-you-go rates. Both plans get the same always-free services, so the choice is about what happens at the cliff edge, not about what you get before it.

Azure: read “combined” carefully

Azure’s free-VM benefit is not four separate 750-hour grants. It is one 750-hour-a-month pool, shared across the B1s, B2pts v2 (Arm-based), and B2ats v2 (AMD-based) burstable sizes, for either Linux or Windows, for the first 12 months. Running two of those VM sizes at once does not double your free hours - it splits the same 750 from one pool.

Past the VM pool, Azure App Service’s Free (F1) tier is the one Azure allowance that never expires: 60 shared CPU-minutes a day, 1 GB RAM, 1 GB storage, no SLA. It is enough to keep a small static site or a low-traffic API awake, not enough to run anything with real load.

Google Cloud: the $300 credit is separate from what stays free

Google Cloud’s $300 credit and its always-free tier are two different programs that run at the same time. The 90-day credit covers almost any product; the always-free tier - one e2-micro Compute Engine instance, 5 GB of Cloud Storage, 1 TiB of BigQuery queries, 2 million Cloud Run requests, and a Firestore allowance, all per month - keeps running after the 90 days end and after the $300 runs out, with no card charge until you manually upgrade.

That makes Google Cloud the easiest of the three big providers to leave running unattended: nothing switches to paid billing on its own.

The catch is geography. The free e2-micro instance and the 5 GB of Cloud Storage only count as free in US regions, and the free egress allowance is 1 GB a month out of North America for Compute Engine and Cloud Run, 100 GB for Cloud Storage. Put the same workload in a European or Asian region and it bills from the first hour. BigQuery is the exception worth knowing about: 1 TiB of queries and 10 GiB of storage a month, with no region condition attached.

IBM Cloud: no clock on the free part

IBM Cloud’s Lite plans cover 40+ services with no expiry and no credit card requirement - Cloudant (1 GB storage), Container Registry (5 GB of pull data transfer a month), Watson Assistant (10,000 API calls a month), Cloud SQL Query (30 GB scanned a day), and API Connect (50,000 calls a month) among them. The $200 Pay-As-You-Go credit is a separate, optional add-on for 30 days if you want to test a paid-tier product; skipping it does not affect the Lite plans at all.

What does not count as a free tier

  • A signup credit. A $300 credit is not the same thing as a $300-a-month recurring allowance. Every provider above eventually asks for a card once a credit runs out; the always-free rows in Table 2 do not.
  • The legacy AWS 12-month allowances. The pre-2025-07-15 program is closed to every account. No account created today can get one.

The practical takeaway

If you are picking a provider to build a side project on, the account-level credit barely matters - it buys you a month or a year of runway, then disappears. What matters is whether the specific services you need show up in Table 2. A Lambda-based API, an App Service static site, or a Cloud Run container can run for years on the always-free rows alone. An EC2 instance, an RDS database, or anything billed by the hour cannot - it is running on borrowed credit from the day you create the account, and the bill starts the day that credit is gone.