AWS Free Tier in 2026: What Changed, What's Still Free, and What Will Surprise You
For years, the deal was simple: sign up for AWS, get twelve months of access to a curated set of services at no charge, and figure out what you're doing before the meter starts running. Developers built side projects on it. Bootcamp students used it to learn. Startups tested infrastructure without burning runway. It wasn't perfect, but it was predictable.
That deal is gone for anyone who signed up after July 15, 2025.
In the past year alone, I've seen more developers blindsided by AWS billing than at any other point in my career, and the confusion almost always traces back to one thing: they thought they understood how the free tier worked, and they didn't, because AWS changed it and didn't exactly shout about it. This article is my attempt to lay out exactly what the current structure looks like, what's actually free, and where the charges are hiding.
What the Free Tier Looks Like Now
If you create a new AWS account today, you're not getting twelve months of free usage on EC2, RDS, or S3. You're getting credits, and those credits have a hard expiration.
Here's the current structure for accounts created on or after July 15, 2025. When you sign up, AWS prompts you to choose between a Free Plan and a Paid Plan. The Free Plan gives you $100 in credits automatically, the moment your account is created. You can earn an additional $100 by completing five onboarding tasks: launching and terminating an EC2 instance, configuring an RDS database, deploying a Lambda function, testing a prompt in Amazon Bedrock, and setting up a cost budget in AWS Budgets. Each task pays out $20. Do all five and you've got $200 total.
Those credits apply to any eligible service, which is actually an improvement over the old model in one narrow sense: you're not locked into a fixed per-service allowance. If you want to spend most of your credits on EC2, you can. If you want to experiment with Bedrock, your credits work there too.
What's not flexible is the timeline. The Free Plan expires after six months, or when your credits run out, whichever happens first. On the Free Plan, you won't be charged if you exceed your credits during that window. AWS will simply shut the account down. If you're on the Paid Plan and your credits are exhausted, billing starts at standard on-demand rates immediately.
One more thing worth knowing: if you upgrade from Free Plan to Paid Plan at any point, your remaining credits stay valid for up to twelve months from your original signup date. Upgrading doesn't mean losing what you've earned.
Accounts created before July 15, 2025 are still on the legacy model and get the full twelve-month service-specific trial. That doesn't change retroactively. But if you helped a colleague sign up recently and told them it works the same way it did when you signed up, you may have set them up for a surprise.
What Is Actually Always Free
Here's the part of the free tier that doesn't get enough attention, and honestly the part that matters most for developers building lightweight apps or learning the platform. There's a set of services with no expiration, no credit dependency, and no time limit. They're free as long as you stay within the monthly caps, and they stay free after your six-month plan or twelve-month legacy trial ends.
| Service | Always Free Limit | Notes |
|---|---|---|
| AWS Lambda | 1M requests/month + 400K GB-seconds compute | Resets monthly. Enough for most side projects indefinitely. |
| Amazon DynamoDB | 25 GB storage + 200M requests/month | No expiry. The always-free database for serverless stacks. |
| Amazon S3 | 5 GB Standard + 20K GET + 2K PUT/month | Egress is NOT free. Reduced Redundancy Storage is NOT included. |
| Amazon CloudFront | 1 TB data out/month + 10M HTTP/S requests/month | Best way to serve S3 content without triggering egress fees. |
| Amazon API Gateway | 1M REST API calls/month | REST APIs are always free. HTTP APIs have a separate 12-month offer. |
| Amazon SNS | 1M publishes/month + 1K email notifications/month | No expiry. |
| Amazon SQS | 1M requests/month | No expiry. |
| Amazon CloudWatch | 10 custom metrics + 10 alarms + basic monitoring | Log ingestion and storage beyond the free amounts bills quickly. |
| Amazon Cognito | 50,000 MAUs/month | Plenty of headroom for auth in small apps. |
The Lambda plus DynamoDB plus API Gateway combination is powerful on the always-free tier. You can run a meaningful API backend indefinitely without paying a cent, provided your traffic stays moderate. I've seen developers run production hobby apps on this stack for years at zero cost. That's not marketing. That's just how the limits work out at small scale.
The limits reset on the first of each month. They don't carry over. They don't accumulate. Use them or lose them.
The Credit Cliff: What Happens When It Runs Out
This is where I want to be very direct, because AWS's own documentation on this point is easy to misread.
For Free Plan accounts, when your six months are up or your $200 in credits are exhausted, your account closes automatically. It doesn't warn you with a final invoice. It doesn't let you run a few more days while you sort things out. The account closes, your running resources are shut down, and you have ninety days to upgrade to a Paid Plan and recover your data before it's deleted permanently. Credits that weren't used are forfeited.
AWS does send notifications as you approach the edge. You'll get emails at 50%, 25%, and 10% of credits remaining, and again at fifteen days, seven days, and two days before the six-month period ends. That's reasonable warning if you're paying attention to your inbox. A lot of developers aren't, especially if the account was created months ago for a side project that got shelved.
Here's the part that catches people: the six-month clock runs regardless of how many credits you have left. If you earned all $200, used $30 of it, and hit the six-month mark, the account still closes and the remaining $170 disappears. Credits don't buy you more time on the Free Plan.
For legacy twelve-month accounts, the expiration is less dramatic, but in some ways more dangerous. When the twelve months end, billing starts automatically at on-demand rates. AWS doesn't stop your instances. It doesn't send a prominent warning that billing is about to begin. The free trial just ends, and whatever is running starts accruing charges at the next hourly tick. I've seen developers wake up to a week of EC2 and RDS charges because they forgot their account birthday.
The Gotchas: What Bills Even During the Free Period
This section is the reason I wrote this article. The free tier, in any form, does not protect you from every AWS charge. There are services and configurations that bill from day one, free plan or not, and they're responsible for the bulk of the surprise bills I see.
How to Protect Yourself
The good news is that AWS gives you the tools to catch problems early. The bad news is that none of them are turned on by default, and finding them requires navigating the billing console. Here's what to set up on day one.
Enable Free Tier Usage Alerts. In the Billing and Cost Management console, under Billing Preferences, there's a checkbox to email you when you're approaching the limits on any free tier service. Enable it. There's no reason not to.
Create a $1 budget in AWS Budgets. The goal isn't to limit spending. It's to know immediately if anything starts billing that shouldn't be. If you're a new account, completing this task also earns you $20 in credits, so you're being paid to do the responsible thing.
Enable Cost Anomaly Detection. It's free, it works well, and it flags unusual spending patterns the same day they start. No configuration required beyond enabling it.
Do a resource audit before you stop working each day. Check EC2 > Volumes for unattached EBS volumes. Check EC2 > Elastic IPs for unassociated addresses. Check VPC > NAT Gateways for anything you don't need. Check CloudWatch > Log Groups and set retention on every group without one. These are five-minute checks that can prevent a multi-hundred-dollar surprise at the end of the month.
Understand the difference between stopping and terminating an EC2 instance. A stopped instance doesn't bill for compute, but its EBS volume does. Termination deletes the instance and, by default, the root EBS volume. If you're done with a test instance, terminate it. Don't stop it and walk away.
Know Your Real Costs Before You Commit
The AWS free tier, in its current form, is still a legitimate way to learn the platform and build small projects. The always-free services are generous at small scale. The $200 credit pool for new accounts gives you real flexibility. But the billing model rewards people who understand it and quietly penalizes those who don't, and AWS has never been in a hurry to change that.
Before you architect anything beyond a simple serverless stack, it's worth modeling what you'll actually pay once the credits are gone. InfraTally's Cloud Hosting Cost Calculator and Object Storage Calculator let you map out real AWS costs for common infrastructure patterns before you're committed to them. Understanding the monthly number before you build is the difference between a side project that stays free and one that becomes an uncomfortable line item.
The free tier is a starting point. Knowing where it ends is how you stay in control of what comes next.
Information in this article reflects the AWS free tier structure as of April 2026 for accounts created on or after July 15, 2025. Legacy account holders (pre-July 15, 2025) remain on the original 12-month model. Always verify current details on the AWS Free Tier page.