Integrations
Integrations are the bundle of entry points that pour data from external systems such as AWS and MySQL into Datadog. Where you configure them splits into two families, the Agent side and the cloud account side, and which one you choose changes both what you can see and how billing is counted.
What it does
They are connection components prepared for each target you want to monitor. They are classified into three kinds: the kind you write in the Agent's configuration files, the kind where you register cloud account credentials with Datadog, and the kind you embed as a library in your application (the official documentation's classification as of September 2026). Once enabled, the target's metrics / logs / events / tags flow in, and the out-of-the-box dashboard prepared for each target becomes usable as-is.
When to use it
You use them in every situation that connects Datadog to the outside world: collecting CloudWatch metrics from EC2 and RDS without installing the Agent, ingesting the state of in-house MySQL or NGINX through the Agent, and delivering notifications to Slack or PagerDuty. It is a feature you are certain to touch on day one of monitoring, and the collection scope you decide here becomes the foundation of your monthly bill.
An everyday analogy
They are the travel adapters you take abroad. They fit the outlets that differ from country to country (AWS / Azure / MySQL) to Datadog's single socket shape. Each adapter passes a different amount of current (the kinds and granularity of data you can get), so which adapter you plug in determines which appliances you can use, in other words what you can see.
Integrations Are a Bundle of Entry Points - What Flows In When You Enable One
A Datadog integration is the general term for a connection component that brings data from an external system into Datadog. As of September 2026, the official documentation divides these into three main kinds. The Agent-based kind, which is installed together with the Datadog Agent and defines the collected items in a Python check method; the authentication (crawler) kind, where you register credentials on the Datadog side and it fetches data through the API; and the library kind, which you embed per application language such as Node.js or Python (source: Introduction to Integrations). The AWS / Azure / Slack / PagerDuty integrations belong to the second kind. Once enabled, logs / events / tags flow into the same screen in addition to the target's metrics, and the out-of-the-box dashboard for each target is usable from day one. As for the number, the Pro plan description on the pricing page states 1,000+ integrations (as of September 2026; source: Datadog Pricing). Without this mechanism, every additional monitoring target would mean writing your own collection script and dedicated screen. With it, you just select the target's name and hand over credentials, and you can start operating from a state where the foundation for collection and visualization is already in place.
Agent-Side Integrations and Cloud-Account-Side Integrations Are Different Things
Although both go by the same name, integration, Agent-side integrations and cloud-account-side integrations differ in where they run and what they can retrieve. On the Agent side, you write the connection target in <integration name>.d/conf.yaml in the conf.d folder directly under the Agent's configuration directory (rename the bundled conf.yaml.example to use it), and that Agent periodically goes and looks at the target (as of September 2026; source: Introduction to Integrations). On the cloud account side, you hand Datadog the credentials of an AWS IAM role or an Azure App Registration, and Datadog calls the cloud's APIs on your behalf.
| Kind | Where It Is Configured | What It Mainly Retrieves | Suited Targets |
|---|---|---|---|
| Agent-based | conf.d/<integration name>.d/conf.yaml on the host | Host-internal indicators / processes / logs / middleware statistics | Servers where you own the OS / MySQL or NGINX on containers |
| Authentication (crawler) | Credentials in the Datadog UI (IAM role / App Registration / service account) | Cloud management indicators / events / resource tags | Managed services where the Agent cannot be installed, such as RDS and ELB / SaaS such as Slack |
| Library | Application code | Language runtime information / traces / custom metrics | In-house developed applications |
The granularity you can get also differs. The official guide explains that whereas the cloud provider's monitoring samples the host from the outside at 5 to 25 minute intervals, installing the Agent gives you more than 50 metrics by default, and tags applied at the Agent level ride on all metrics / logs / traces (as of September 2026; source: Why should I install the Datadog Agent on my cloud instances?). The details of choosing between agentless integration and the Agent are left to the Agent guide. Here, just keep in mind that even for the same EC2 instance, the inside seen from the Agent side and the outline seen from the cloud side are separate data.
The First Three Decisions for the AWS Integration Are Role, Collection Targets, and Regions
The AWS integration is the representative of the authentication (crawler) kind, and as of September 2026 the official documentation explains that it collects metrics / events / logs from more than 90 AWS services through CloudWatch. Three setup methods are provided: automated configuration with CloudFormation (recommended for getting started quickly) or Terraform, and manual role delegation (source: Amazon Web Services). Whichever method you use, the first three things you decide are the following.
- 1. Role - the IAM role and policy handed to Datadog. Missing permissions show up as missing data and are displayed on the Issues tab of the integration page
- 2. Collection targets - which AWS services (sub-integrations) to collect metrics from. Enabling resource collection requires attaching the AWS managed policy SecurityAudit
- 3. Regions - which regions to collect from. Can be changed on the integration page after setup
There are two methods for retrieving metrics, API polling (fetching new metrics every 10 minutes on average) and CloudWatch Metric Streams (2 to 3 minute latency / requires separate setup), and there are also two routes for sending logs, the Datadog destination in Amazon Data Firehose and the Forwarder Lambda function (same source). Choosing between polling and streams is a trade-off between CloudWatch-side cost and freshness, so the details are left to choosing between Datadog and CloudWatch. Azure and Google Cloud follow the same pattern: for Azure, you register with Datadog the credentials of an App Registration that has access to the subscriptions you want to monitor, and for Google Cloud, you create a service account and allow Datadog's principal to impersonate it. For Google Cloud, it is stated explicitly that metrics appear roughly 15 minutes after setup (as of September 2026; source: Azure / Google Cloud Platform).
How Billing Changes When You Enable It - Counting Hosts Picked Up by the Integration
What changes the moment you enable the AWS integration is how hosts are counted. As of September 2026, the official billing documentation explains that Datadog bills for AWS hosts running the Agent and for all EC2 instances detected by the AWS integration, and that a host matching both is never counted twice. Because EC2 instance metadata is used to determine double counting, instances that require IMDSv2 need Agent 7.64.0 or later with the configuration item ec2_prefer_imdsv2 set to true (source: AWS Integration Billing). What surprises people is that a test EC2 instance without the Agent also counts as 1 host if the integration picks it up. Since the Infrastructure Monitoring Pro host price is 15 dollars per month as of August 2026 (annual contract; source: Datadog Pricing), 10 abandoned EC2 instances pile up 150 dollars a month for screens nobody looks at.
| Target | How It Is Counted |
|---|---|
| EC2 instances | Billed as hosts. Regardless of whether the Agent is present; not double counted even if matching both |
| Lambda | Billed under a separate SKU as active functions |
| CloudWatch custom metrics | Billed as custom metrics |
| Fargate (when the integration tile is enabled) | Billed as containers (beyond the per-host allotment) |
| ELB / RDS / DynamoDB, etc. | Not included in the monthly infrastructure bill |
In other words, the worry that the bill will jump because you enabled many managed-service integrations is misplaced; what to watch is the number of EC2 instances. A way to prevent this is also provided: on the Metric Collection tab of the integration page, you can limit collection targets with tag conditions. The official example excludes EC2 instances carrying the datadog:no tag, and it is also noted that when you add a restriction to an existing account, already-detected instances may remain in the list for up to about 2 hours (same source). There is one more layer of cost: because API polling calls the CloudWatch API every 10 minutes per sub-integration, the FAQ warns that in accounts with many resources it can affect your CloudWatch bill on the AWS side (as of September 2026; source: AWS Integration and CloudWatch FAQ). The overall picture of the pricing structure is covered in how to read the pricing. The prices in this article are examples at the time they were checked and do not reflect any price revisions made after writing.
Why the Effect of Aligned Tags Kicks In Before Visualization
The first thing people mention as the payoff of integrations is the out-of-the-box dashboards, but in practice what pays off first is the tags. The AWS integration attaches EC2-specific information such as instance type and Availability Zone to EC2 hosts as tags, and tags applied on the Agent side ride on all metrics / logs / traces that Agent sends (as of September 2026; source: Amazon Web Services / Why should I install the Datadog Agent on my cloud instances?). When these two families of tags converge on the same host, filters that multiply cloud-side attributes by application-side attributes, such as CPU of only the c5-family instances in production or RDS connection count of the hosts running the payment service, can be written in a one-line query. Without this, every outage brings the work of cross-referencing a list of host names in Excel while a human tries to recall which service this host belonged to. The caveat is notation normalization: on ingestion into Datadog, uppercase letters are converted to lowercase and spaces to underscores. The official example is an AWS-side tag Team:Frontend App becoming team:frontend_app on the Datadog side (as of September 2026; source: AWS Integration Billing). Organizations whose AWS-side tag convention uses mixed case can avoid having to rewrite all their dashboards and monitors later by deciding how things should look on the Datadog side before enabling the integration. The thinking behind tag design itself is summarized in the guide to tagging.
Working Backward from the Isolation Order, the Adoption Order Is Agent, Cloud Integrations, SaaS Integrations
The official documentation does not prescribe an adoption order, but working backward from the order in which you isolate an outage, there is a rational pattern to the order in which you add them. Take as an example a setup where in-house applications running on-premises or on EC2 coexist with managed services such as RDS and ELB, and the notification destination is Slack. For this setup, we recommend the order: first Agent-side integrations (OS / middleware / logs), next cloud-account-side integrations (AWS / Azure / Google Cloud), and last SaaS integrations such as Slack and PagerDuty.
- 1. Agent-side integrations - capture, at fine granularity, the inside of your own processes and hosts, the first suspects in an outage investigation
- 2. Cloud-account-side integrations - add the outline of RDS / ELB / Lambda where the Agent cannot be installed, filling in the failure next door that step 1 could not see
- 3. SaaS integrations - connect notification routes only after what you can see is in place. In the reverse order, false-positive notifications arrive first and you lose trust
There are three reasons. First, since an investigation starts from your own code and hosts, the fine-grained Agent-side data is what you need first. Second, if you add the cloud integration first, every EC2 instance the integration picks up becomes billable while you still cannot see inside, creating a period of paying without being able to investigate. Third, connecting notifications after what you can see is in place keeps down the volume of false positives that fly out in the first week. There are exceptions, however: in a Lambda-centered serverless setup there is nowhere to install the Agent, so starting from the cloud integration is natural. If you first put into words where an investigation starts in your own setup, the order falls into place naturally.
Pre-Adoption Checklist - Five Items
We narrow down to five items that, if decided as an organization before enabling integrations, minimize backtracking. All of them can be fixed later, but fixing them comes with inconsistencies against the data that has already flowed in.
- 1. Tag convention - document the names and notation of env / service / team (on the premise that they are normalized to lowercase + underscores)
- 2. Collection scope - narrow the regions and sub-integrations collected on the AWS side to only what is needed (affects both the Datadog bill and CloudWatch API cost)
- 3. Exclusion rules - decide on a tag (for example, datadog:no) that identifies EC2 instances you do not want billed, and register it on the Metric Collection tab of the integration page
- 4. Agent-side prerequisites - for instances that require IMDSv2, include Agent 7.64.0 or later and ec2_prefer_imdsv2 in your rollout configuration
- 5. Log route - decide whether the Datadog destination in Firehose or the Forwarder Lambda is your standard (Firehose is recommended for high volume)
Of these five items, the ones tied directly to the bill are 2 and 3, and both are configured on the Metric Collection tab of the AWS integration page (as of September 2026; source: AWS Integration Billing). The first screen to open after enabling the integration is not a dashboard but this tab and the host list in Infrastructure Monitoring. In the host list, hosts with only the AWS logo are hosts monitored solely through the integration, and hosts with the Agent logo are hosts monitored by the Agent (same source), so this is where you can flush out hosts that are being counted through the integration alone when you meant to install the Agent. How things look after ingestion continues in the Infrastructure Monitoring guide, and log volume design in the Log Management guide.
Things to watch out for
- This article is based on the official documentation as of September 2026. The classification of integrations / setup procedures / definition of billable targets may change, so when in doubt, give priority to what the integration page shows and what the official documentation says.
- The prices in this article are examples at the time they were checked and do not reflect any price revisions made after writing.
- EC2 instances detected by the AWS integration are counted as hosts regardless of whether the Agent is present (as of September 2026). Decide on the collection scope and exclusion tags before enabling it.