CloudWatch Pricing Explained: Ultimate Guide 2024

October 29, 2024
12
min read

Introduction

Navigating AWS CloudWatch’s pricing can feel overwhelming, given the variety of features and services it offers. From monitoring metrics to storing logs, CloudWatch pricing covers multiple components that might leave you scratching your head. But don’t worry! In this blog post, we’ll simplify the pricing model and break it down into digestible sections, helping you understand what to expect so you can optimize your costs effectively.

Free Tier

Amazon CloudWatch offers a free tier to help you get started without incurring any costs upfront. Many AWS services, like EC2, S3, and Kinesis, automatically send basic metrics to CloudWatch at no additional charge, making it possible to run small applications entirely within the free tier limits.

Here’s a quick overview of what’s included in the CloudWatch Free Tier:

  • Metrics:
    • 10 custom or detailed monitoring metrics.
    • 1 million API requests (some operations are excluded, such as GetMetricData).
  • Dashboards:
    • Up to 3 custom dashboards, each referencing 50 metrics.
  • Alarms:
    • 10 standard-resolution alarms (direct metric alarms without using Metric Insights).
  • Logs:
    • 5 GB data ingestion, storage, or scanned by Log Insights queries.
    • 1,800 minutes of Live Tail logging (around 1 hour per day).
  • Contributor Insights:
    • 1 rule per month with the first 1 million log events matching the rule free.
  • Application Monitoring and Synthetic Tests:
    • 100 canary runs per month for testing application endpoints.
    • 100 million Signals or 3 months of free usage (whichever comes first).
  • Additional Free Trials:
    • Evidently: 3 million events and 10 million analysis units.
    • RUM (Real User Monitoring): 1 million events.
    • Cross-account observability: 1 free trace copy from the source to the monitoring account.

After exceeding the free tier limits, CloudWatch switches to paid pricing based on usage for each feature, such as metrics storage, alarm triggers, or log ingestion.

By planning your monitoring needs within the free tier, you can efficiently manage costs and know exactly when you’ll need to switch to paid services. In the next section, we’ll break down the paid pricing model to show what costs you might encounter and how to control them effectively.

Paid Tier: Understanding CloudWatch Costs

CloudWatch’s billing is structured across 12 distinct features, each with its own cost model. These include metrics, logs, alarms, dashboards, and more. Throughout this guide, we’ve included detailed pricing examples to help you understand costs better and manage them effectively, avoiding surprises.

Before diving into the pricing details, it’s important to note that all price examples referenced here are based on the us-east-1 (N. Virginia) region. Keep in mind that pricing may vary slightly across other AWS regions, so be sure to check region-specific rates when planning your CloudWatch usage.

CloudWatch Logs Pricing

Source: CloudWatch Logs Insights

CloudWatch logs pricing depends on data ingestion, storage, and analysis. Below is a quick breakdown to help you understand the different components involved:

  • No Data Transfer IN Charges: Ingesting logs into CloudWatch is free from AWS services.
  • Data Transfer OUT: Outbound transfers follow the same pricing as EC2 data transfers to other services or the internet.

General Logs Pricing

  1. Ingestion (Data Collection):
    • Standard: $0.50 per GB
    • Infrequent Access: $0.25 per GB
  2. Archival (Data Storage):
    • $0.03 per GB (compressed with a 0.15 compression ratio).
  3. Log Insights Queries:
    • $0.005 per GB of data scanned.
  4. Live Tail Logging:
    • $0.01 per minute for real-time streaming of logs.
  5. Data Masking and Protection:
    • $0.12 per GB of data scanned for masking sensitive information.

Vended Logs Pricing

Vended logs are native AWS logs (e.g., VPC Flow Logs) that can be delivered to multiple destinations, such as CloudWatch Logs, S3, or Kinesis Data Firehose. The pricing for vended logs includes volume-based discounts:

  • Ingestion (per GB):
    • First 10 TB per month: $0.50
    • Next 20 TB per month: $0.25
    • Next 20 TB per month: $0.10
    • Over 50 TB per month: $0.05
  • Archival (Storage):
    • $0.03 per GB (compressed).
  • Converted to Apache Parquet (for VPC Flow Logs):
    • $0.03 per GB.

Example: CloudWatch Logs Pricing

If you monitor HTTP response codes 24/7, sending 1 GB of log data per day for 30 days, your charges will look like this:

  • Log Ingestion:
  • 1 GB/day * 30 days = 30 GB
    • First 5 GB: Free
    • Next 25 GB: $0.50/GB * 25 = $12.50
  • Monitoring Metrics:
  • 3 metrics = $0
  • Archived Logs:
  • 6 GB compressed
    • First 5 GB: Free
    • Next 1 GB: $0.03 * 1 = $0.03

Total Monthly Cost: $12.50 + $0 + $0.03 = $12.53

CloudWatch Metrics Pricing

Source: Logging and metrics with Amazon CloudWatch

CloudWatch charges for custom metrics and detailed monitoring based on the number of metrics you use, with pricing tiers to reduce costs as usage increases.

Metrics Pricing (per month):

  • First 10,000 metrics: $0.30 per metric
  • Next 240,000 metrics: $0.10 per metric
  • Next 750,000 metrics: $0.05 per metric
  • Over 1 million metrics: $0.02 per metric

API Requests:

  • GetMetricData, GetInsightRuleReport: $0.01 per 1,000 metrics requested
  • GetMetricWidgetImage: $0.02 per 1,000 metrics requested
  • Dashboard-related API requests: $0.01 per 1,000 requests

CloudWatch Metric Streams

Metric streams let you push real-time metrics to endpoints like Kinesis Firehose. Charges apply for the number of metric updates:

  • Cost: $0.003 per 1,000 metric updates

Additional data transfer fees may apply for streaming metrics to external endpoints or across regions.

Example: EC2 Detailed Monitoring Costs

If your application runs on 5 EC2 instances with detailed monitoring enabled and each instance sends 7 metrics, the charges would be:

  • Total Metrics: 7 metrics * 5 instances = 35 metrics
  • Monthly Cost: 35 * $0.30 = $10.50 per month

Once you exceed 10,000 metrics, volume pricing tiers will apply.

CloudWatch Dashboards Pricing

Source: Getting started with Amazon CloudWatch
  • Automatic dashboards (these are the default dashboards available in the Monitoring section of various AWS services) are free.
  • Custom dashboards cost $3 per dashboard per month, with pro-rated charges based on the hours the dashboard exists.

You are only charged for custom dashboards, and shared dashboards may incur API request costs (e.g., GetMetricData) to render the data. Using Lambda metric math functions in dashboards counts as one metric per reference.

CloudWatch Alarms Pricing

Source: Alarms, incident management, and remediation in the cloud with Amazon CloudWatch

CloudWatch charges for alarms based on their type and the metrics they monitor:

  • Standard Resolution Alarm:
    • $0.10 per alarm metric
    • $0.10 per query analyzed (for Metric Insights queries)
  • High-Resolution Alarm:
    • $0.30 per alarm metric (evaluates every 10 or 30 seconds)
  • Composite Alarm:
    • $0.50 per composite alarm

Note:

  • You are charged for each metric listed in an alarm’s expression (up to 10 metrics with metric math).
  • Anomaly detection alarms incur extra charges for the upper and lower band metrics generated by the detection model.

Example: Alarming with Composite Alarms

Composite alarms combine multiple CloudWatch alarms into one, with a fixed price per composite unit. Here’s how the cost breaks down:

  • 4 standard resolution alarms:$0.10 per alarm metric * 4 = $0.40 per month
  • 1 composite alarm:$0.50 per month

Total Monthly CloudWatch Charges:

$0.40 + $0.50 = $0.90 per month

CloudWatch Contributor Insights Pricing

Source: CloudWatch Container Insights for Amazon ECS

Contributor Insights provides visibility into your top contributors, helping you analyze log events, DynamoDB activities, and PrivateLink traffic.

Contributor Insights for CloudWatch Logs:

  • $0.50 per rule per month
  • $0.02 per 1 million log events matching the rule

Contributor Insights for DynamoDB:

  • $0.50 per rule per month
  • $0.03 per 1 million DynamoDB events

Contributor Insights for PrivateLink:

  • $9.00 per rule per month

This tool helps you identify top contributors to specific metrics, making troubleshooting easier by

Example: Monitoring with Contributor Insights

If you monitor VPC Flow Logs with a monthly volume of 225 billion log events and use three Contributor Insights rules, your costs will be:

Rule Charges:

  • 3 rules total
    • First rule: Free
    • 2 additional rules: 2 * $0.50 = $1.00

Matched Log Events Charges:

  • 360 billion matched log events
    • First 1 million events: Free
    • 359,999 million events * $0.02 = $7,200

Total Monthly CloudWatch Charges:

$1.00 + $7,200 = $7,201

CloudWatch Application Signals Pricing

Source: Amazon CloudWatch Application Signals

Application Signals monitor the inbound and outbound requests related to your applications and Service Level Objectives (SLOs).

Application Signals Pricing (per million signals):

  • First 100 million signals: $1.50
  • Next 900 million signals: $0.75
  • Over 1 billion signals: $0.30

AWS X-Ray Tracing:

  • First 100,000 traces per month: Free
  • First 1 million traces retrieved or scanned: Free
  • Additional traces are priced according to the AWS X-Ray pricing.

Example: CloudWatch Application Signals Costs

For an application receiving 25,000 requests per minute (inbound and outbound), with Service Level Objectives (SLOs) and X-Ray tracing enabled, here’s the monthly breakdown:

  1. Application Signals from Requests:
    • Inbound requests: 1,095,000,000 signals
    • Outbound requests: 2,190,000,000 signals
      Total: 3,285,000,000 signals per month
  2. Application Signals from SLOs:
    • 1-minute SLI period: 876,000 signals
    • 5-minute SLI period: 175,200 signals
    • 10-minute SLI period: 87,600 signals
      Total: 1,138,800 signals per month
  3. Total Signals (Requests + SLOs):
    • 3,286,138,800 signals per month
  4. Application Signals Charges:
    • First 100 million signals @ $1.50 per million: $150
    • Next 900 million signals @ $0.75 per million: $675
    • Remaining 2,286,138,800 signals @ $0.30 per million: $685.84
      Total: $1,510.84 per month
  5. X-Ray Traces:
    • Traces stored: 54,650,000 (after free tier) @ $0.000005 per trace = $273.25
    • Traces retrieved/scanned: 232,655,000 traces @ $0.000005 per trace = $115.82
      Total: $389.07 per month

Total Monthly Charge for Application Signals & X-Ray:
$1,510.84 + $389.07 = $1,899.91

CloudWatch Synthetics Pricing

Source: CloudWatch Synthetics to Monitor Sites, API Endpoints, Web Workflows, and More

Amazon CloudWatch Synthetics allows you to create canaries—scripts that run on a schedule to monitor your endpoints and APIs. These canaries mimic customer behavior by following the same routes and actions, enabling you to proactively identify issues before they affect your users. Even without active customer traffic, canaries help ensure a smooth user experience.

Pricing:

  • $0.0012 per canary run

Example: CloudWatch Synthetics Pricing

If you run 5 canaries every 5 minutes for one month, with alarms on 5 metrics and data storage, here’s your estimated monthly cost:

  1. Canary Run Charges:
    • 44,640 runs @ $0.0012 per run = $53.57
    • Alarms: 5 alarms @ $0.10 per month = $0.50
      Total Canary Charges: $54.07
  2. Additional Charges from Other AWS Services: Each canary run triggers other AWS services, which can lead to extra costs:
    • Lambda:
      • Requests + 20-second duration per run
        Cost: $14.89 per month
    • CloudWatch Logs:
      • Log collection and storage
        Cost: $3.55 per month
    • S3 Storage:
      • Storage of results in S3 buckets
        Cost: $1.25 per month
    • CloudWatch Metrics:
      • 3 custom metrics (SuccessPercent, Duration, Failed)
        Cost: $0.90 per month
  3. Total Additional Charges: $20.59

Total Monthly Cost:
$54.07 + $20.59 = $74.66

CloudWatch RUM Pricing

Source: Observability Journey with Amazon CloudWatch RUM

Amazon CloudWatch RUM enables real user monitoring to collect client-side data about your web application's performance from actual user sessions in near real time. With RUM, you can gain insights into page load times, client-side errors, and user behavior. This data can be viewed in aggregate or broken down by the browsers and devices your users are on, helping you improve the overall user experience.

Pricing:

  • $1.00 per 100,000 RUM events

Example: CloudWatch RUM Costs

If your application receives 500,000 visits per month and you collect CloudWatch RUM events at 100% sampling for page load performance and error tracking, each visit generates 20 data events (e.g., start event, page view, web vitals, navigation, resource loads, and errors).

Calculation:

  • Total RUM Data Events:
    20 data events/visit × 500,000 visits = 10,000,000 data events
  • Charges:
    10,000,000 data events @ $1 per 100,000 events = $100 per month

Monthly CloudWatch RUM Cost: $100

CloudWatch Evidently Pricing

Source: Client-side Evaluation for Amazon CloudWatch Evidently

CloudWatch Evidently helps developers run experiments to test feature performance by exposing them to selected users, monitoring metrics, and expanding rollouts safely.

Pricing:

  • Evidently Events:
  • $5.00 per million events
  • (e.g., user actions like clicks or page views)
  • Evidently Analysis Units:
  • $7.50 per million units
  • (e.g., a checkout event producing multiple analysis units, like cart value and item count)

Example: Evidently Traffic Splitting Costs

If you run a traffic-splitting campaign with two versions (old and new) and get 200,000 page views per month, your application generates one Evidently assignment per view to decide which version users see.

  • Evidently Events: 200,000 assignments
  • Pricing: $5 per million events

Monthly Cost:
200,000 events = $1.00

Note: CloudWatch metrics generated by Evidently will incur additional charges based on standard CloudWatch pricing.

CloudWatch Internet Monitor Pricing

Source: Amazon CloudWatch Internet Monitor

Internet Monitor helps track the availability and performance of resources across multiple networks, identifying issues that affect user experience.

Pricing:

  • Monitored resources:
  • $0.01 per resource per hour
  • Monitored city-networks:
  • $0.74 per 10,000 city-networks per hour (after the first 100 city-networks per account)

Example: Internet Monitor Costs

If you monitor 10 CloudFront distributions and 20 VPCs, covering 45,000 city-networks, your monthly charges will be:

  1. Monitored Resources:
    • 30 resources @ $0.01 per hour
      Cost: 30 * $0.01 * 730 hours = $0.30 per hour
  2. City-Network Charges:
    • Total city-network hours: 45,000 * 730 = 32,850,000
    • First 100 city-networks (flat rate): Free
    • Remaining 32,776,000 city-network hours @ $0.74 per 10,000 hours
      Cost: 32,776,000 * 0.000074 = $2,425.42 per month
  3. CloudWatch Logs:
    • Top 500 city-networks generate 15 GB of logs per month
    • First 5 GB: Free
    • Remaining 10 GB @ $0.50 per GB
      Cost: 10 * $0.50 = $5.00 per month

Total Monthly Cost:
$2,425.42 + $5.00 = $2,430.42

Additional Charges:

Internet Monitor publishes diagnostic logs to CloudWatch Logs, which may incur additional log storage and processing costs.

CloudWatch Network Monitor Pricing

Source: CloudWatch Network Monitor

Network Monitor tracks the performance of network resources, such as subnets in VPCs and on-premises IP addresses, ensuring visibility into network health.

Pricing:

  • Monitored resources: $0.10 per resource per hour

Example: Network Monitor Costs

For a setup monitoring 3 VPC subnets connected to 8 on-premises destinations, here’s the monthly breakdown:

  1. Monitored Resource Charges:
    • 3 subnets * 4 destinations per subnet @ $0.10 per hour
    • Multiplied by 2 to cover all 8 destinations
      Cost: 3 * 4 * 720 * $0.10 * 2 = $432 per month
  2. CloudWatch Metrics Charges:
    • 3 subnets * 8 destinations = 24 probes
    • 24 probes * 3 metrics per probe = 72 metrics
    • 72 metrics @ $0.30 per metric per month
      Cost: 72 * $0.30 = $21.60 per month

Total Monthly Charge:
$432 + $21.60 = $453.60

Network Monitor provides metrics for the resources it tracks, which may incur additional CloudWatch metric charges based on standard pricing.

CloudWatch Container Insights Pricing

Source: Amazon CloudWatch Container Insights

Container Insights provides monitoring for containerized applications on EKS and ECS at both cluster and service levels. You can choose to enable enhanced observability for more granular metrics and insights.

Pricing (per Million Observations):

  • First 1 billion observations: $0.21
  • Next 3 billion observations: $0.18
  • Over 4 billion observations: $0.10

Note:

  • Without enhanced observability, you still get aggregated metrics at the cluster and service level.
  • Logs generated by containers are billed separately under the CloudWatch Logs pricing model.

Container Insights provides critical visibility into EKS and ECS workloads, helping you monitor performance and troubleshoot containerized environments effectively.

Example: Container Insights Pricing for ECS

If you monitor 1 ECS cluster with:

  • 10 EC2 instances
  • 50 containers
  • 20 task names
  • 5 service names

Here’s how the costs break down:

CloudWatch Metrics Cost:

  • 183 metrics (from clusters, tasks, and services)
  • Cost: 183 metrics * $0.30 = $54.90 per month

CloudWatch Logs Cost:

  • Total logs size: 3.49 GB (across clusters, services, tasks, and containers)
  • Cost: 3.49 GB * $0.50 = $1.75 per month

Total Monthly CloudWatch Cost:

$54.90 (metrics) + $1.75 (logs) = $56.65 per month

Conclusion

AWS CloudWatch offers a wide range of features, from metrics and logs to alarms and dashboards, with a pricing model that reflects its versatility. While the free tier provides a great starting point for small applications, understanding the nuances of the paid pricing structure is crucial for managing costs as your usage scales. By carefully planning your monitoring strategy, optimizing log storage, and leveraging volume-based pricing, you can avoid unexpected expenses. Whether you're monitoring EC2 instances, running synthetic tests, or analyzing container workloads, CloudWatch equips you with the tools to maintain visibility across your AWS environment. Balancing functionality with cost-efficiency will help you get the most value out of CloudWatch, ensuring smooth operations without budget surprises.

Share this article:
Subscribe to our newsletter to get our latest updates!
Thank you!
Your submission has been received!
Oops! Something went wrong while submitting the form.
Related articles