Datadog vs CloudWatch - Decision Criteria Including Double Billing When Using Both
If you use AWS, CloudWatch is already there. So where is the value in adding Datadog? This article builds decision criteria using only primary official sources from both sides, covering the layer-by-layer correspondence for metrics, logs, and alerts, and the costs that arise on the AWS side when integrating.
The Difference in Premise - "Part of AWS" vs "A Single Pane of Glass That Runs Anywhere"
Comparing CloudWatch and Datadog is not a matter of lining up two products in the same arena. CloudWatch is the monitoring feature built into AWS; run EC2 or Lambda and basic metrics flow in with no configuration. No additional account contract and no agent installation (for the scope of basic metrics) are required. Datadog, on the other hand, is an independent platform that collects data from AWS, other clouds, on-premises, and SaaS alike and bundles it into a single screen, ingesting AWS data through integration settings (as of August 2026, Source: Datadog AWS Integration). This difference in starting point determines everything from cost structure to the operational landscape. How you suffer from a wrong decision is also contrasting. If you put Datadog into an environment where CloudWatch suffices, the entire fixed cost of the host unit price becomes over-investment. Conversely, if you stay with CloudWatch alone in an environment where you should be investigating across multiple systems, every incident brings time spent going back and forth between accounts and consoles to correlate causes, and that time recurs with every investigation. Which waste is larger in your own organization is the real point of this comparison. Note that the prices in this article are examples at each point in time and do not reflect price revisions made after writing.
Layer-by-Layer Correspondence Table - The Billing Units Differ Fundamentally
Lining up the feature correspondence and billing units by layer shows the difference in the two design philosophies directly.
| Layer | CloudWatch | Datadog |
|---|---|---|
| Infrastructure metrics | AWS standard metrics are collected automatically at no additional charge | Infrastructure Monitoring Pro: $15 per host per month (annual contract) |
| Custom metrics | $0.30 per metric per month (first 10,000) | 100 per host (Pro) included in the base price, pooled across the account |
| Log ingestion | $0.50 per GB (Standard class) | $0.10 per GB + $2.50 per million indexed events (30-day retention, annual contract) |
| Alerts | $0.10 per alarm metric per month (standard resolution; high resolution is $0.30) | No SKU based on the number of monitors is listed on the pricing page |
| Distributed tracing | Handled by Application Signals and X-Ray (per-GB span ingestion billing + trace billing) | APM: $31 per host per month (annual contract, when used with Infrastructure Monitoring) |
There are two differences to take away. First, CloudWatch is purely pay-as-you-go for what you use, with no fixed cost. At low volumes it is overwhelmingly cheap, and there are even small environments that fit within the free tier alone (10 combined custom metrics and detailed monitoring metrics, 10 alarm metrics, 5 GB of logs, 3 custom dashboards). This is a point where CloudWatch clearly wins. Second, Datadog has a structure that bundles a great deal into the host unit price. Comparing custom metrics, CloudWatch accumulates $0.30 per month for each one, whereas Datadog includes 100 per host in the $15 monthly base price. If your usage exhausts 100 on a single host, the effective unit price of the metrics portion differs greatly from the CloudWatch equivalent of $30. The more densely you collect metrics, the more Datadog's bundled structure pays off.
How the Integration Works and What "Double Billing" Really Is
When monitoring AWS with Datadog, costs arise on the AWS side for the very path that carries the data. This is what is colloquially called double billing, and once you understand the mechanism it is a manageable additional cost. There are two paths (as of August 2026, Source: Datadog AWS Integration).
- Standard API polling - works with no additional configuration. New metrics are retrieved every 10 minutes on average
- CloudWatch Metric Streams - delivery via Amazon Data Firehose. 2 to 3 minutes of latency, separate setup required
On the cost side, Metric Streams is billed on the AWS side at $0.003 per 1,000 metric updates (as of August 2026, Source: CloudWatch pricing page). The official Datadog documentation also contains a note that enabling resource collection can affect CloudWatch costs, and it guides you to a setting that limits the impact (disabling AWS/Usage metrics). In other words, "I am paying Datadog and yet monitoring-related charges also come from AWS" is not an anomaly but the behavior as designed. If you grasp before adoption that the items to include in the estimate are not closed by Datadog SKUs alone, there is no surprise. Put the other way, it also means you can weigh the value of Metric Streams, which shortens the update interval from 10 minutes on average to 2 to 3 minutes, against the concrete price of $0.003 per 1,000 updates. The more a production environment demands alert responsiveness, the cheaper this 7 to 8 minute difference becomes as a purchase.
Cases Where CloudWatch Suffices, Cases Where Datadog Pays Off
It is most accurate to think of the decision as a set of conditions. First, the typical case where CloudWatch suffices is when the monitoring targets are almost entirely within AWS, the scale is a few to a dozen or so hosts, and investigation centers on logs. Thanks to the free tier and pure pay-as-you-go pricing, it is not unusual at this scale for the monthly charge to fall within tens of dollars, and the advantage of zero fixed cost is maximized. Beating CloudWatch on cost in this arena is difficult. On the other hand, the conditions under which Datadog pays off are clear. First, when the monitoring targets extend outside AWS. The ability to handle data from other clouds, on-premises, and SaaS on a single screen is the flip side of CloudWatch's origin as an AWS built-in, an arena CloudWatch does not have. Second, when cross-cutting investigations that move between metrics, logs, and traces are frequent. Datadog is designed so that you move within a single UI from an APM trace to the logs at that time, and from logs to host metrics, completing the three pillars of observability within the same product. Third, when there is a culture of collecting custom metrics densely. As noted above, CloudWatch's $0.30 per metric piles up rapidly once you start collecting application indicators in the hundreds, and Datadog's structure of bundling them into the host unit price becomes relatively cheaper. In short, "CloudWatch if the scale is small and closed within AWS; Datadog once systems spread horizontally and investigation becomes daily work" is the conclusion that follows straightforwardly from both sides' official pricing. And growing systems usually head toward the latter.
The Practical Answer Is Both - Designing the Division of Roles
In practice, things often settle on using both rather than "one or the other", and this is not a compromise but a rational design. CloudWatch keeps running as the collector of AWS standard metrics (there is neither a reason nor a way to stop it), and Datadog draws it up and becomes the main arena for investigation and visualization. There are three design guidelines for this configuration. First, unify the entry point for viewing and investigation in Datadog. With two entry points, a decision about which to look at intrudes during an incident, and a shared vocabulary within the team does not develop. Consolidating Monitors and Alerts on the Datadog side lets you manage the conventions for notification settings, suppression, and escalation in one place. Second, keep a last line of defense on the AWS side as well. Against a failure in which the path to Datadog itself stops, placing a minimal set of alarms critical to liveness ($0.10 per standard-resolution alarm metric per month, as of August 2026) on the CloudWatch side is sufficiently cheap as the cost of redundancy. Third, choose where logs live by volume. Datadog logs have a two-stage structure of $0.10 per GB ingested plus indexing, so you can design to select and index only the logs used for investigation (see the Log Management explanation for details). When building the overall estimate, the "read from the billing unit" procedure organized in How to Decode the Pricing Structure can be used as is. Keep CloudWatch as the foundation while shifting the daily investigation experience to Datadog. That is the most practical landing point that can be derived from both sides' pricing and features as of August 2026.