So Your AWS Free Trial Is Over

What to know about the deals you’re losing, and the ones you’re not

Michael Kiley

--

Congratulations! You have made it one full year into your journey of serverless bliss with your current AWS account. And, never ones to forget an important occasion, AWS sent you a nice email with this friendly subject line: Your AWS Free Tier Period is Expiring.

So, what does that mean for you and your AWS bill? Have you been the victim of a cruel trick, duped into dependency on AWS products using the classic free trial scheme? Are the promises of serverless architectures and pay-per-use revenue models going to hold up under the harsh light of month 13 of an AWS account?

Only time can truly provide the answers to these questions. I, however, can provide an overview of how your first anniversary in your AWS account will impact billing for some of the most important and widely-used services.The following is not meant to be a summary of all billing for each service, but rather highlights the important information you need to be aware of regarding the changes to your billing.

S3

12 months free (before)

  • 5 GB of standard storage
  • 20000 GET requests
  • 2000 PUT, COPY, POST, or LIST requests
  • 15 GB of data transfer out, free of charge

Now

  • Standard storage: $0.023/GB for your first 50 TB/month
  • GET requests: $0.0004 per 1000
  • PUT, COPY, POST, or LIST requests: $0.005
  • Data transfer out: Up to 1 GB free, followed by $0.09/GB up to 9.99 TB/Month

What it means

You will now be charged for all data stored in S3, as well as any access to it or modification of it. GET requests are cheaper than requests for modification, but keep in mind that there are additional charges for any data transferred out.

EC2

12 months free

  • 750 hours per month of t2.micro running Linux
  • 750 hours per month of t2.micro running Windows

Now

  • Linux t2.micro: $0.0116/hour on-demand
  • Windows t2.micro: $0.0162/hour on-demand

What it means

You will now be charged for all EC2 usage time according to your billing model. If you are using on-demand EC2 pricing, you will be charged either per hour or per second of time the instance is run counting from launch time to termination time. Billing resolution is determined based on the size of the instance, its OS, and the region it’s located in. If you are charged per hour, launching an instance will bill you for a minimum of one hour, while if you are billed per second, you will be charged for a minimum of 60 seconds. Pretty much every combination of EC2 size and operating system has a different billing rate, so make sure you check out the documentation here.

API Gateway

12 months free

  • 1 million REST API calls
  • 1 million HTTP API calls
  • 1 million WebSocket API messages
  • 750,000 WebSocket connection minutes

Now

  • REST API calls: $3.50/million for first million, $2.80/million for next 667 million, $2.38/million for next 19 billion, $1.51/million over 20 billion
  • HTTP API calls: $1.00/million for first 300 million, $0.90/million for 300+ million
  • WebSocket APIs: $1.00/million for first billion messages, $0.25/million connection minutes

What it means

If you are using API Gateway, and weren’t seeing any charges before, you will be now! The most interesting point to consider in this information, however, is the difference between REST and HTTP API’s. Announced in Dec. 2019, HTTP API’s are meant to be the latest and greatest iteration of API Gateway, not only “enhanced features, improved performance, and an easier developer experience,” but also an average of cost savings of 70% over REST. You can read more in this AWS blog post.

RDS

12 months free

  • 750 hours/month of db.t2.micro database usage
  • 20 GB of General Purpose (SSD) database storage
  • 20 GB of storage for database backups and DB Snapshots

Now

  • Database usage billed per hour, with rate dependent on size of instance and DB engine; example: $0.017/hour for MySQL db on db.t3.micro, $0.018/hour for PostgreSQL db on db.t3.micro
  • General Purpose (SSD) database storage: $0.115/GB-month
  • Backup storage: No charge up to the size of your DB, followed by $0.095/GB-month
  • Snapshot export: $0.01 per GB of snapshot size

What it means

Like EC2, RDS also provides the consumer with a wide variety of pricing options based on your chosen combination of instance size and DB engine, all laid out for you on the RDS pricing page. Also important to understand is the concept of a GB-month, which is used to measure how much you will be charged for storage. One GB-month is meant to be equivalent to one GB of storage used over the course of one month. 31 GB of storage used for 1 day is equivalent to 1 GB-month, as is 1 GB of storage used for 31 days.

CloudFront

12 months free

  • 50 GB/month data transfer out
  • 2,000,000 HTTP or HTTPS requests per month

Now

  • Data transfer out: $0.085/GB for first 10 TB
  • HTTP requests: $0.0075 per 10,000 requests
  • HTTPS requests: $0.01 per 10,000 requests

What it means

You will now pay for all data transfer out as well as each request made to your CloudFront distribution. HTTPS requests are billed at a higher rate than HTTP requests, because AWS recognizes the value of security.

The “Always Free Tier”

Here’s the good news: you get to continue using some of the free stuff you were using before! Here’s what you still get for free:

Lambda

1 million requests per month, up to 3.2 million seconds of compute time per month

DynamoDB

25 GB of data storage, 25 read capacity units and 25 write capacity units, and 1 GB of data transfer out

SNS

1 million publishes, 100,000 HTTP or HTTPS deliveries, and 1,000 email deliveries

CloudWatch

10 custom metrics, 10 alarms, 1,000,000 API requests, 5GB of Log Data Ingestion, 5GB of log data archive, and 3 dashboards with up to 50 metrics. The 10 free alarms are great for tracking your billing, so you know when your usage of non-free services is getting too expensive!

Cognito

50,000 monthly active users for user pools with direct cognito sign-in
(not SAML or OIDC federation)

SES

62,000 outbound messages per month when called from EC2, along with 1000 inbound messages/monthly

Welcome to another great year of AWS!

As you can see, there is a lot to consider and keep track of when it comes to understanding your AWS spend. If you want to try to predict your billing beyond adding it up yourself, AWS provides this calculator to aid you in that effort.

If I missed something important, or got something wrong, please let me know in the comments!

--

--

Michael Kiley

Software developer. Mobile, serverless, voice. Knows some things, curious about all things.