AWS Elastic Beanstalk cost: the service is free, the resources are not
Elastic Beanstalk adds no charge of its own. You pay for the EC2, load balancer, RDS, and storage it provisions. That means every EC2 cost lever applies, and the environment type quietly decides the bill. Here is what to watch.
Quick answer
Elastic Beanstalk itself is free. You pay only for the resources it creates: EC2 instances, an optional load balancer, RDS, and storage. So the bill is set by the environment type (single-instance versus load-balanced), instance size, and how many instances autoscaling runs. Every EC2 cost lever applies directly.
Elastic Beanstalk is an orchestration layer, not a billed service. It provisions and manages EC2, load balancers, and databases for you at no markup, which means your Beanstalk bill is really an EC2 bill with a load balancer attached. The choices Beanstalk makes on your behalf are where the cost lives.
What you actually pay for
| Resource | Cost |
|---|---|
| EC2 instances | Standard instance-hours |
| Load balancer (load-balanced env) | ALB or NLB hourly + LCU |
| RDS (if attached) | Standard database cost |
| EBS, S3, data transfer | Standard rates |
Environment type is the big switch
A single-instance environment runs one EC2 instance with no load balancer, which is the cheapest option and fine for dev, staging, or low-traffic services. A load-balanced environment adds a load balancer and runs multiple instances for availability and scale. Using load-balanced environments for every non-production stack quietly multiplies cost, so match the type to the need.
Right-size and autoscale sensibly
Because the instances are ordinary EC2, all the usual levers apply: right-size the instance, consider Graviton, and set autoscaling minimums to the real baseline rather than a comfortable default. A load-balanced environment with a minimum of two large instances costs more than most low-traffic services need.
Do not forget attached databases
Beanstalk can create an RDS instance tied to the environment lifecycle, which is convenient and a cost trap: the database is billed like any RDS and is deleted with the environment. For anything you care about, run the database separately and size it deliberately.
FAQ
Does Elastic Beanstalk cost extra?
No. Elastic Beanstalk adds no charge of its own. You pay only for the AWS resources it provisions, mainly EC2 instances, an optional load balancer, and any attached RDS and storage, at standard rates.
What makes an Elastic Beanstalk environment expensive?
The environment type and instance choices. A load-balanced environment adds a load balancer and runs multiple instances, while a single-instance environment runs one instance with no load balancer. Oversized instances and high autoscaling minimums also drive cost.
Single-instance or load-balanced environment for cost?
Single-instance is cheapest and suits dev, staging, and low-traffic services because it runs one EC2 instance with no load balancer. Use load-balanced only where availability and scale genuinely require multiple instances behind a load balancer.
How do I reduce Elastic Beanstalk cost?
Right-size the EC2 instances, use single-instance environments for non-production, consider Graviton, set autoscaling minimums to real baseline, and run important databases separately rather than tied to the environment lifecycle.
Is the RDS attached to Beanstalk a good idea?
For throwaway environments it is convenient, but the database is billed like any RDS and is deleted when the environment is. For anything you care about, provision the database independently so its lifecycle and sizing are under your control.
Does C3X estimate Elastic Beanstalk cost?
C3X prices the underlying resources (EC2, load balancer, RDS, storage) from your Terraform, which is exactly what a Beanstalk environment costs since the service itself is free.
What to do next
See the real cost behind the environment before you deploy. C3X prices the EC2, load balancer, and database in your Terraform against a live catalog. Start with the quickstart.
Pricing references
Related posts
- AWS Batch cost: free service, you pay for the compute it runs
AWS Batch adds no charge of its own; you pay for the EC2, Fargate, or Spot compute your jobs run on. Compute environment choice and Spot are the big levers. Here is how to run batch workloads cheaply.
- What happens after AWS free tier ends: avoiding the cliff
The AWS free tier covers limited usage for twelve months (and some services always), and when it expires, resources that were free start billing at standard rates. Here is what changes, what to watch, and how to avoid a surprise bill.
- How to cut your AWS bill by 30 percent: the ordered playbook
A 30 percent AWS reduction is achievable on most untouched accounts, and the order of the levers matters more than the list. Delete first, resize second, commit last. Here is the sequenced playbook with expected savings per step.
- AWS region pricing differences explained: why the same resource costs more elsewhere
The identical EC2 instance, S3 bucket, or RDS database costs different amounts depending on the AWS region. Understanding why, and which regions are cheapest, can meaningfully cut your bill. Here is the full explanation.
Share this post
Try C3X on your own Terraform
Free and open source. No API key required. One command to install, one command to estimate.