Table Of Contents
What Does Amazon ECS Do? Amazon ECS Pricing Explained How Does ECS Billing Work? Amazon ECS Cost Optimization: How To View, Control, And Optimize Your ECS Costs Amazon ECS FAQs

With containerization, you can write an application once and run it anywhere. Along with portability, containers are also much more resource-efficient than traditional virtual machines (VMs). However, managing containers at scale can be challenging.

Besides, many teams find container orchestration platforms like Kubernetes overkill and too complex.

By providing a managed container platform, Amazon Elastic Container Service (Amazon ECS) offers an alternative to building, configuring, and managing your own containerization infrastructure.

But is ECS pricing worth it? This Amazon ECS pricing guide will answer that question — as well as cover ECS pricing in detail.

Table of Contents

What Does Amazon ECS Do?

Amazon ECS delivers a managed container orchestration service within the Amazon Web Services (AWS) public cloud. You can run thousands of containers with your favorite Continuous Integration and Continuous Delivery (CI/CD) tools securely and scalably.

Also, you can integrate ECS with AWS Fargate serverless computing. This eliminates the need to configure and manage control planes, instances, and nodes yourself.

Autonomous Scaling

AWS promises to save you up to 50% on compute costs by utilizing autonomous scaling, provisioning, and usage-based pricing. AWS ECS Anywhere also lets you build, deploy, and orchestrate container-based applications on-premises and in the cloud.

In addition, ECS provides access to the performance, scalability, and availability of the AWS public cloud, including Amazon EC2 instances, Spot pricing, and serverless computing via AWS Fargate.

To help you understand what you’re paying for and how to optimize it, here’s how ECS prices these capabilities.

The Cloud Cost Playbook

Amazon ECS Pricing Explained

Amazon’s Elastic Container Service lets you pay for the resources you create to run your application. Those resources include Amazon Elastic Compute Cloud (Amazon EC2) instances, Amazon Elastic Block Store (Amazon EBS), etc.

You won’t pay anything extra for ECS beyond what you’d pay for EC2 instances, Fargate vCPUs, EBS storage volumes, data transfers outside AWS, etc.

ECS also enables you to pay for what you use, while you use it. The service does not require you to sign a minimum usage contract, pay upfront fees, or provision resources. It’s a pay-as-you-go pricing model.

So how does Amazon ECS billing really work? Well, here’s how ECS calculates your bill.

How Does ECS Billing Work?

Amazon ECS billing follows two models:

  • Amazon EC2 launch type pricing: Launch and run Docker containers on Amazon ECS with Amazon EC2 instances.
  • AWS Fargate launch type pricing: Launch and run containerized applications using this fully managed, serverless option.

However, the two charge models apply to four use cases: Amazon EC2 launch type, AWS Fargate launch type, Amazon ECS on AWS Outposts (on-premises), and Amazon ECS Anywhere (hybrid cloud). Here’s how it works.

1. Pricing for Amazon EC2 launch type

You won’t pay extra for deploying and running containers with EC2 instances. Your only cost is for the underlying EC2 instances and Amazon EBS storage volumes you need to run your application.

In addition, this launch type enables you to choose from five types of EC2 instances:

  • On-Demand Instance pricing – These instances are available as needed, and are ideal for workloads with unpredictable resource utilization. On-Demand pricing is per hour or second, depending on the instance types you choose (general purpose, memory-optimized, compute-optimized, accelerated computing, or storage optimized).
  • Reserved Instance pricing – This is a discount off the standard, On-Demand pricing for using a consistent resource capacity for up to three years. Reserved instances (RIs) are ideal for steady and predictable usage. Pricing is in dollars per hour.
  • Spot Instance pricing – AWS’s surplus compute capacity is discounted (up to 90% off the On-Demand rate) for these EC2 instances, but they are only suitable for temporary usage.
  • Savings Plans pricing – Like RIs, SPs offer discounted per hour billing rates for committing to use a specific resource capacity over the course of one or three years. Pricing is measured in dollars per hour.
  • Dedicated Host pricing – This option refers to charges for a physical Amazon EC2 server that is private to you. It also enables you to use your existing licenses, including SUSE Linux Enterprise Server license, Windows Server, and SQL Server. Pricing is either per hour (On-Demand) or Reserved (up to 70% off the On-Demand rate with commitment).

Here are some things to keep in mind when using Amazon ECS with Amazon EC2:

  • You have control over the type and size of instances to use.
  • You have deep access to the infrastructure for further customizations.
  • You are responsible for provisioning, monitoring, maintaining, and securing the infrastructure.
  • EC2 instances have a fixed capacity, so ensure you understand your application’s resource consumption requirements to configure the most optimal instance types and sizes from the start.
  • You pay for EC2 instances for as long as they are running, so idle instances may increase costs unnecessarily until you terminate them.
CloudZero Advisor Beta

Whether you are configuring your EC2 or ECS environment for optimal performance or cost savings, CloudZero Advisor can help you to compare instance types, sizes, and prices. It provides insights based on factors such as AWS services, resource types, AWS regions, pricing, and instance types. Visit CloudZero Advisor to learn more.

Dashboard

A similar pricing model applies to AWS Outposts.

2. Pricing for Amazon ECS on AWS Outposts

AWS Outposts provides a fully managed service that enables you to leverage AWS cloud infrastructure, APIs, services, and tools to your on-premises setup. You get to launch your EC2 instances and manage applications on AWS Outposts through the AWS console, Command-Line Interface or SDK as you would in the public cloud.

Note that the ECS control plane is in the cloud — not on Outposts.

Also, you pay for the EC2 instance types, Amazon S3 usage, and Amazon EBS gp2 volume you use to run container instances.

The actual charges you’ll pay depend on the specific AWS Outposts configuration option you choose, which pool resources together, among them EC2 instances, and EBS volumes and Amazon S3. That pricing includes the cost of installation, upgrades, delivery, infrastructure service maintenance, and software patches.

One more thing. There are three payment options available when purchasing Outposts rack capacity over a three-year period:

  • All Upfront – Pay in full, in advance to get the best price
  • Partial Upfront – You can pay 50% up front and the remainder monthly, over the course of the plan
  • No Upfront – Pay nothing upfront and the rest monthly

Your Outposts rack capacity will become available for launching instances 24 hours after installation. That’s when any monthly or up front charges begin to apply.

You can find the most up-to-date AWS Outposts rack pricing here and AWS Outposts servers pricing here.

3. Pricing for Amazon ECS Anywhere

With this option, you can launch and deploy containerized applications on your own infrastructure (on-premises) using an in-region ECS control plane. ECS Anywhere is an extension of Amazon ECS that’s ideal for you if you have significant investments in your data center already and specific compliance or regulatory obligations that require you to own and operate your infrastructure.

Amazon ECS

With Amazon ECS Anywhere, workload scheduling, cluster management, and monitoring work the same way in the AWS cloud and on your own infrastructure (on-premises).

There are no upfront commitments or minimum fees required. You only pay for running instances that ECS Anywhere manages. Pricing is $0.01025 per hour for every managed ECS Anywhere on-premises instance. Each of these instances are self-managed and need to be registered as part of an Amazon ECS cluster and be running the Amazon ECS container agent.

ECS Anywhere billing is based on the duration that the instance you register to an Amazon ECS cluster is connected to the ECS control plane, calculated to the nearest second. Deregistering, shutting down, or terminating an on-premises instance stops the billing.

Oh, another thing. You will also have to pay for the AWS Systems Manager Agent (SSM Agent). Amazon ECS Anywhere requires it to verify and register your on-premises instances. You may need to pay up, more so when you have over 1,000 instances per account per region at any given time.

How does launching ECS containers with AWS Fargate compare?

4. Pricing for AWS Fargate launch type

You won’t have to pay anything up front here. You only pay for the amount of virtual CPU, RAM, and storage capacity that your containerized applications use when running on the Amazon Elastic Container Service (ECS).

AWS Fargate calculates your costs from the time you start to download a Docker container image until you complete the ECS task, rounded off to the nearest second. There’s also a one minute minimum requirement (15 minutes for Windows).

Specifically, pricing for ECS with AWS Fargate depends on the following configurable components:

  • vCPU – Pricing is per vCPU per hour
  • Memory – Pricing is per Gigabyte (GB) per hour
  • Storage – You get a complimentary 20GB of ephemeral storage by default, with additional storage capacity costing from $0.000111 per storage GB/hour
  • Operating system and CPU architecture – Pricing starts at $0.04048 per vCPU/hour and $0.004445 per GB/hour for Linux/x86; $0.03238 per vCPU/hour and $0.00356 per GB/hour for Linux/ARM; $0.09148 per vCPU/hour and $0.01005 per GB/hour with $0.046 OS license fee (per vCPU/hour) for Windows/X86
  • AWS Region – There are 22 available regions across the globe
  • Data transfers – You pay for data transfers out or when your containers use other AWS services. As an example, if your containers use Amazon CloudWatch Logs to perform application logging, you’ll pay for using CloudWatch. And if you transfer data out from AWS to the internet, charges start from $0.09 per GB after the first 100 GB free (which apply across all AWS services associated with your account).

Note that you can use Spot instances and Savings Plans with AWS Fargate.

Fargate Spot pricing for Amazon ECS can get you up to 70% off the regular On-Demand rate (starts at $0.012144 per vCPU/hour and $0.0013335 per GB of RAM/hour in the US East (Ohio) region), provided you use a Linux OS and X86 CPU architecture.

Savings Plans for Amazon ECS Compute offer discounts of up to 50% on AWS Fargate usage if you commit to using a certain amount of compute (measured in dollars per hour) for the duration of one or three years.

Pricing for AWS Fargate Launch type is costlier per hour than the Amazon EC2 Launch type. However, not only does the AWS Fargate Launch type require less management than the EC2 Launch type, but it also automatically shuts down an ECS task when it completes so that an idle task does not accrue further costs.

Amazon ECS Cost Optimization: How To View, Control, And Optimize Your ECS Costs

You can improve the portability, scalability, resilience, and resource efficiency of your applications through containerization. However, the distributed nature of containers and their high scalability can create cost blindspots.

If cost efficiency is important to your Docker container system on AWS (Amazon ECS), CloudZero offers you the tools you need to understand why, what, and who are driving your Amazon ECS costs.

CloudZero empowers you to:

  • Seamlessly measure cost of goods sold (COGS) across containerized infrastructure.
  • View Amazon ECS costs per customer, product, feature, environment, deployment, etc.
  • View how much it costs you to run a container or microservice.
  • Combine containerized and non-containerized costs for easier analysis.
  • Track idle resources so you can optimize your infrastructure.
  • Use CloudZero Advisor to pick the right EC2 instance types and sizes for your launch type, including Outposts and ECS Anywhere.
  • Get noise-free cost anomaly alerts right in your Slack, email, or favorite incident reporting tool to prevent overspending.

to see how it all works!

Amazon ECS FAQs

Here are answers to some frequently asked questions about Amazon ECS pricing.

What is the Amazon ECS pricing model?

You pay for only what you use for Amazon ECS.

Do you pay a separate fee for using Amazon ECS on AWS?

No. There are no additional fees. Instead, you pay for the resources you use to launch and run your containerized applications, such as Amazon EBS volumes, EC2 instances, and Amazon S3 buckets.

What is the difference between AWS Fargate launch type and Amazon EC2 launch type?

Both ways to launch and run containers on Amazon ECS are fully managed. However, the AWS Fargate launch type is serverless and requires minimal self-management once you configure your instances. By contrast, the EC2 launch type is mainly self-managed with the exception of container orchestration, which AWS handles.

What is the difference between AWS Outposts and Amazon ECS Anywhere?

AWS Outposts enables you to use fully managed AWS infrastructure, APIs, services, and tools to virtually any on-premises data center, hybrid cloud, or edge computing strategy. The difference is that ECS Anywhere uses an in-region Amazon ECS control plane and streamlines software and compliance management.

The Cloud Cost Playbook

The step-by-step guide to cost maturity

The Cloud Cost Playbook cover