Optimizing Amazon CloudWatch spend for your Datadog-AWS Integration

3 minute read
Content level: Advanced
1

This guide provides an approach to Optimize Amazon CloudWatch spend for your Datadog-AWS Integration

Overview

Datadog-CloudWatch integration unifies your AWS infrastructure monitoring with other systems in a single platform. While this provides enhanced monitoring capabilities compared to native CloudWatch features, you need to implement specific strategies to manage costs effectively.

Understanding CloudWatch API Costs

Datadog uses two primary CloudWatch API calls for metric collection:

  • ListMetrics API: Identifies available metrics in your AWS accounts.
  • GetMetricData (GMD) API: Retrieves metric data points in batches.

Important: Unlike other CloudWatch API calls that include a free tier of 1 million requests, GetMetricData requests are always charged.

We observerd in multi-account environment that spend is often driven by GetMetricData for this integration. This is why we will focus on optimizing specifically this part.

Here are the UsageType and Operation details for this usage:

API request typeUsageTypeOperationPurpose
API requestsRequestsListMetricsLists the specified metrics
Bulk (Get)GMD-MetricsGetMetricDataRetrieves CloudWatch metric values

NB: For more information about Amazon CloudWatch related UsageType and Operation please read our documentation: “Analyzing, optimizing, and reducing CloudWatch costs”.

Cost Optimization Strategies:

We will suggest some tips to optimize costs of the above-mentioned integration.

1. Organization-Level Collection Interval

You can extend the value of metric polling interval.

GetMetricData collection interval is configured at the Datadog organization level:

  • Default interval: 10 minutes.
  • Can be extended to 30 minutes.
  • Applies uniformly across all AWS accounts.

Note: You cannot set different collection intervals for individual AWS accounts.

2. Resource-Based Filtering

You can restrict the span of monitored resources to optimize cost.

Implement targeted monitoring using tags:

  • Define critical resources that require monitoring.
  • Apply filtering rules based on environments.
  • Use tags to exclude non-essential resources.

Tag strategy example in Datadog AWS integration configuration Tab:

                                                 Figure 1 – How to use Tags to collect only production environments and critical application metrics

3. Regional Configuration Optimization

Make sure you monitor only the AWS regions where you have critical workloads

Reduce API costs by configuring regions properly:

  • Enable collection only for active regions.
  • Disable unused regions to prevent unnecessary API charges.
  • Review regional settings regularly.

Enter image description here

                            Figure 2 - Region configuration page showing enabled/disabled regions. Select only regions where you have active services 

4.Service Coverage Refinement

Minimize API calls by:

  • Avoiding default "Enable All" configuration.
  • Disabling monitoring for non-critical AWS Services to your business.
  • Creating service-specific monitoring profiles using custom resource Tags.

Enter image description here

                            Figure 3 - service configuration page showing enabled/disabled services and limit metric collection using Services resource Tags

Implementation Through Infrastructure as Code:

You can automate the deployment of the above-mentioned optimization strategies using Terraform.

This is an example of Terraform usage Creating a new Datadog - Amazon Web Services integration to automate and standardize these optimizations (additional documentation below):

Enter image description here

Measuring Impact

Monitor your optimization results using AWS Cost Explorer:

  • Track CloudWatch API usage trends.
  • Review GetMetricData costs by filtering “GMD-Metrics” usage group
  • Compare month-over-month spend

Enter image description here

                       Figure 4 - AWS Cost Explorer graph demonstrating a clear decrease in GetMetricData charges

Additional Resources:

CloudWatch Pricing

Datadog AWS Integration Terraform Documentation

Analyzing cloudwatch costs