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.) send 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 (only applicable to Standard resolution alarms that list metrics directly and don’t use a Metrics Insights query) |
Logs | 5 GB Data (ingestion, archive storage, and data scanned by Logs Insights queries) 1,800 minutes of Live Tail usage per month (approximately an hour per day) |
Events | All events except custom events are included |
Contributor Insights | 1 Contributor Insights rule per month The first 1 million log events that match the rule per month |
Synthetics | 100 canary runs per month |
Evidently | First time free trial includes 3 million Evidently events and 10 million Evidently analysis units per account |
RUM | First time free trial includes 1 million RUM events per account |
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
-
Events
-
Contributor Insights
-
Canaries
-
Evidently
-
RUM
-
Metrics Insights
-
Cross-account observability
-
Internet Monitor
-
Logs
-
-
Metrics
-
-
Dashboards
-
-
Alarms
-
-
Events
-
-
Contributor Insights
-
-
Canaries
-
-
Evidently
-
CloudWatch Evidently allows application developers to conduct experiments and identify if new features perform statistically better than the baseline. When launching new features, developers can expose features to a subset of users, monitor key metrics, then safely expand the rollout for general use. Evidently is priced by the number of Evidently events, and Evidently analysis units.
Evidently Events
There are two types of Evidently events. One type is a data event from a user action such as a click or page view. The other type is an assignment event which determines the feature variation to serve to a user.Evidently events: $5 per 1 million events
Evidently Analysis Units
Evidently analysis units are generated from Evidently events, based on rules you have created in Evidently, i.e., they are the number of rule matches on events. For example, a user click event that produces a single Evidently analysis unit: click count. Another example is a user checkout event that produces two Evidently analysis units: checkout value and number of items in cart.Evidently analysis units: $7.50 per 1 million analysis units
Note: Costs for CloudWatch metrics will also be charged for metrics generated by Evidently.
-
RUM
-
CloudWatch RUM is priced on the number of RUM events collected. Each data item collected using the RUM web client is considered a RUM event. Examples of a RUM event include a page view, a JavaScript error, and an HTTP error. You have the flexibility of configuring the data plug-ins. See more here.
RUM events: $1 per 100k events
Additional charges
You may incur additional charges for other AWS services utilized such as CloudWatch Logs, Amazon Cognito, and AWS X-Ray. For details on AWS service pricing, see the pricing section of the relevant AWS service detail pages.
-
Metrics Insights
-
CloudWatch Metrics Insights is available at no cost through the CloudWatch console. CloudWatch Metrics Insights is also available through the GetMetricData API.
When you create a CloudWatch Metrics Insights query, based on your query definition, Metrics Insights will scan through all the metrics in your account and select the metrics for analysis based on the namespace, metric name, and WHERE clause specified in your query. It will then retrieve the time series data for those selected metrics and analyze that data, applying any GROUPING and ORDERING specified in the query clauses, before returning the requested results.
When querying with Metrics Insights through the GetMetricData API, your charge is calculated based on the number of metrics analyzed, regardless of how you output the results. You will be charged $0.01 per 1000 metrics analyzed.
-
Cross-account observability
-
Cross-account observability, an addition to CloudWatch’s unified observability capability, introduces two account categories: monitoring account and source account. For details, see the cross-account observability documentation.
Cross-account observability comes with no extra cost for logs and metrics. CloudWatch delivers the first trace copy stored in the first monitoring account with no extra cost. Any trace copies sent to additional monitoring accounts are billed to the source accounts for the traces recorded based on AWS X-Ray pricing. Standard CloudWatch rates apply for the features used in monitoring accounts, such as CloudWatch Dashboards, Alarms, or Logs Insights queries.
-
Internet Monitor
-
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
The number of metrics sent by your EC2 instance as detailed monitoring is dependent on the EC2 instance type - see Instance Metrics documentation for details. This example assumes 7 metrics, which covers the most commonly used instance types.
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 - Cross-account observability
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
-
Example 3 - 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 4 - S3 Replication metrics
If your S3 bucket has 5 replication rules enabled with S3 Metrics and Notifications enabled or S3 Replication Time Control (RTC) for each rule, you charges will be as follows:
Total number of replication metrics = 4 metrics per replication rule * 5 replication rules = 20 replication metrics
First 10,000 custom metrics at $0.30 per metric = 20 * $0.30 = $6.00
Monthly CloudWatch charges = $6.00 per month
(Note: For S3 Replication metrics you are not charged for API requests)
-
Example 5 - 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 6 - Analyzing logs with Live Tail
You get 1,800 minutes of Live Tail session usage per month with the AWS Free Tier, after which you pay $0.01 per minute.
If you are using Live Tail to explore and analyze your logs in real time for 1,000 minutes in one month, your monthly cost would be as follows:
Monthly Live Tail usage charges
Total Live Tail usage in minutes = 1,000
0 to 1,000 minutes = $0Monthly Live Tail charges = $0
If you are using Live Tail to explore and analyze your logs in real-time for 20,000 minutes in one month, your monthly cost would be as follows:
Monthly Live Tail usage charges
Total Live Tail usage in minutes = 20,000
0 to 1,800 minutes = $0
1,801 to 4,000 minutes = $0.01 * 18,200 = $182Monthly Live Tail charges = $182
-
Example 7 – Monitoring VPC flow logs delivered to CloudWatch logs
If you are monitoring VPCs that send 72TB of ingested VPC flow logs to CloudWatch 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.40Monthly log archival charges (assume log data compresses to 30TB)
30TB @ $0.03 per GB = 30 * 1024 * 0.03 = $921.6Monthly CloudWatch Charges = $13,414.40 + $921.6 = $14,336
-
Example 8 - Monitoring VPC flow logs delivered to S3
If you are monitoring VPCs that send 72TB of ingested VPC flow logs in the optional Apache Parquet format directly to S3 per month and archiving the data for one month, your charges would be as follows:
Monthly log ingestion charges
0 to 10TB @$0.25 per GB = 10 * 1,024 * $0.25 = $2,560.00
10TB to 30TB @$0.15 per GB = 20 * 1,024 * $0.15 = $3,072.00
30TB to 50TB @$0.075 per GB = 20 * 1,024 * $0.075 = $1,536.00
50TB to 72TB @$0.05 per GB = 22 * 1024 * $0.05 = $1,126.40
Total Ingestion Charges = $2,560 + $3,072 + $1,536 + $1126.40 = $8,294.40Monthly Apache Parquet format conversion charges (optional)
72TB @$0.03 per GB = 72 * 1,024 * $0.03 = $2,211.84Monthly log archival charges (assume log data compresses to 6.5TB)* *
6.5TB @ $0.023 per GB = 6.5 * 1024 * 0.023 = $153.01Monthly charges = $8,294.40 + $153.01 + $2,211.84 = $10,659.25
-
Example 9 - Detecting and masking sensitive log data with Data Protection
In this scenario, you are enabling ongoing data protection for a log group that collects 1 GB of log data per month from a payment processing application.
Monthly ingested log charges
Total log data ingested = 1 GB * 30 days = 30 GB
Charges for log data ingestion (0 to 5 GB): = $0
Charges for log data ingestion (5 to 30 GB) = $0.50 * 25 = $12.50Data protection charges for scanning, detecting, and masking sensitive data
Total log data scanned with data protection = 1 GB * 30 days = 30 GB
Charges for log data scanned = $0.12 per GB * 30 GB = $3.60Monthly archived log charges (assume log data compresses to 6 GB)
Charges for 0 to 5 GB = $0
Charges for 5 GB to 6 GB = $0.03 * 1 GB = $0.03Monthly CloudWatch charges = $12.50 + $3.60 + $0.03 = $16.13
-
Example 10 - Monitoring VPC flow logs with Amazon Kinesis Data Firehose
The example considers pricing region as US East (N. Virginia). If you are monitoring VPCs that send 72TB of ingested VPC flow logs directly to Amazon Kinesis Data Firehose per month, your charges would be as follows:
Monthly log delivery charges
0 to 10TB @$0.25 per GB = 10 * 1,024 * $0.25 = $2,560.00
10TB to 30TB @$0.15 per GB = 20 * 1,024 * $0.15 = $3,072.0030TB to 50TB @$0.075 per GB = 20 * 1,024 * $0.075 = $1,536.00
50TB to 72TB @$0.05 per GB = 22 * 1024 * $0.05 = $1,126.40Total delivery charges = $2,560 + $3,072 + $1,536 + $1126.40 = $8,294.40
Monthly KDF ingestion charges
Per GB processed to VPC = 72 * 1,024 * $0.13 = $9,584.64Total monthly charges = $8,294.40 + $9,584.64 = $17,879.04
If you enable Amazon CloudWatch Anomaly Detection on 10 sta
-
Example 11 - Alarming with Anomaly Detection
If you enable Amazon CloudWatch Anomaly Detection on 10 standard resolution metrics per month and only want to alarm on 5 of those metrics, you will create 5 standard resolution anomaly detection alarms. Anomaly Detection is available with standard resolution alarms only. Your monthly bill is calculated as follows:
Total number of standard resolution 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 standard resolution anomaly detection alarm = $0.10 * 3 standard resolution metrics per alarm = $0.30 per month
Five standard resolution anomaly detection alarms = $0.30 per standard resolution anomaly detection alarm * 5 alarms = $1.50 per month
Monthly 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 all commercial AWS Regions.
-
Example 12 - 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 metrics
Monthly CloudWatch metrics costs = $0.30 per metric for first 10,000 metrics * 183 metrics = $54.90
Once 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 month
Monthly ingested logs costs = $0.50 per GB of ingested logs * 1.66 GB of performance events as CloudWatch Logs = $0.83 per month
Monthly 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 13 - 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 metrics
Monthly CloudWatch metrics costs = $0.30 per metric for first 10,000 metrics * 320 metrics = $96
Once 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 month
Monthly 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.
-
Example 14 - Monitoring your application with ServiceLens
If you monitor an application that contains APIs (using Amazon API Gateway), 1 container cluster with 10 nodes or Amazon EC2 instances, 20 pods, 5 unique service names, and 1 namespace, 3 Lambda functions, and 1 DynamoDB table, your charges would be as follows:
CloudWatch metrics
APIs, Lambdas, and DynamoDB: Metrics from these AWS services are available with no additional charge.Kubernetes: As described in Example 7, there is a predefined number of metrics reported for every cluster, node, pod, and service (to learn more, see Kubernetes on AWS). 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) = 24 + 80 + 180 + 30 + 6 = 320 CloudWatch metricsMonthly CloudWatch metrics costs = $0.30 per metric for first 10,000 metrics * 320 metrics = $96. Once you exceed 10,000 total metrics then volume pricing tiers will apply - see metrics pricing table for details.
CloudWatch Logs
APIs and Lambdas: For API Gateway Logs or Lambda Logs ingested in CloudWatch, the Monthly ingested logs costs = $0.50 per GB of ingested logs * 50 GB of performance events as CloudWatch Logs = $25 per month.AWS X-Ray
If the application 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.24In addition, let’s assume you make 100 queries scanning each 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
Since the first 1,000,000 traces retrieved or scanned each month are free with AWS X-Ray, it costs $0 to retrieve and scan 775,000 traces.Your total cost per month for using AWS X-Ray equals $0.24 for traces recorded.
Monthly monitoring costs = $96 + 25+ $4.23 + $0.24 = $125.47 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 15 – Monitoring with contributor insights
If you are monitoring Amazon VPC Flow Logs with a volume of 225 billion Log Events to CloudWatch Logs per month, and you have three Contributor Insights rules that match 100 percent, 50 percent, and 10 percent of these log events respectively, your charges will be as follows:
Rule charges
Total number of rules = 3 rules
First Contributor Insights rule = $0
2 Contributor Insights rules @ $0.50 per rule = $1.00Matched Log events
Total Number of Matched Log Events = (225B * 100%) + (225 * 50%) + (225B * 10%) = 225B + 112.5B + 22.5B = 360 Billion
0 to 1 million matched log events = $0
1M to 360B matched log events = 359,999M * $0.02 = $7,200Monthly CloudWatch charges = $1.00 + $7,200 = $7,201
-
Example 16 – End user monitoring with Synthetics
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
Monthly CloudWatch charges
Canary run charges = 44,640 canary runs * $0.0012 per canary run = $53.57 per month
5 alarms per month = 5 * $0.10 = $0.50 per month
Total monthly CloudWatch charges = $53.57 + $0.50 = $54.07Monthly additional charges
Each canary run also runs an AWS Lambda function and writes logs and results to CloudWatch Logs and the designated Amazon S3 bucket. For details on AWS service pricing such as AWS Lambda, Amazon S3, and CloudWatch Logs, see the pricing section of the relevant AWS service detail pages.
Lambda charges = requests charges + duration charges
= requests from 44,640 runs * $0.2 per 1,000,000 + duration of 20 seconds * 44,640 canary runs * 1 GB memory size * $0.000016667 per GB per sec
= $0.01 + $14.88 = $14.89 per monthCloudWatch Logs charges = collection charges + storage charges
= collection of 0.00015 GB per run * 44,640 runs * $0.5 per GB + storage of 0.00015 GB per run* 44,640 canary runs * $0.03 per GB per month
= $3.35 + $0.20 = $3.55 per monthS3 charges = put request charges + storage charges
= put requests of 44,640 runs * $0.005 per 1,000 requests + storage of 0.001 GB per run * 44,640 canary runs * 1 month * $0.023 per GB per month
= $0.22 + $1.03 = $1.25 per monthAdditional monthly charges = $14.89 + $3.55 + $1.25 = $19.69
Total monthly charges = $54.07 + $19.69 = $73.76
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).
-
Example 17 – Alarming with composite alarms
Composite alarms can combine any type of CloudWatch alarm. Metric alarms are billed based on the number of metrics per alarm, while composite alarms are billed per alarm unit. One composite alarm costs $0.50 per month, regardless of the number of metric alarms it combines.
If you create one composite alarm that combines four standard resolution metric alarms, your monthly bill is calculated as follows:
Four standard resolution alarms = $0.10 per alarm metric * 4 = $0.40 per month
One composite alarm = $0.50 per month
Monthly CloudWatch charges = $0.40 + $0.50 = $0.90 per month
-
Example 18 – S3 Request Metrics
Amazon S3 Request Metrics allow you to quickly identify and act on operational issues. There are 16 available metrics that you can configure filters for, identified by a shared prefix or object tag, and only monitor a subset of objects. The filters align your metrics to specific business applications, workflows, or internal organizations. The activity on the bucket determines which metrics are generated, so all 16 metrics may not necessarily be published every hour of the day.
For example, let’s take an application that performs a backup routine every day and completes within a single hour. Because the application only makes PUT requests to S3, a subset of metrics, such as AllRequests, PutRequests, TotalRequestLatency, and BytesUploaded, are generated; metrics related to other types of operations, such as DeleteRequests, SelectRequests, and SelectReturnedBytes, would not be generated. For our example, we will assume 8 out of the 16 available metrics are generated – detailed list of metrics available in Amazon S3 documentation. Assuming the routine starts and finishes within the same hour, the charges to generate and publish these metrics to CloudWatch are:
Total number of metrics = 8
Total hours of metrics published = 1 hour per day for 30 days (assuming example month has 30 days) = 1 * 30 = 30 hours per month
Total hours per month = 30 days * 24 hours = 720 hours per month
First 10,000 custom metrics @$0.30 per metric = $0.30 * 8 (number of metrics) * 30 (metric hours per month) per 720 (hours per month) = $0.10 per month.Monthly CloudWatch charges for S3 Request Metrics = $0.10 per month
Once you exceed 10,000 total metrics then volume pricing tiers will apply based on the pricing table above.If you monitor 1 Lambda function that is invoked 1M times per month, your costs would be as follows:
-
Example 19 – Monitoring with Lambda Insights
If you monitor 1 Lambda function that is invoked 1M times per month, your costs would be as follows:
CloudWatch metrics
There is a predefined number of metrics reported for every function. Every function reports 8 metrics. CloudWatch metrics are aggregated by function using their name. All CloudWatch metrics are prorated on an hourly basis. If your function is invoked less than once per hour, your function will only be billed for the hours that it is invoked.Monthly number of CloudWatch metrics per function
= 8 metrics * 1 function
= 8 CloudWatch metricsMonthly CloudWatch metrics costs = $0.30 per metric for first 10,000 metrics * 8 metrics = $2.40
Once you exceed 10,000 total metrics in your account then volume pricing tiers will apply. See metrics pricing table for details.
CloudWatch Logs
A single log event is generated for each function invoke. The size of each log event is approximately 1.1 KB.Monthly GB of CloudWatch Logs ingested = (1.1 KB/1024/1024) GB * 1,000,000 invokes per month = 1.05 GB per month
Monthly ingested logs costs = $0.50 per GB of ingested logs * 1.05 GB of performance events as CloudWatch Logs = $0.52 per month
Monthly CloudWatch costs = $2.40 + $0.52 = $2.92 per month
There are no minimum fees or mandatory service usage. If the function is not invoked, you do not pay.
Pricing values displayed here are based on the US East (N. Virginia) AWS Region. Please refer to the pricing information for your Region.
-
Example 20 – Metric Streams
If your application runs 24x7 for a 30-day month and emits 10,000 metric updates every minute, and your CloudWatch metric stream sends data to a partner HTTP endpoint via a Kinesis Data Firehose delivery stream in US East, your monthly charges would be as follows:
CloudWatch Metric Streams
Total number of metric updates = 10,000 metric updates per minute * 43,200 minutes in the month = 432,000,000 metric updates per month
432,000,000 metric updates @ $0.003 per 1,000 metric updates = $1,296 per month
Monthly CloudWatch Charges = $1,296 per monthKinesis Data Firehose
Kinesis Data Firehose data ingested (GB per month) = 432,000,000 metric updates * 0.5KB (assumed average size per metric update) / 1,048,576 KB/GB = 206GB / month
The Kinesis Data Firehose price in US-East is $0.029 per GB of Data Ingested for the first 500 TB/month = 206GB * $0.029 = $5.97 per month
Kinesis Data Firehose Charges = $5.97 per monthData Out (Kinesis Data Firehose HTTP Endpoint to Monitoring Partner)
Up to 9.999 TB per month @ $0.09 per GB (since the first GB is free, we will remove 1 GB from the price calculation) = 205 GB * $0.09 = $18.45
Data Out Charges = $18.45 per monthTotal Monthly Charges = $1,296 per month + $5.97 per month + $18.45 per month = $1,320.42 per month
Note: Pricing values displayed here are based on US East (N. Virginia) AWS Regions. Please refer to the pricing information for your Region.
-
Example 21 – Assignments (traffic splitting) with Evidently
Let’s say you run one traffic-splitting campaign where you’re serving two features (old version and new version) for user traffic of 200,000 total page views per month at 100% sampling rate. You don’t need analysis. Your application generates one assignment event per page view, where an assignment is an Evidently API call determining which user will see which feature (in other words, traffic split). Your charges will be:
Evidently event charges
Total number of Evidently events (assignments) = 200,000 views * 1 Evidently event per page view = 200,000 Evidently events
200,000 assignment Evidently events @ $5 per million Evidently events = $1.00Monthly CloudWatch Evidently charges = $1.00
-
Example 22 – Launch monitoring with Evidently
Let’s say you run two launches serving two feature variations each for user traffic of 200,000 total page views per month at 100% sampling rate. You want to monitor three metrics that are generated from each data event (i.e. three rule matches). Your application generates one assignment event per page view, where an assignment is an Evidently API call determining which user will see which feature (traffic split). It also generates two data events per page view (such as user clicks). Your charges will be:
Evidently event charges
For assignments, number of Evidently events = 200,000 views * 1 Evidently event per page view * 2 launches = 400,000 Evidently events
For data events, number of Evidently events = 200,000 views * 2 Evidently events per page view = 400,000 data Evidently events
Total Evidently events = assignment Evidently events + data Evidently events = 400,000 + 400,000 = 800,000
800,000 Evidently events @ $5 per million Evidently events = $4.00Evidently analysis units charges
Number of Evidently metrics = 2 launches * 3 metrics = 6 metrics
Number of Evidently analysis units = 6 metrics* 400,000 data Evidently events = 2,400,000
Analysis charges = 2,400,000 Evidently analysis units @ $7.50 per million Evidently analysis units = $18.00Monthly CloudWatch Evidently charges = event charges + analysis charges = $4.00 + $18.00 = $22.00
CloudWatch metrics charge = 12 metrics * $0.30 = $3.60
(CloudWatch metrics are per variation – 6 Evidently metrics * 2 variations) -
Example 23 – Experiments and launch monitoring with Evidently
Let’s say you run two launches and three experiments serving two feature variations each for user traffic of 200,000 total page views per month at 100% sampling rate. You want to monitor three metrics that are generated from each data event (i.e. three rule matches). Your application generates one assignment event per page view, where an assignment is an Evidently API call that says which user will see which feature (traffic split). It also generates two data events per page view (such as user clicks). Your charges will be:
Evidently event charges
For assignments, number of Evidently events = 200,000 views *1 Evidently event per page view * (2 launches+3 experiments) = 1,000,000 Evidently events
For data events, number of Evidently events = 200,000 views * 2 Evidently events per page view = 400,000 data Evidently events
Total Evidently events = 1,000,000 Evidently events (assignment) + 400,000 Evidently events (data) = 1,400,000
1,400,000 Evidently events @ $5 per million Evidently events = $7.00Evidently analysis units charges
Number of Evidently metrics = (2 launches + 3 experiments) * 3 metrics = 15 metrics
Number of Evidently analysis units = 15 metrics * 400,000 data Evidently events = 6,000,000
Analysis charges = 6,000,000 Evidently analysis units @ $7.50 per million Evidently analysis units = $45.00Monthly CloudWatch Evidently charges = event charges + analysis charges = $7.00 + $45.00 = $52.00
CloudWatch metrics charge = 30 metrics * $0.30 = $9.00
(CloudWatch metrics are per variation – 15 Evidently metrics * 2 variations) -
Example 24 – CloudWatch RUM
If your application has 500,000 visits in a month, and you’re collecting CloudWatch RUM events at 100% sampling for page load performance and errors with 20 data events — including one start event, one page view event, and 10 performance events (three web vitals, one paint, one navigation, five resource loads), and eight errors per visit — your charges would be as follows:
Total number of RUM data events = 20 data events/visit * 500,000 visits = 10,000,000 data events
Charges for 10,000,000 RUM data events @ $1 per 100,000 data events = 10,000,000* $1/100,000 = $100Monthly CloudWatch RUM data events charges = $100 per month
-
Example 25 – Metrics Insights
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
-
Example 26 – CloudWatch alarms with Metrics Insights queries and monthly cost prorating
With AWS, you build an application that runs 24/7 for several months and uses autoscaled EC2 instances. You monitor your EC2 instances with a Metrics Insights query to get alerted when the average of CPU usage across all your EC2 instances goes above an 80% threshold.
In the month of July, your application consistently uses 3 instances.
In the month of August, your application scales up to 4 instances on the 16th August at 00:00 UTC and keeps on using 4 instances until the end of the month.
To calculate monthly costs for alarms
In July (which is a 31 day month), you use your alarm continuously every day. The math expression shows how to calculate the monthly cost for a standard-resolution alarm retrieving the average from 3 metrics through a Metrics Insights query.1 (alarm) x 3 (number of metrics analyzed by the Metrics Insights query) x $0.10 (cost per metric analyzed per alarm) = $0.30
The total cost of this alarm for July is $0.30.
To calculate monthly prorated costs for alarms
In August (which is a 31-day month), you use your alarm continuously every day. The math expression shows how to calculate the monthly cost for a standard-resolution alarm retrieving the average from 3 metrics through a Metrics Insights query for 15 days, then retrieving the average from 4 metrics through a Metrics Insights query for 16 days.For 360 hours (from the 1st day at 00:00 UTC to the 15th day at 23:59 UTC), your standard-resolution alarm evaluates the average from 3 metrics through a Metrics Insights query, the costs for that period are:
1 (alarm) x 3 (number of metrics analyzed by the Metrics Insights query) x 360 / 744 (pro-rating on the number of hours in the month) x $0.10 (cost per metric analyzed per alarm) = $0.15
For 384 hours (from the 16th day at 00:00 UTC to the 31st day at 23:59 UTC), your standard-resolution alarm evaluates the average from 4 metrics through a Metrics Insights query, the costs for that period are:
1 (alarm) x 4 (number of metrics analyzed by the Metrics Insights query) x 384 / 744 (pro-rating on the number of hours in the month) x $0.10 (cost per metric analyzed per alarm) = $0.21
The total cost of this alarm for August is $0.15 + $0.21 = $0.36.
Please note that all alarms costs are prorated, regardless of whether they use a Metrics Insight query or not. You can apply the same pro-rating logic to project the cost for an alarm that is created, deleted, or modified to add or remove metrics, during the month.
-
Example 27 - Internet Monitor
If you add 10 CloudFront distributions and 20 Virtual Private Clouds (VPCs) to a monitor for monitoring 45,000 city-networks, your charges will be as follows:
- Monitored resource charges:
Total number of monitored resources = 10 CloudFront distributions + 20 VPCs = 30
30 monitored resources at $0.01 per monitored resource per hour = 30 * $0.01 = $0.30 per hour
- Monitored city-network charges:
Total monitored city-networks = 45,000
First 100 city-networks = $0
44,900 city-networks at $0.74 per 10,000 city-networks per hour = 44,900 * $0.000074 = $3.3226 per hour
Total Internet Monitor monthly charges = ($0.30 + $3.3226) * 730 hours in a month = $2,644.498
- CloudWatch Logs charges:
Out of 45,000 city-networks, Internet Monitor would only publish CloudWatch Logs for the top 500 city-networks which is less than 500 MB log data per day, or (500 MB * 30) = 15 GB of data per month. If you exclude the free coverage (example: 5 GB), the remaining log data you're charged for would be 10 GB (15 GB - 5 GB). If the fee per GB was $0.50 per month, a reasonable example, your monthly charges for CloudWatch Logs would be under $0.50 * 10 GB = $5 per month.
- Monitored resource charges:
Additional pricing resources
Easily calculate your monthly costs with AWS
Contact AWS specialists to get a personalized quote
Learn more about Amazon CloudWatch