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 type | UsageType | Operation | Purpose |
---|
API requests | Requests | ListMetrics | Lists the specified metrics |
Bulk (Get) | GMD-Metrics | GetMetricData | Retrieves 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.

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.

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):

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

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