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.
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.