Building and hosting a website no longer requires expensive servers or complicated infrastructure. With the free tier offered by Amazon Web Services, you can deploy a fully functional website at little to no cost while learning real-world cloud skills.
This guide walks you step-by-step through deploying a website using only free-tier eligible services perfect for beginners, students, and developers testing ideas.
Table of Contents
ToggleWhat You’ll Build
By the end of this tutorial, you will have:
- A cloud-hosted website
- A running virtual server using Amazon EC2
- A configured web server (Apache)
- A live public URL to access your site
What Is the AWS Free Tier?
AWS Free Tier allows new users to explore services without upfront cost. For EC2, you typically get:
- 750 hours/month of t2.micro or t3.micro instances
- Free usage for 12 months after account creation
This is enough to run a small website continuously.
Prerequisites
Before starting, ensure you have:
- An AWS account (with billing enabled)
- A basic understanding of web concepts
- A terminal or SSH client
Time Breakdown
- Account setup: 5 minutes
- Instance launch: 5 minutes
- Server setup: 10 minutes
- Website deployment: 10 minutes
Step 1: Create and Set Up Your AWS Account
Go to the AWS homepage and create an account.
Important notes:
- You’ll need a credit/debit card (for verification, not billing if you stay in free tier)
- Choose your region (keep it consistent throughout the setup)
Once logged in, open the AWS Management Console.
Step 2: Launch a Free Tier EC2 Instance
Navigate to EC2 and click Launch Instance.
Configuration:
1. Name your instance
Example: My-Free-Tier-Website
2. Choose AMI
Select:
- Amazon Linux (free tier eligible)
3. Instance Type
- Choose t2.micro (or t3.micro depending on region)
4. Key Pair
- Create a new key pair
- Download and store the
.pemfile securely
5. Network Settings
Allow:
- SSH (port 22)
- HTTP (port 80)
6. Storage
- Default 8 GB is enough
Click Launch Instance.
Step 3: Connect to Your Instance
Once your instance is running:
- Select the instance
- Click Connect
- Use the SSH command provided
Example:
ssh -i your-key.pem ec2-user@your-public-ipYou are now inside your cloud server.
Step 4: Install a Web Server (Apache)
Run the following commands:
sudo yum update -y sudo yum install httpd -yStart and enable Apache:
sudo systemctl start httpd sudo systemctl enable httpdYour server is now ready to serve web pages.
Step 5: Deploy Your Website
Navigate to the root directory:
cd /var/www/htmlCreate your homepage:
sudo nano index.html
Paste the following HTML:
Welcome to My AWS Free Tier Website!
Deployed successfully using EC2 🚀
Save and exit.
Step 6: Access Your Website
Go to your EC2 dashboard and copy the Public IPv4 address.
Open your browser and visit:
http://your-public-ipYou should see your website live!
How This Stays Free
To ensure you don’t get charged:
- Use only t2.micro / t3.micro instances
- Stay within 750 hours/month
- Avoid adding paid services (like load balancers)
- Monitor usage in billing dashboard
Alternative Free Tier Option: Static Website Hosting
Instead of EC2, you can host static websites using Amazon S3.
Benefits:
- Completely serverless
- Lower cost (often free)
- Easy to manage
Steps Overview:
- Create an S3 bucket
- Upload HTML files
- Enable static website hosting
- Make files public
This is ideal for portfolios, landing pages, and resumes.
Optional: Add a Domain Name
To replace your IP address with a domain, use Amazon Route 53.
Steps:
- Buy a domain
- Create hosted zone
- Map domain to your EC2 instance
Monitor Usage and Performance
Use Amazon CloudWatch to:
- Track CPU usage
- Monitor uptime
- Set alerts
Also check AWS Billing Dashboard regularly to stay within free limits.
Security Best Practices
Even for free-tier projects, follow basic security:
- Restrict SSH access to your IP
- Use strong key pair security
- Avoid exposing unnecessary ports
- Keep your instance updated
Common Mistakes to Avoid
- Forgetting to open HTTP (port 80)
- Deleting your key pair file
- Leaving instance running after project ends
- Using paid instance types accidentally
- Not monitoring billing
Scaling Beyond Free Tier
Once your project grows, you can upgrade:
- Move to larger EC2 instances
- Add load balancers
- Use managed services
- Implement auto-scaling
AWS allows seamless scaling without rebuilding your setup.
Real-World Use Case
Imagine you’re a student building a portfolio. Instead of paying for hosting, you deploy your website using AWS Free Tier. You gain:
- Real cloud experience
- Zero hosting cost
- Hands-on DevOps skills
This experience is valuable for careers in cloud computing.
Why Use AWS Free Tier?
- Learn industry-standard tools
- No upfront investment
- Hands-on experience
- Scalable infrastructure
It’s one of the best ways to enter cloud computing.
Conclusion
Deploying a website using the free tier of Amazon Web Services is one of the easiest and most practical ways to start your cloud journey. With Amazon EC2, you can host dynamic websites, while Amazon S3 offers a simple solution for static sites.
In under 30 minutes, you can go from nothing to a live website without spending money.



