- Management and Governance›
- Amazon CloudWatch›
- Pricing
Amazon CloudWatch Pricing
Why Amazon CloudWatch?
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.
AWS Pricing Calculator
Calculate your Amazon CloudWatch and architecture cost in a single estimate.
| Logs |
Logs 5 GB Data (ingestion, archive storage, and data scanned by Logs Insights queries) Contributor Insights for CloudWatch Logs 1 Contributor Insights rule per month The first 1 million log events that match the rule per month |
|---|---|
| Metrics |
Basic Monitoring Metrics (Metrics sent from AWS Services by default) 10 Metrics (of Custom Metrics and Detailed Monitoring Metrics) 1 Million API requests (not including GetMetricData, GetInsightRuleReport and GetMetricWidgetImage: these 3 operations are always charged) |
| Dashboards & Alarms | Dashboards
3 Custom Dashboards referencing up to 50 metrics each per month. Additionally, all Automatic Dashboards are free. Alarms 10 Alarm metrics (only applicable to Standard resolution alarms that list metrics directly and don’t use a Metrics Insights query) |
| Application Observability |
Cross-account observability
Application Events from CloudWatch Synthetics Synthetics
|
| Infrastructure Observability |
Database Insights Database Insights Standard Mode: Rolling 7 days of performance data history for the database load metric |
Paid tier
There is no upfront 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.
-
Logs
-
Metrics
-
Dashboards & Alarms
-
Application Observability
-
Infrastructure Observability
-
Logs
-
-
Metrics
-
-
Dashboards & Alarms
-
-
Application Observability
-
-
Infrastructure Observability
-
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 - Application observability: X-Ray tracing
Example 1 – Metrics Insights
Example 1 - EC2 Detailed Monitoring
If you have an application which receives 2,000 incoming requests per hour and you’re using a 10% sampling rate, then your cost would be calculated as follows:
Traces Recorded
Traces Recorded per Month = 2,000 requests per hour x 24 hours x 31 days x 10% = 148,800 traces
Billable Traces Recorded per Month = 148,800 traces - 100,000 traces in free tier = 48,800 traces
Monthly Traces Recorded Charges = 48,800 traces * €0.000005 = €0.24
In addition, let’s assume you make 100 queries per day each scanning the last hour of data captured (200 traces), and retrieve the full trace data for 50 traces per query.
Traces Retrieved and Scanned
Traces Scanned per Month = 100 queries x 200 traces per hour x 31 days = 620,000 traces
Traces Retrieved per Month = 100 queries x 50 traces per query x 31 days = 155,000 traces
Total Traces Retrieved/Scanned per Month = 155,000 traces + 620,000 traces = 775,000 traces
Billable Traces Retrieved/Scanned per Month = 775,000 traces - 1,000,000 traces in free tier = 0 traces
Monthly Traces Retrieved and Scanned Charges = 0 traces * €0.0000005 = €0In addition, let’s assume you have enabled X-Ray Insights on any or all X-Ray groups.
X-Ray Insights Traces Processed
Traces Recorded per Month = 2,000 requests per hour x 24 hours x 31 days x 10% = 148,800 traces
Monthly Insights Traces Processed Charges = 148,800 traces * €0.000001 = €0.15Your total cost per month for using X-Ray tracing equals €0.24+ €0.15 = €0.39.
By default, X-Ray tracing is enabled at a 5% sampling rate when implementing Application Signals. This default tracing rate can optionally be adjusted higher or lower.
If you monitor 1 application that receives 25,000 requests per minute (inbound service requests) and you are using the default 5% sampling rate, your tracing charges are as follows:
Traces stored:
Traces stored per month = 25,000 requests per minute 43,800 minutes per month 5% sample rate = 54,750,000 traces stored per month
Billable traces stored = 54,750,000 traces stored – 100,000 traces in free tier = 54,650,000 traces stored per month
Traces stored charges = 54,650,000 traces stored * €0.000005 = €273.25 per month
In addition, let's assume you make 100 queries per day, with each query scanning the last hour of data capture compromising 75,000 traces, and retrieve the full trace data for 50 traces per query.
Traces retrieved and scanned:
Traces scanned = 100 queries 75,000 traces per hour 31 days = 232,500,000 traces scanned per month
Traces retrieved = 100 queries 50 traces per query 31 days = 155,000 traces retrieved per month
Total traces retrieved and scanned = 155,000 traces + 232,500,000 traces = 232,655,000 traces retrieved/scanned per month
Billable Traces retrieved and scanned = 232,655,000 traces - 1,000,000 traces in free tier = 231,655,000 traces retrieved and scanned per month
Traces retrieved and scanned charges = 231,655,000 traces * €0.0000005 = €115.82 per month
Total charges for X-Ray tracing = €273.25 traces stored + €115.82 traces scanned/retrieved = €389.07 per month
Total charges: €1,510.84 for Application Signals and SLOs + €389.07 for X-Ray traces = €1,899.91 per month
In addition, you can use Synthetics and RUM (real user monitoring) with Application Signals. Refer to individual pricing examples for charges.
If you run Metrics Insights queries through the CloudWatch console, it incurs no charge to you.
When you run your Metrics Insights queries programmatically using AWS CLI, SDK, or AWS CloudFormation, your query is charged based on the number of metrics analyzed, regardless of how you output the results.
If you have 1,000,000 metrics in your account and run a query that selects 1,500 metrics for analysis and that analysis returns 10 time series in the results then your charge will be as follows:
Query charge = 1,500 metrics analyzed * $0.01 per 1,000 metrics analyzed = $0.015
If you have 5,000,000 metrics in your account and run a query that selects 100 metrics for analysis and that analysis returns only 1 time series in the results then your charge will be as follows:
Query charge = 100 metrics analyzed * $0.01 per 1,000 metrics analyzed = $0.001
The number of metrics sent by your EC2 instance as detailed monitoring is dependent on the EC2 instance type. This example assumes 7 metrics.
If your application runs on 5 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 * 5 instances = 35 metrics
Monthly CloudWatch Metrics Charges @$0.30 per custom metric = 35 * $0.30 = $10.50
Monthly CloudWatch charges = $10.5 per month
Once you exceed 10,000 total metrics then volume pricing tiers will apply - see metrics pricing table for details. -
Example 2 – Application observability: End user monitoring with Synthetics
Example 2 - API Gateway Detailed Monitoring
Example 2 - Cross-account observability
If you create 5 canaries that run once every 5 minutes, add alarms on 5 of the metrics generated by the canaries, and store the data for 1 month, your monthly bill will be calculated as follows:
5 canaries * 12 runs per hour * 24 hours per day * 31 days per month = 44,640 canary runs
An API Gateway endpoint enabled with detailed metrics has two resources - /devices and /authenticate deployed to stage called prod. Each of these resources one of the following methods: DELETE, POST, OPTIONS and GET.
By default, API Gateway publishes 4XXError, 5XXError, CacheHitCount, CacheMissCount, Count, IntegrationLatency and Latency per API. Once detailed metrics for API Gateway is enabled, all the above metrics along with dimensions - ApiName, method, resource, stage will be emitted to CloudWatch.
Note, not all metrics may be emitted e.g. 4XXError or 5XXError may not show up if there are no errors.
- Number of resources = 2 (devices and authenticate)
- Number of methods = 4 (DELETE, POST, OPTIONS and GET)
- Number of stage(s) = 1 (prod)
- Metrics published (Count, IntegrationLatency, Latency, 5xx, 4xx) = 5
Total number of metrics generated:
= Method (DELETE, POST, OPTIONS and GET) x Resource (authenticate and devices) x Stage (prod) x Metrics (Count, IntegrationLatency, Latency, 5xx, 4xx)= 2 x 4 x 1 x 5 = 40
Each metric charges $0.30 per full month and it bring the maximum cost to 40 x 0.3 = $12 per month.
Once you exceed 10,000 total metrics then volume pricing tiers will apply - see metrics pricing table for details.
If you have an application that receives 2,000 incoming requests per hour and you’re using a 10% sampling rate, then your traces recorded in your source account X will be:
Traces Recorded per Month = 2,000 requests per hour x 24 hours x 31 days x 10% = 148,800 traces
Billable Traces Recorded per Month = 148,800 traces - 100,000 traces in free tier = 48,800 traces
Monthly Traces Recorded Bill = 48,800 traces * $0.000005 = $0.244
If you share your traces from your source account X with a monitoring account Y using cross-account observability, this will create a copy of your traces on monitoring account Y which will come with no extra cost on your bill. So your monthly bill will be:Monthly traces recorded bill on source account X = $0.244
Monthly traces recorded bill on monitoring account Y = $0If you want to share the same traces from source account X with a second monitoring account, let’s say monitoring account Z, this will create an additional copy of your traces. In this case your source account, account X will be charged for this additional copy. So your final bill on source account X will be:
Monthly traces recorded bill on source account X = $0.244 +
148,800 second trace copy on monitoring account Z * $0.000005 = $0.244 + $0.744 = $0.988
Monthly traces recorded bill on monitoring account Y = $0
Monthly traces recorded bill on monitoring account Z = $0
Additional pricing resources
Easily calculate your monthly costs with AWS.
Contact AWS specialists to get a personalized quote.