With Amazon CloudWatch, there is no up-front commitment or minimum fee; you simply pay for what you use. You will be charged at the end of the month for your usage.
Free tier
You can get started with Amazon CloudWatch for free. Most AWS Services (EC2, S3, Kinesis, etc.) vend metrics automatically for free to CloudWatch. Many applications should be able to operate within these free tier limits. You can learn more about AWS Free Tier here.
| Metrics | Basic Monitoring Metrics (at 5-minute frequency) 10 Detailed Monitoring Metrics (at 1-minute frequency) 1 Million API requests (not applicable to GetMetricData and GetMetricWidgetImage) |
|---|---|
| Dashboard | 3 Dashboards for up to 50 metrics per month |
| Alarms | 10 Alarm metrics (not applicable to high-resolution alarms) |
| Logs | 5GB Data (ingestion, archive storage, and data scanned by Logs Insights queries) |
| Events | All events except custom events are included |
Paid tier
There is no up-front commitment or minimum fee. You simply pay for what you use and will be charged at the end of the month for your usage.
Note: Pricing varies by region. Estimate your monthly bill using the AWS Pricing Calculator.
-
Metrics
-
Dashboards
-
Alarms
-
Logs
-
Events
-
Metrics
-
-
Dashboards
-
-
Alarms
-
-
Logs
-
-
Events
-
Pricing examples
Note: Pricing values displayed here are meant to be examples only. Please refer to pricing tabs for most current pricing information for your respective region(s).
-
Example 1 - EC2 Detailed Monitoring
If your application runs on 10 Amazon EC2 instances 24x7 for a 30-day month, and you enable EC2 detailed monitoring on all instances, your charges would be as follows:
Total number of metrics = 7 metrics per instance * 10 instances = 70 metrics
Monthly CloudWatch Metrics Charges @$0.30 per custom metric = 70 * $0.30 = $21
Monthly CloudWatch charges = $21 per month
Once you exceed 10,000 total metrics then volume pricing tiers will apply - see metrics pricing table for details.
-
Example 2 - Custom metrics
If your application runs on 51,000 Amazon EC2 instances 24x7 for a 30-day month, and you published 5 custom metrics via the PutMetricData API, your charges would be as follows:
Total number of metrics = 5 metrics per instance * 51,000 instances = 255,000 metrics
First 10,000 custom metrics @$0.30 per metric = 10,000 * $0.30 = $3,000
10,001 to 250,000 custom metrics @$0.10 per metric = 240,000 * $0.10 = $24,000
250,001 to 255,000 custom metrics @0.05 per metric = 5000 * $0.05 = $250
Monthly CloudWatch custom metrics charges = $3000 + $24000 + $250 = $27,250 per monthTotal number of API requests = 51,000 instances * (43,200 minutes/5 minutes) = 440,640,000 requests
First 1,000,000 API requests = $0
1,000,001 to 440,640,000 API requests = 439,640,000/1,000 * $0.01 = $4,396.40Monthly CloudWatch charges = $27,250 + $4,396.40 = $31,646.40 per month
-
Example 3 - Monitoring with logs
If you are monitoring HTTP 2xx, 3xx & 4xx response codes using web application access logs 24x7 for one 30-day month, by sending 1GB per day of ingested log data, monitoring for HTTP responses, and archiving the data for one month, your charges would be as follows:
Monthly Ingested Log Charges
Total log data ingested = 1GB * 30 days = 30GB
0 to 5GB = $0
5 to 30GB = $0.50 * 25 = $12.50Monthly Monitoring Charges
3 CloudWatch Metrics @$0 = 3 * $0 = $0Monthly Archived Log Charges (assume log data compresses to 6GB)
0 to 5GB = $0
5GB to 6GB = $0.03 * 1 = $0.03Monthly CloudWatch Charges = $12.50 + $0 + $0.03 = $12.53
-
Example 4 - Monitoring VPC flow logs
If you are monitoring VPCs that send 72TB of ingested VPC flow logs per month and archiving the data for one month, your charges would be as follows:
Monthly Log Ingestion Charges
0 to 10TB @$0.50 per GB = 10 * 1,024 * $0.50 = $5,120.00
10TB to 30TB @$0.25 per GB = 20 * 1,024 * $0.25 = $5,120.00
30TB to 50TB @$0.10 per GB = 20 * 1,024 * $0.10 = $2,048.00
50TB to 72TB @$0.05 per GB = 22 * 1024 * $0.05 = $1,126.40
Total Ingestion Charges = $5,120 + $5,120 + $2,048 + $1126.40 = $13,414.40
Monthly Log Archival Charges (Assume log data compresses to 30TB)
30TB @ $0.033 per GB = 30 * 1024 * 0.033 = $1,013.76Monthly CloudWatch Charges = $13,414.40 + $1,013.76 = $14,428.16
-
Example 5 - Alarming with Anomaly Detection
If you enable Amazon CloudWatch Anomaly Detection on 10 metrics per month and only want to alarm on 5 of those metrics, you will create 5 anomaly detection alarms. Anomaly Detection is available with standard resolution alarms only. Your monthly bill is calculated as follows:
Total number of anomaly detection alarms = 5
Alarms are billed based on the number of metrics per alarm. For every anomaly detection alarm, there are three standard resolution metrics per alarm. One is the actual metric being evaluated, the second is the upper bound of expected behavior, and the third is the lower bound of the expected behavior.One anomaly detection alarm = $0.10 * 3 standard resolution metrics per alarm = $0.30 per month
Five anomaly detection alarms = $0.30 per anomaly detection alarm * 5 alarms = $1.50 per monthMonthly CloudWatch charges = $1.50 per month
Pricing values displayed here are based on US East Regions. Please refer to pricing tabs for most current pricing information for your respective region(s). Anomaly Detection is currently available in preview in all AWS Regions except Asia Pacific (Hong Kong), GovCloud, and China Regions.
-
Example 6 - Container Insights for Amazon ECS
If you monitor 1 container cluster with 10 Amazon EC2 instances, 50 average running containers, 20 unique task names, and 5 unique service names, your costs would be as follows:
CloudWatch metrics
There is a predefined number of metrics reported for every cluster, task, and service. Every cluster reports 8 metrics; every task reports 6 metrics; and every service reports 11 metrics. CloudWatch metrics are aggregated by task and service using their name. Increasing the count of running instances will not impact the count of CloudWatch metrics generated. All CloudWatch metrics are prorated on an hourly basis. This example assumes that data points are reported for the entire month.Monthly number of CloudWatch metrics per cluster= 8 cluster metrics + (6 task metrics * 20 unique task names) + (11 service metrics * 5 unique service names)= 8 + (6 * 20) + (11 * 5)= 183 CloudWatch metricsMonthly CloudWatch metrics costs = $0.30 per metric for first 10,000 metrics * 183 metrics = $54.90Once you exceed 10,000 total metrics then volume pricing tiers will apply - see metrics pricing table for details.CloudWatch Logs
For Amazon ECS, on average, 13 KB are ingested per metric per hour. The cost of logs ingested will vary based on names used for your cluster, container, pod, service, instance names, labels, etc.Monthly GB of CloudWatch Logs ingested = (13 KB/1024/1024) GB * 183 metrics * 730 average hours in a month = 1.66 GB per monthMonthly ingested logs costs = $0.50 per GB of ingested logs * 1.66 GB of performance events as CloudWatch Logs = $0.83 per monthMonthly CloudWatch costs = $54.90 + $0.83 = $55.73 per month.
Pricing values displayed here are based on US East (N. Virginia) AWS Regions. Please refer to the pricing information for your Region. -
Example 7 - Container Insights for Amazon EKS and Kubernetes (k8s)
If you monitor 1 container cluster with 10 nodes or Amazon EC2 instances, 20 pods, 5 unique service names, and 1 namespace, your charges would be as follows:
CloudWatch metrics
There is a predefined number of metrics reported for every cluster, node, pod, and service. Every cluster reports 24 metrics; every node reports 8 metrics; every pod reports 9 metrics; and every service reports 6 metrics. CloudWatch metrics are aggregated by pod, service, and namespace using their name. Increasing the count of running instances will not impact the count of CloudWatch metrics generated. All CloudWatch metrics are prorated on an hourly basis. This example assumes that data points are reported for the entire month.Monthly number of CloudWatch metrics per cluster= 24 cluster metrics + (10 nodes or EC2 instances * 8 node metrics) + (20 unique pod names * 9 pod metrics * 1 namespace) + (5 unique service names * 6 service metrics * 1 namespace) + (1 unique namespace * 6 namespace metrics)= 24 + (10 * 8) + (20 * 9 * 1) + (5 * 6 * 1) + (1 * 6) = 320 CloudWatch metricsMonthly CloudWatch metrics costs = $0.30 per metric for first 10,000 metrics * 320 metrics = $96Once you exceed 10,000 total metrics then volume pricing tiers will apply - see metrics pricing table for details.CloudWatch Logs
For Kubernetes, on average, 38 KB are ingested per metric per hour. The cost of logs ingested will vary based on names used for your cluster, container, pod, service, instance names, labels, etc.Monthly GB of CloudWatch Logs ingested = (38 KB/1024/1024) GB * 320 metrics * 730 average hours in a month = 8.47 GB per month
Monthly ingested logs costs = $0.50 per GB of ingested logs * 8.47 GB of performance events as CloudWatch Logs = $4.23 per monthMonthly CloudWatch costs = $96 + $4.23 = $100.23 per month.Pricing values displayed here are based on US East (N. Virginia) AWS Regions. Please refer to the pricing information for your Region.
Pricing calculator
Additional pricing resources
Calculate your total cost of ownership (TCO)
Easily calculate your monthly costs with AWS
Additional resources for switching to AWS
Learn more about Amazon CloudWatch