AWS Builder Center

3 Rules to Keep Your AWS Free Tier Bill at $0

When you're starting out on AWS, the easiest mistake to make is leaving a test resource running and waking up to an unexpected bill. Here are three simple habits every junior dev should set up on day one.

#1. Set a $1 Budget Alert Immediately
Before spinning up any service, automate your warnings:
  • Go to Billing and Cost Management → Budgets.
  • Click Create budget and pick the Zero-spend budget template (or set a $1.00 threshold).
  • Add your email. You’ll get an alert the second anything bills you.
#2. Beware the "Hidden" Charges
A few sneaky resources cost money even if you aren't actively using them:
  • Unattached Elastic IPs: AWS charges for public IPs that sit idle. If you terminate an EC2 instance, release its Elastic IP.
  • NAT Gateways: These are not free tier. For learning VPCs, stick to public subnets or internet gateways.
  • Orphaned EBS Volumes: Always verify your root volume deletes when you terminate an instance.
#3. Build a "Tear Down" Habit
Treat your AWS sandbox like local code:
  • If you don't need it running overnight, shut it down.
  • For small prototypes, try AWS Lambda and serverless services first—they only charge when invoked, making them much harder to leave running by accident.
Question for the community: What was the first AWS service that surprised you with a charge, and how did you fix it? Let's share tips in the comments below!
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article