I am currently on my free tier. I followed the guide to hosting a wordpress website while remaining in the free tier. I started a Linux t2.micro instance and used one Elastic IP. Surprisingly I got this bill:
It didn't even reach 730 Hrs for EC2 which is the monthly limit. I stopped the instance, and then terminated it so that any other charges don't occur. It asked me to release the Elastic IP address before terminating, which I did. Now there's no Elastic IP address or any machine instance.
But today I opened up the billing dashboard and saw that I was charged $0.5 for $0.005 per Elastic IP address not attached to a running instance per hour (prorated). And after a while it's this now.
How do I stop it? Plus why was I charged while I was still in my free tier.
This is because of various reasons. Elastic IP charge is calculated on hourly basis. Only one elastic IP is free of cost. If you have created an elastic IP but it is not attached to any EC2 instance still it will cost you on an hourly basis.
So reason you got charged because of one of these reasons,
Different pricing of elastic IP,