1. AWS Free Tier Policy: The Old and New Rules
AWS made a major adjustment to the free tier on July 15, 2025. Plenty of tutorials online still describe the old rules, which can easily mislead people. First, figure out which situation applies to you:
1. Accounts registered after July 15, 2025 — the "Free Plan / Paid Plan" model
At registration, you must choose one of two account plans:
| Plan | Description |
|---|---|
| Free Plan | You get a $100 credit when you sign up, and completing the guided tasks can earn you up to another $100, for a total of up to $200. The credit is valid for 6 months. When it's used up or expires, the account is automatically closed, so there's no extra charge. |
| Paid Plan | You can also get up to $200 in credits, but once the credit runs out, the account automatically switches to pay-as-you-go, and you can keep using all 150+ AWS services. |
Both plans include 30+ "Always Free" services that stay free forever (they don't consume your credit — as long as you stay within the limits, you can keep using them free of charge).
2. Existing accounts registered before July 15, 2025 — the traditional three-tier free model
If your account is an older one, it follows the traditional rules, which fall into three categories:
- Always Free: No time limit — free as long as you don't exceed the usage limits. Examples include AWS Lambda (1 million invocations per month), DynamoDB (25GB storage), SNS, and basic CloudWatch monitoring.
- 12 Months Free: Free for the 12 months after registration, then automatically billed at standard rates once it ends — there's no extra reminder. Typical services include EC2 (750 hours/month of t2.micro or t3.micro), S3 (5GB of standard storage), and RDS (750 hours/month of db.t2.micro or db.t3.micro).
- Short-Term Trials: Counted from the day you activate a service, usually 15–60 days. Examples include Lightsail, Redshift, GuardDuty, Inspector, and Security Hub. Billing starts automatically when they expire.
How to tell: After signing in to the AWS console, open the Billing → AWS Free Tier page to see directly which set of rules applies to your account, along with each service's used allowance and remaining days.
2. Services You Can Safely Use for Free
Whether your account is new or old, the following services are Always Free within their limits — well suited to long-running small projects, learning, or validating ideas:
| Service | Free tier (per month) | Best for |
|---|---|---|
| AWS Lambda | 1 million requests + 400,000 GB-seconds of compute time | Serverless APIs, scheduled tasks |
| DynamoDB | 25GB storage + 25 read/write capacity units | Lightweight NoSQL database |
| Amazon SNS | 1 million publish requests | Message notifications |
| Amazon SQS | 1 million requests | Asynchronous queues |
| CloudWatch | 10 custom metrics + basic alarms | Infrastructure monitoring |
| Amazon Cognito | 50,000 monthly active users | User authentication |
| CloudFront | 1TB data transfer out (first 12 months; a sizeable always-free allowance remains after that) | CDN for static assets |
These services have no expiration date, which makes them the safest foundation for personal projects. A Lambda + DynamoDB combination is enough to power a small but real API backend at zero cost over the long term.
3. How to Avoid "Free, Then Suddenly Billed"
The pitfalls beginners run into most often basically come down to a few kinds of resources:
- EC2 / RDS instances you forgot to shut down: The free allowance is "instance running hours," not "days the instance exists." Leave one running and the allowance runs out quickly, after which you're billed at standard rates.
- Idle Elastic IPs: An Elastic IP allocated but not attached to a running instance keeps incurring charges — many people overlook this one.
- EBS volumes that stay billable after you stop an instance: Stopping an EC2 instance only stops the compute charges; the attached disk (EBS) is still billed by storage size.
- NAT Gateway: It's billed by the hour from the moment it's created (from about $33/month), no matter how much traffic it carries. Be sure to delete it after testing.
- CloudWatch logs without a retention policy: Logs are kept forever by default, so apps with heavy log volume quietly accumulate storage costs. Set a finite retention period, like 30 days, for each log group.
- Short-term trial services (Lightsail, GuardDuty, etc.): The clock starts the moment the service is "activated," not when you registered the account — easy to forget.
Three lines of defense to set up right after registration
1. Turn on billing alerts Click your avatar in the top-right corner of the console → Billing and Cost Management → Billing preferences. Check "Receive Free Tier Usage Alerts" and "Receive Billing Alerts," bind your email, and you'll get advance notice before you exceed the free tier.
2. Create an AWS budget Go to Billing → Budgets → Create budget and set a monthly threshold, e.g., $5. It automatically sends email alerts at 80% and 100%, and you can even link it to Lambda to automatically stop resources that are overspending.
3. Check the Free Tier usage dashboard regularly The Billing → AWS Free Tier page lists how much each service has been used this month and the remaining allowance as a percentage. Take a look every week — especially while you're still learning and haven't yet built the habit of shutting resources down.
4. The Official "Explore AWS" Guided Tasks: How to Earn an Extra $100
New accounts (registered after July 15, 2025) get 100 in credits, for a maximum of $200 total.
1. What is it?
After signing in, you'll see an "Explore AWS" widget on the Console Home dashboard. Switch the filter to "Earn AWS credits" to see the list of tasks you can currently complete and each task's deadline. Alternatively, search for "Billing" in the search bar at the top, open the billing console, and go to the Credits page to view the details of the credits you've already earned.
2. The five official tasks
Each completed task earns $20 in credits:
1. Amazon EC2 — Launch and terminate an instance Learn how to create a virtual machine (instance) on the AWS cloud and clean it up properly (terminate it) after use. This activity does incur a small charge for actual AWS service usage, but the cost is automatically deducted from your free credit, so you won't be charged extra. For the concrete steps, see the EC2 tutorial in Chapter 5.
2. Amazon RDS — Create a database instance Learn the basic RDS (relational database service) configuration flow, create a database instance once, and understand the difference between a managed database and one you manage yourself.
3. AWS Lambda — Deploy a simple web app Learn how to create a Lambda function and give it a Function URL, and get hands-on with the basics of serverless architecture.
4. Amazon Bedrock — Submit a prompt in the text playground Learn how to use Amazon Bedrock's text-generation playground, submit a prompt, and get the model's result back — a look at the entry point for generative AI services on AWS.
Note: Which foundation models are available in Bedrock varies by your account's region and AWS's current model lineup. If no models are available in the console right now, you may not be able to complete this task at the moment — that's normal, and it doesn't affect the credits you can earn from the other tasks.
5. AWS Budgets — Set up a cost budget Learn how to create a budget and configure overspending alert rules. This is also one of the billing safeguards Chapter 3 repeatedly urged you to enable — completing this task along the way is like putting a "seatbelt" on your account.
3. Rule details to keep in mind
- Joining an organization makes you immediately ineligible: As soon as your account joins an AWS Organization or an AWS Control Tower Landing Zone is deployed, you immediately lose your eligibility to keep earning these credits. Be careful about the timing of any account structure changes.
4. Recommended completion order
4. Then RDS: Creating a database takes a relatively long time, so set aside a dedicated block of time. When it's done, decide whether to keep or delete it based on whether you'll use it later.
5. EC2 Tutorial for Beginners
EC2 (Elastic Compute Cloud) is AWS's core cloud server product. This section teaches you how to create, from scratch, a Linux server you can log into remotely.
Step 1: Go to the EC2 console
After signing in to the AWS console, type "EC2" in the search bar at the top, open the EC2 Dashboard, and click the orange Launch instance button.
Step 2: Configure the instance
- Name: Give the instance a name so it's easy to identify, e.g.,
my-first-server. - AMI (system image): For beginners, it's recommended to choose Amazon Linux 2023 or Ubuntu Server 22.04/24.04 LTS — both are covered by the free tier.
- Instance type: Choose t2.micro or t3.micro (whichever is free-tier-eligible in your region; the page marks it "Free tier eligible").
Step 3: Create a key pair
This is the credential for logging into your server, so store it carefully:
- Click Create new key pair.
- After naming it, choose RSA as the type and .pem (Mac/Linux) or .ppk (Windows PuTTY) as the format.
- When you click create, the browser automatically downloads the private key file. The file only appears once — if you lose it, there's no way to recover it; you can only generate a new key pair.
Step 4: Configure networking and the security group
- Network settings: Keep the default VPC.
- Firewall (security group): Create a new security group, check Allow SSH traffic from, and set the source to My IP (this only allows access from your current network, which is safer than Anywhere).
- If you plan to run a website, manually add HTTP (80) and HTTPS (443) port rules later.
Step 5: Configure storage
The default 8GB gp3 volume is fine (the free tier supports up to 30GB) — keep the default, no need to add more.
Step 6: Launch the instance
After confirming the summary on the right is correct, click Launch instance and wait about a minute. When the status changes to Running, it has been created successfully.
Step 7: Connect to the instance remotely
Option 1: Connect directly from the browser (simplest, recommended for beginners) Select the instance → click Connect → switch to the EC2 Instance Connect tab → click Connect. A terminal opens in a new browser tab without installing any software.
Option 2: SSH from your local terminal
Open a terminal on your local machine and run the following commands:
chmod 400 your-key-file.pem
ssh -i "your-key-file.pem" ec2-user@your-instance-public-ip
(The username is ubuntu for Ubuntu images and ec2-user for Amazon Linux.)
Step 8: Open service ports (if you're deploying a website or service)
- Add rules for HTTP (80), HTTPS (443), or Custom TCP (enter your service port), and set the source to Anywhere (0.0.0.0/0) (if you're only testing for yourself, you can keep the source IP restricted).
Step 9: Clean up when you're done
When you've finished learning or testing, select the instance → Instance state → Terminate instance to delete it completely and avoid further charges. If you're only pausing, you can choose Stop (note that EBS storage is still billed).
6. Lightsail Tutorial for Beginners
Lightsail is AWS's VPS product simplified for beginners — fixed pricing, simple configuration, and a better fit than EC2 for lightweight projects like personal blogs and small websites. Note: Lightsail is a short-term trial service, usually with a brief free trial period (check the console for the actual duration). After it expires, you're billed at the plan's fixed monthly price, so understand the pricing well before deciding whether to use it.
Step 1: Go to the Lightsail console
Type "Lightsail" in the search bar at the top to open the console home page.
Step 2: Create an instance
- Click Create instance.
- Choose a data center region (pick the nearest one for lower latency).
- Select a platform: Choose Linux/Unix.
- Select a blueprint:
- Plain OS: Choose Amazon Linux or Ubuntu under OS Only.
- One-click apps: To quickly set up WordPress, LAMP, and so on, pick the matching template directly under Apps + OS — no manual installation needed.
- Choose an instance plan: Choose the lowest plan (usually the cheapest tier with the least memory), which suits learning and light testing.
- Name the instance, then click Create instance.
Step 3: Connect to the instance
Once the instance is ready (status changes to Running), click the terminal icon on the instance card (Connect using SSH), and a web-based SSH terminal opens directly in the browser. No keys to manage yourself — it's less hassle than EC2.
Step 4: Open ports
Lightsail has SSH (port 22) open by default. If you want to deploy a web service:
- Go to the instance details → Networking tab.
- In the IPv4 Firewall section, click Add rule.
- Add HTTP (80) / HTTPS (443) or custom port rules.
Step 5: Attach a static IP (optional)
The public IP assigned by default can change when the instance restarts. If you're serving traffic long term, create and attach a Static IP on the Networking tab (attaching it to a running instance is free, but attaching it to a stopped instance incurs charges — remember to release static IPs you don't use).
Step 6: Upgrade or downgrade your plan
If traffic grows and you need more capacity, you can upgrade your plan directly through Change plan on the instance details page (downgrades aren't supported between some plans, so review the plan-change rules in the official docs before upgrading).
Step 7: Delete it when you're done
Lightsail is a fixed monthly billing model — as long as the instance exists (even in Stopped state), it will most likely keep billing. When you're done testing, Delete the instance rather than merely stopping it.
7. Which One Should You Choose?
| EC2 | Lightsail | |
|---|---|---|
| Learning curve | Steeper — requires understanding concepts like VPC, security groups, and key pairs | Gentle — graphical interface, usable out of the box |
| Billing | Per-second, on-demand; flexible, but you need to control the cost yourself | Fixed monthly plans; transparent and predictable pricing |
| Flexibility | High — can integrate with nearly all AWS services | Lower — suited to standalone, simple workloads |
| Free tier type | 12 months free (existing accounts) / credits (new accounts) | Short-term trial (duration shown in the console) |
| Best for | Developers who want to study AWS cloud architecture in depth | Beginners who just want to quickly set up a personal blog or small site |
Suggested path: If this is your first time with cloud servers, start with Lightsail to run through the complete "create instance → connect → deploy an app" flow and build confidence, then move to EC2 to systematically learn concepts closer to production environments, such as security groups, VPC, and IAM permissions.
8. Important Notes on Account Registration
- AWS requires real, valid identity information (including your own credit/debit card) for account verification. This is a necessary mechanism to prevent platform fraud and protect legitimate users, so please fill in truthful details.
- The free credits are designed to let developers learn and validate ideas at a low cost, so repeatedly registering alternate accounts to farm credits isn't recommended — such behavior usually violates AWS's terms of service. If the platform's risk-control system flags it, your account could be frozen, or even linked accounts could be restricted along with it.
- If you're only learning or building small projects, the official free credits plus the "Always Free" services covered in this article are enough to sustain normal use for quite a long time. There's no need to take on extra account risk.
This article is compiled from AWS official documentation and public sources (including the official blog post "AWS Free Tier update: New customers can get started and explore AWS with up to $200 in credits"). Cloud pricing and policies may change at any time, so before you use these services, refer to the AWS official Free Tier page and check what your billing console actually shows.