From e4e0aaebd667713454d2a8d0e794784431151ec1 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Fri, 18 Jul 2025 15:11:02 -0700 Subject: [PATCH 01/22] [DOCS-10758] Consolidate CCMTags docs --- config/_default/menus/main.en.yaml | 29 +++-- content/en/cloud_cost_management/_index.md | 15 +-- .../custom_allocation_rules.md | 2 +- content/en/cloud_cost_management/setup/aws.md | 9 +- .../en/cloud_cost_management/setup/azure.md | 5 +- .../setup/google_cloud.md | 6 +- .../en/cloud_cost_management/tags/_index.md | 107 ++++++++++++++++++ .../_index.md => tags/tag_explorer.md} | 6 +- .../{ => tags}/tag_pipelines.md | 4 +- 9 files changed, 151 insertions(+), 32 deletions(-) create mode 100644 content/en/cloud_cost_management/tags/_index.md rename content/en/cloud_cost_management/{tag_explorer/_index.md => tags/tag_explorer.md} (97%) rename content/en/cloud_cost_management/{ => tags}/tag_pipelines.md (96%) diff --git a/config/_default/menus/main.en.yaml b/config/_default/menus/main.en.yaml index 1e1111e5e454c..e21938109768e 100644 --- a/config/_default/menus/main.en.yaml +++ b/config/_default/menus/main.en.yaml @@ -3638,46 +3638,51 @@ menu: parent: cloud_cost_planning identifier: cloud_cost_planning_commitment_programs weight: 502 - - name: Tag Pipelines - url: cloud_cost_management/tag_pipelines + - name: Tags + url: cloud_cost_management/tags parent: cloud_cost - identifier: cloud_cost_tag_pipelines + identifier: cloud_cost_tags weight: 6 - name: Tag Explorer - url: cloud_cost_management/tag_explorer - parent: cloud_cost + url: cloud_cost_management/tags/tag_explorer + parent: cloud_cost_tags identifier: cloud_cost_tag_explorer - weight: 7 + weight: 601 + - name: Tag Pipelines + url: cloud_cost_management/tags/tag_pipelines + parent: cloud_cost_tags + identifier: cloud_cost_tag_pipelines + weight: 602 - name: Multisource Querying url: cloud_cost_management/multisource_querying parent: cloud_cost identifier: cloud_cost_multisource_querying - weight: 8 + weight: 7 - name: Reports url: /cloud_cost_management/reports parent: cloud_cost identifier: cloud_cost_reports - weight: 9 + weight: 8 - name: Recommendations url: cloud_cost_management/recommendations parent: cloud_cost identifier: cloud_cost_recommendations - weight: 10 + weight: 9 - name: Custom Recommendations url: cloud_cost_management/recommendations/custom_recommendations parent: cloud_cost_recommendations identifier: cloud_cost_custom_recommendations - weight: 1001 + weight: 901 - name: Monitors url: /cloud_cost_management/monitors parent: cloud_cost identifier: cloud_cost_monitors - weight: 11 + weight: 10 - name: Anomalies url: /cloud_cost_management/anomalies parent: cloud_cost identifier: cloud_cost_anomalies - weight: 12 + weight: 11 - name: APM url: tracing/ pre: apm diff --git a/content/en/cloud_cost_management/_index.md b/content/en/cloud_cost_management/_index.md index bfb8fcb4469c0..53bdf5f2b375e 100644 --- a/content/en/cloud_cost_management/_index.md +++ b/content/en/cloud_cost_management/_index.md @@ -19,12 +19,9 @@ further_reading: - link: "/monitors/types/cloud_cost/" tag: "Documentation" text: "Create a Cloud Cost monitor" - - link: "/cloud_cost_management/tag_pipelines/" + - link: "/cloud_cost_management/tags/" tag: "Documentation" - text: "Learn about Tag Pipelines" - - link: "/cloud_cost_management/tag_pipelines" - tag: "Documentation" - text: "Standardize tags across Cloud Cost Management with Tag Pipelines" + text: "Learn about Tags in Cloud Cost Management" - link: "https://www.datadoghq.com/blog/cloud-costs-study-learnings/" tag: "Blog" text: "Key learnings from the State of Cloud Costs study" @@ -84,11 +81,9 @@ When creating a dashboard, select **Cloud Cost** as the data source for your sea Optionally, you can programmatically export a timeseries graph of your Datadog cost data by using the [Metrics API][2]. -## Create tag rules - -Use [Tag Pipelines][5] to ensure comprehensive cost tracking by standardizing the tags across all cloud resources. This prevents any cost data from being overlooked. +## Tagging and cost allocation -{{< img src="cloud_cost/tags_addnew.png" alt="Create a tag rule in Tag Pipelines to ensure your cloud resources use standard tags" style="width:60%;" >}} +Use the [Tags documentation][5] to understand how tags are sourced, enriched, and managed in Cloud Cost Management. You can create tag rules to correct missing or incorrect tags and add inferred tags that align with your organization's business logic. @@ -135,4 +130,4 @@ The table below describes the impact of these permissions in both Cloud Cost Man [2]: /api/latest/metrics/#query-timeseries-data-across-multiple-products [3]: /monitors/types/cloud_cost/ [4]: /cloud_cost_management/container_cost_allocation -[5]: /cloud_cost_management/tag_pipelines +[5]: /cloud_cost_management/tags/ diff --git a/content/en/cloud_cost_management/custom_allocation_rules.md b/content/en/cloud_cost_management/custom_allocation_rules.md index 5bf40288f4665..8f2964b5f5251 100644 --- a/content/en/cloud_cost_management/custom_allocation_rules.md +++ b/content/en/cloud_cost_management/custom_allocation_rules.md @@ -173,6 +173,6 @@ Changes to custom allocation rules may take up to 24 hours to be applied. After ## Further reading {{< partial name="whats-next/whats-next.html" >}} -[1]: /cloud_cost_management/tag_pipelines +[1]: /cloud_cost_management/tags/tag_pipelines [2]: https://app.datadoghq.com/cost/settings/custom-allocation-rules [3]: https://www.datadoghq.com/support/ diff --git a/content/en/cloud_cost_management/setup/aws.md b/content/en/cloud_cost_management/setup/aws.md index 93141fce8d2a0..49a499931f5a6 100644 --- a/content/en/cloud_cost_management/setup/aws.md +++ b/content/en/cloud_cost_management/setup/aws.md @@ -260,7 +260,9 @@ In general: ## Tag enrichment -Datadog adds tags to the ingested cost data using many sources, described in detail below. +Datadog automatically enriches your AWS cost data with tags from multiple sources. For a comprehensive overview of how tags are applied to cost data, see [Tags][18]. + +The following tag sources are available for AWS: - Cost and Usage Report columns - AWS Resource tags @@ -404,7 +406,7 @@ _Requires [container cost allocation][11], and applies only to `shared.resources ### Tag pipelines -Finally, all of your [tag pipeline][15] rulesets are applied, providing complete cost allocation when infrastructure tagging is not possible. +Finally, all of your [tag pipeline][15] rulesets are applied, providing complete cost allocation when infrastructure tagging is not possible. Tag pipelines are the final enrichment layer and can override tags from other sources. ## Billing conductor [AWS Billing Conductor][16] is a custom billing service for AWS Marketplace Channel Partners (Partners) and organizations that have chargeback requirements. @@ -434,6 +436,7 @@ After the billing conductor CUR is created, follow the Cloud Cost Management ins [12]: https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html [13]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/activating-tags.html [14]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_tagging.html -[15]: /cloud_cost_management/tag_pipelines +[15]: /cloud_cost_management/tags/tag_pipelines [16]: https://docs.aws.amazon.com/billingconductor/latest/userguide/what-is-billingconductor.html [17]: https://app.datadoghq.com/cost/settings/accounts +[18]: /cloud_cost_management/tags diff --git a/content/en/cloud_cost_management/setup/azure.md b/content/en/cloud_cost_management/setup/azure.md index 886abd5784178..548b64a9bccdb 100644 --- a/content/en/cloud_cost_management/setup/azure.md +++ b/content/en/cloud_cost_management/setup/azure.md @@ -151,7 +151,9 @@ You can visualize your ingested data using the following cost types: ### Out-of-the-box tags -Datadog adds out-of-the-box tags to ingested cost data to help you further break down and allocate your costs. These tags are derived from your [usage cost report][9] and make it easier to discover and understand cost data. +Datadog automatically enriches your Azure cost data with tags from multiple sources. For a comprehensive overview of how tags are applied to cost data, see [Tags][12]. + +The following out-of-the-box tags are derived from your [usage cost report][9] and make it easier to discover and understand cost data: | Tag Name | Tag Description | | ---------------------------- | ----------------- | @@ -239,3 +241,4 @@ You can create historical data in your storage account using the [Microsoft API] [9]: https://learn.microsoft.com/en-us/azure/cost-management-billing/understand/download-azure-daily-usage [10]: https://docs.azure.cn/en-us/cost-management-billing/manage/resolve-past-due-balance#check-the-type-of-your-account [11]: /help/ +[12]: /cloud_cost_management/tags diff --git a/content/en/cloud_cost_management/setup/google_cloud.md b/content/en/cloud_cost_management/setup/google_cloud.md index 81c6c49af4e47..cd4debd709d0d 100644 --- a/content/en/cloud_cost_management/setup/google_cloud.md +++ b/content/en/cloud_cost_management/setup/google_cloud.md @@ -142,9 +142,10 @@ You can visualize your ingested data using the following cost types: | `gcp.cost.ondemand` | Total public, on-demand cost of resources before public and private discounts are applied over an interval. | ### Out-of-the-box tags -Datadog adds out-of-the-box tags to ingested cost data to help you further break down and allocate your costs. These tags are derived from your [detailed usage cost report][16] and make it easier to discover and understand cost data. -The following out-of-the-box tags are available for filtering and grouping data: +Datadog automatically enriches your Google Cloud cost data with tags from multiple sources. For a comprehensive overview of how tags are applied to cost data, see [Tags][17]. + +The following out-of-the-box tags are derived from your [detailed usage cost report][16] and make it easier to discover and understand cost data: | Tag Name | Tag Description | | ---------------------------- | ----------------- | @@ -204,3 +205,4 @@ The following out-of-the-box tags are available: [14]: /cloud_cost_management/container_cost_allocation/ [15]: /cloud_cost_management/setup/google_cloud/#create-or-select-a-google-cloud-storage-bucket [16]: https://cloud.google.com/billing/docs/how-to/export-data-bigquery-tables/detailed-usage +[17]: /cloud_cost_management/tags diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md new file mode 100644 index 0000000000000..b2a4de2b458b7 --- /dev/null +++ b/content/en/cloud_cost_management/tags/_index.md @@ -0,0 +1,107 @@ +--- +title: Tags +description: Learn how tags are sourced, enriched, and managed in Cloud Cost Management. +further_reading: +- link: "/cloud_cost_management/" + tag: "Documentation" + text: "Learn about Cloud Cost Management" +- link: "/cloud_cost_management/tags/tag_pipelines" + tag: "Documentation" + text: "Tag Pipelines" +- link: "/cloud_cost_management/tags/tag_explorer" + tag: "Documentation" + text: "Tag Explorer" +- link: "/getting_started/tagging/" + tag: "Documentation" + text: "Getting Started with Tags" +--- + +## Overview + +Tags help you organize, filter, and allocate your cloud costs effectively. With proper tagging, you can see exactly who's spending what, identify optimization opportunities, and create accurate chargeback reports. Cloud Cost Management automatically enriches your cost data with tags from multiple sources, so you can focus on using tags to drive insights rather than managing the technical details. + +## Getting started + +Get started with tags in three steps: + +1. **See what you have** - Use [Tag Explorer][5] to discover which tags are already available in your cost data. +2. **Identify gaps** - Look for missing tags that would help you track costs by team, project, or environment. +3. **Add missing tags** - Use [Tag Pipelines][4] to automatically add tags based on your business logic. + +{{< img src="cloud_cost/tag_explorer/aws_1.png" alt="Tag Explorer interface showing available AWS tags and their usage" style="width:80%;" >}} + +## Common scenarios + +- **Track costs by team, service, or environment** - See exactly who's spending what and identify optimization opportunities +- **Allocate shared costs fairly** - Distribute costs across teams and projects for accurate chargeback and showback + +## Where your tags come from + +Datadog applies tags to cost data using the following sources: + +- **[Out-of-the-box tags][1]** - Standardized tags that Datadog automatically generates from some billing data columns (like `aws_product` and `aws_region`) in your cost and usage report. +- **[Container allocation tags][2]** - Tags from your container workloads +- **[Resource and account tags][3]** - Tags you've applied to your cloud resources +- **[Tag pipelines][4]** - Custom rules you create to add missing tags + +## How tags are attached to cost data + +Datadog automatically associates tags with your cost data through a multi-step process as new cost data is ingested. Your cost analysis always reflects the most current tag information. + +1. **Data ingestion** - When cost data arrives from your cloud provider (through billing reports, APIs, and so on), Datadog identifies the specific resources and services being billed. +2. **Tag lookup** - For each cost datapoint, Datadog looks up available tags from all configured sources (billing data, resource tags, container metadata, and so on). +3. **Tag application** - Tags are attached to the cost data based on a precedence order: + - Tag Pipelines (highest priority) + - Container tags + - Resource/account tags + - Out-of-the-box tags + - Billing data (lowest priority) + +4. **Data storage** - The enriched cost data with all associated tags is stored and made available for analysis. + +## Essential tags and examples + +In addition to out-of-the-box tags, you can add these key tags to get the most value from your cost data: + +### Team and ownership tags +- `team` - Which team owns the resource +- `owner` - Individual responsible for the resource +- `project` - Project or initiative the resource supports + +**Example: Track costs by team** +Tag your resources with `team:engineering` or `team:marketing`, then: +- Create dashboards showing spend by team +- Set up alerts for unusual team spending +- Generate monthly cost reports per team + +### Environment and lifecycle tags +- `env` - Environment (prod, staging, dev) +- `service` - Application or service name +- `version` - Application version or release + +**Example: Identify unused resources** +Use tags like `env:dev` and `purpose:testing` to: +- Find development resources that can be stopped +- Track costs for temporary projects +- Clean up abandoned test environments + +### Business context tags +- `cost-center` - Budget or cost center +- `business-unit` - Business unit or department +- `purpose` - What the resource is used for + +**Example: Optimize container costs** +With container cost allocation, you can: +- See costs broken down by pod, namespace, or deployment +- Identify which applications are most expensive +- Optimize resource requests and limits + +## Further reading + +{{< partial name="whats-next/whats-next.html" >}} + +[1]: /cloud_cost_management/multisource_querying/ +[2]: /cloud_cost_management/container_cost_allocation +[3]: /cloud_cost_management/setup/aws/#aws-resource-tags +[4]: /cloud_cost_management/tags/tag_pipelines +[5]: /cloud_cost_management/tags/tag_explorer \ No newline at end of file diff --git a/content/en/cloud_cost_management/tag_explorer/_index.md b/content/en/cloud_cost_management/tags/tag_explorer.md similarity index 97% rename from content/en/cloud_cost_management/tag_explorer/_index.md rename to content/en/cloud_cost_management/tags/tag_explorer.md index ae94e767838d5..abe681600ca37 100644 --- a/content/en/cloud_cost_management/tag_explorer/_index.md +++ b/content/en/cloud_cost_management/tags/tag_explorer.md @@ -1,5 +1,7 @@ --- title: Tag Explorer +aliases: + - /cloud_cost_management/tag_explorer description: Search and manage all cost-related tags, including those from your bills, with insights into their sources. further_reading: - link: "/cloud_cost_management/" @@ -14,7 +16,7 @@ further_reading: - link: "/cloud_cost_management/setup/saas_costs" tag: "Documentation" text: "Learn about SaaS Cost Integrations" -- link: "/cloud_cost_management/tag_pipelines" +- link: "/cloud_cost_management/tags/tag_pipelines" tag: "Documentation" text: "Learn about Tag Pipelines" --- @@ -152,7 +154,7 @@ For Twilio tags, select **Twilio** from the dropdown menu on the top right corne [1]: /cloud_cost_management/ [2]: https://app.datadoghq.com/cost/tags -[3]: /cloud_cost_management/tag_pipelines +[3]: /cloud_cost_management/tags/tag_pipelines [4]: /cloud_cost_management/setup/custom [5]: /cloud_cost_management/datadog_costs [6]: /cloud_cost_management/setup/saas_costs diff --git a/content/en/cloud_cost_management/tag_pipelines.md b/content/en/cloud_cost_management/tags/tag_pipelines.md similarity index 96% rename from content/en/cloud_cost_management/tag_pipelines.md rename to content/en/cloud_cost_management/tags/tag_pipelines.md index 0695eba57064f..e607232599ace 100644 --- a/content/en/cloud_cost_management/tag_pipelines.md +++ b/content/en/cloud_cost_management/tags/tag_pipelines.md @@ -1,5 +1,7 @@ --- title: Tag Pipelines +aliases: + - /cloud_cost_management/tag_pipelines/ further_reading: - link: "/cloud_cost_management/" tag: "Documentation" @@ -81,7 +83,7 @@ Certain tags such as `env` and `host` are [reserved tags][4], and are part of [U Using tags helps correlate your metrics, traces, processes, and logs. Reserved tags like `host` provide visibility and effective monitoring across your infrastructure. For optimal correlation and actionable insights, use these reserved tags as part of your tagging strategy in Datadog. ## Delete tags -To delete a tag created using Tag Pipelines, delete the rule that created it. Within 24 hours, the tag will be automatically removed from the most recent three months of data. To remove the tag from older data, request a backfill through [Datadog support][5]. +To delete a tag created using Tag Pipelines, delete the rule that created it. Within 24 hours, the tag is automatically removed from the most recent three months of data. To remove the tag from older data, request a backfill through [Datadog support][5]. ## Further reading From 042779ea383fd41be64f53a1f655cb559bef5c59 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Fri, 18 Jul 2025 15:23:34 -0700 Subject: [PATCH 02/22] consolidate overview --- content/en/cloud_cost_management/tags/_index.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index b2a4de2b458b7..80004906daeff 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -18,7 +18,11 @@ further_reading: ## Overview -Tags help you organize, filter, and allocate your cloud costs effectively. With proper tagging, you can see exactly who's spending what, identify optimization opportunities, and create accurate chargeback reports. Cloud Cost Management automatically enriches your cost data with tags from multiple sources, so you can focus on using tags to drive insights rather than managing the technical details. +Tags help you organize, filter, and allocate your cloud costs effectively. Cloud Cost Management automatically enriches your cost data with tags from multiple sources, so you can focus on using tags to drive insights rather than managing the technical details. + +- **Track costs by team, service, or environment** - See exactly who's spending what and identify optimization opportunities +- **Allocate shared costs fairly** - Distribute costs across teams and projects for accurate chargeback and showback +- **Create accurate reports** - Generate detailed cost reports for stakeholders and budget planning ## Getting started @@ -30,11 +34,6 @@ Get started with tags in three steps: {{< img src="cloud_cost/tag_explorer/aws_1.png" alt="Tag Explorer interface showing available AWS tags and their usage" style="width:80%;" >}} -## Common scenarios - -- **Track costs by team, service, or environment** - See exactly who's spending what and identify optimization opportunities -- **Allocate shared costs fairly** - Distribute costs across teams and projects for accurate chargeback and showback - ## Where your tags come from Datadog applies tags to cost data using the following sources: From 008d0898025dbeaf71e401a4a9135389469c49e0 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Mon, 21 Jul 2025 11:17:08 -0700 Subject: [PATCH 03/22] remove bullets --- content/en/cloud_cost_management/tags/_index.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index 80004906daeff..d99e49cc1be93 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -18,11 +18,7 @@ further_reading: ## Overview -Tags help you organize, filter, and allocate your cloud costs effectively. Cloud Cost Management automatically enriches your cost data with tags from multiple sources, so you can focus on using tags to drive insights rather than managing the technical details. - -- **Track costs by team, service, or environment** - See exactly who's spending what and identify optimization opportunities -- **Allocate shared costs fairly** - Distribute costs across teams and projects for accurate chargeback and showback -- **Create accurate reports** - Generate detailed cost reports for stakeholders and budget planning +Tags help you organize, filter, and allocate your cloud costs effectively. Cloud Cost Management automatically enriches your cost data with tags from multiple sources, so you can focus on using tags to drive insights rather than managing the technical details. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. ## Getting started From f20ba5a2df128ac6badbd65c0755343936642f14 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Wed, 23 Jul 2025 11:30:24 -0700 Subject: [PATCH 04/22] remove period for consistency --- content/en/cloud_cost_management/tags/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index d99e49cc1be93..c7cfce3df91da 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -34,7 +34,7 @@ Get started with tags in three steps: Datadog applies tags to cost data using the following sources: -- **[Out-of-the-box tags][1]** - Standardized tags that Datadog automatically generates from some billing data columns (like `aws_product` and `aws_region`) in your cost and usage report. +- **[Out-of-the-box tags][1]** - Standardized tags that Datadog automatically generates from some billing data columns (like `aws_product` and `aws_region`) in your cost and usage report - **[Container allocation tags][2]** - Tags from your container workloads - **[Resource and account tags][3]** - Tags you've applied to your cloud resources - **[Tag pipelines][4]** - Custom rules you create to add missing tags From d3fbd8905e8eb54e958097bda21a46b6493fecae Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Mon, 4 Aug 2025 07:21:31 -0700 Subject: [PATCH 05/22] specific header --- content/en/cloud_cost_management/tags/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index c7cfce3df91da..bef26128f478c 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -95,7 +95,7 @@ With container cost allocation, you can: {{< partial name="whats-next/whats-next.html" >}} -[1]: /cloud_cost_management/multisource_querying/ +[1]: /cloud_cost_management/multisource_querying/#out-of-the-box-tags [2]: /cloud_cost_management/container_cost_allocation [3]: /cloud_cost_management/setup/aws/#aws-resource-tags [4]: /cloud_cost_management/tags/tag_pipelines From 8ed5a6087fb4518f1e3ed0f4d5415db40f27aede Mon Sep 17 00:00:00 2001 From: goeln Date: Wed, 17 Sep 2025 15:01:31 +0200 Subject: [PATCH 06/22] Updating some structure + improve tagging section --- .../en/cloud_cost_management/tags/_index.md | 74 ++++--------------- 1 file changed, 13 insertions(+), 61 deletions(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index bef26128f478c..a5829110ea417 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -18,19 +18,11 @@ further_reading: ## Overview -Tags help you organize, filter, and allocate your cloud costs effectively. Cloud Cost Management automatically enriches your cost data with tags from multiple sources, so you can focus on using tags to drive insights rather than managing the technical details. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. +Tags help you investigate and understand your cloud and SaaS costs across any dimensions. -## Getting started +Cloud Cost Management automatically enriches your cost data with tags from multiple sources, to help you achieve higher cost allocation and get deeper insight into who owns infrastructure costs in your ever changing cloud environments. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. -Get started with tags in three steps: - -1. **See what you have** - Use [Tag Explorer][5] to discover which tags are already available in your cost data. -2. **Identify gaps** - Look for missing tags that would help you track costs by team, project, or environment. -3. **Add missing tags** - Use [Tag Pipelines][4] to automatically add tags based on your business logic. - -{{< img src="cloud_cost/tag_explorer/aws_1.png" alt="Tag Explorer interface showing available AWS tags and their usage" style="width:80%;" >}} - -## Where your tags come from +## Where tags come form Datadog applies tags to cost data using the following sources: @@ -39,58 +31,17 @@ Datadog applies tags to cost data using the following sources: - **[Resource and account tags][3]** - Tags you've applied to your cloud resources - **[Tag pipelines][4]** - Custom rules you create to add missing tags -## How tags are attached to cost data - -Datadog automatically associates tags with your cost data through a multi-step process as new cost data is ingested. Your cost analysis always reflects the most current tag information. - -1. **Data ingestion** - When cost data arrives from your cloud provider (through billing reports, APIs, and so on), Datadog identifies the specific resources and services being billed. -2. **Tag lookup** - For each cost datapoint, Datadog looks up available tags from all configured sources (billing data, resource tags, container metadata, and so on). -3. **Tag application** - Tags are attached to the cost data based on a precedence order: - - Tag Pipelines (highest priority) - - Container tags - - Resource/account tags - - Out-of-the-box tags - - Billing data (lowest priority) - -4. **Data storage** - The enriched cost data with all associated tags is stored and made available for analysis. +## How tags are normalized -## Essential tags and examples +## Improving tagging -In addition to out-of-the-box tags, you can add these key tags to get the most value from your cost data: - -### Team and ownership tags -- `team` - Which team owns the resource -- `owner` - Individual responsible for the resource -- `project` - Project or initiative the resource supports - -**Example: Track costs by team** -Tag your resources with `team:engineering` or `team:marketing`, then: -- Create dashboards showing spend by team -- Set up alerts for unusual team spending -- Generate monthly cost reports per team - -### Environment and lifecycle tags -- `env` - Environment (prod, staging, dev) -- `service` - Application or service name -- `version` - Application version or release - -**Example: Identify unused resources** -Use tags like `env:dev` and `purpose:testing` to: -- Find development resources that can be stopped -- Track costs for temporary projects -- Clean up abandoned test environments - -### Business context tags -- `cost-center` - Budget or cost center -- `business-unit` - Business unit or department -- `purpose` - What the resource is used for - -**Example: Optimize container costs** -With container cost allocation, you can: -- See costs broken down by pod, namespace, or deployment -- Identify which applications are most expensive -- Optimize resource requests and limits +1. **Understand what tags exist** - Use [Tag Explorer][5] to discover which tags are already available in your cost data. +2. **Identify gaps in cost allocation** - In Explorer, group by any tag to see how many dollars are allocated to that tag, or are unallocated (which show up as `N/A`). Make sure to have "Container Allocated" enabled so that you are looking at cost allocation including tags on pods. +3. **Split up shared costs** - Use [Custom Allocation Rules][6] to split and assign shared costs back to teams, services, or more. You can use observability data to split costs accurately based on infrastructure usage. +4. **Address missing or incorrect tags** - Use [Tag Pipelines][4] to alias tags, or create a new tag, for incorrect tagging. For example, if your organization wants to use the standard `application` tag key, but teams use variations (like app, webapp, or apps), you can clean up those tags to become `application` for more accurate cost reporting. +5. **Add new tags** - Use [Tag Pipelines][4] to automatically create new inferred tags that align with specific business logic, such as a `business-unit` tag based on team structure. +{{< img src="cloud_cost/tag_explorer/aws_1.png" alt="Tag Explorer interface showing available AWS tags and their usage" style="width:80%;" >}} ## Further reading {{< partial name="whats-next/whats-next.html" >}} @@ -99,4 +50,5 @@ With container cost allocation, you can: [2]: /cloud_cost_management/container_cost_allocation [3]: /cloud_cost_management/setup/aws/#aws-resource-tags [4]: /cloud_cost_management/tags/tag_pipelines -[5]: /cloud_cost_management/tags/tag_explorer \ No newline at end of file +[5]: /cloud_cost_management/tags/tag_explorer +[6]: /cloud_cost_management/custom_allocation_rules From 34896645fb6cbbc7566c175abe60e194ef64d1c4 Mon Sep 17 00:00:00 2001 From: goeln Date: Thu, 18 Sep 2025 11:13:04 +0200 Subject: [PATCH 07/22] Update Where tags come from --- .../en/cloud_cost_management/tags/_index.md | 51 ++++++++++++++++--- 1 file changed, 44 insertions(+), 7 deletions(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index a5829110ea417..a74088da2a6ff 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -22,14 +22,48 @@ Tags help you investigate and understand your cloud and SaaS costs across any di Cloud Cost Management automatically enriches your cost data with tags from multiple sources, to help you achieve higher cost allocation and get deeper insight into who owns infrastructure costs in your ever changing cloud environments. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. -## Where tags come form +## Where tags come from -Datadog applies tags to cost data using the following sources: +Across all cloud and SaaS providers, Datadog collects tags from the following sources (including enriching cost data with data from other Datadog products) and adds them to your cost data: -- **[Out-of-the-box tags][1]** - Standardized tags that Datadog automatically generates from some billing data columns (like `aws_product` and `aws_region`) in your cost and usage report -- **[Container allocation tags][2]** - Tags from your container workloads -- **[Resource and account tags][3]** - Tags you've applied to your cloud resources -- **[Tag pipelines][4]** - Custom rules you create to add missing tags +| Source | What tags are collected | Description | +|---|---|---| +| All Providers | Bill columns | Such as AWS Cost and Usage Report (CUR) columns, Google Billing Export columns, etc | +| Datadog Enrichment | Host Agent | Tags added to host metadata by the Datadog agent running on the host | +| Datadog Enrichment | Service Catalog | Tags associated with this service in the APM Service Catalog | +| Datadog Enrichment | Integration Tiles | Tags added to the Datadog integration tile for a specific cloud account. Integration tile tags apply to all costs in that account. Requires enabling the provider integration for each account | +| Datadog Enrichment | Data Observability | Tags from the Datadog’s Data Observability product, requires enabling BigQuery monitoring | +| Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the Datadog Cloud Network product. Requires enabling Cloud Network in the Datadog agent | +| Kubernetes Enrichment | Kubernetes Node | User-defined tags found on Kubernetes nodes monitored with Datadog | +| Kubernetes Enrichment | Kubernetes Pod | User-defined tags found on Kubernetes pods monitored with Datadog | +| Kubernetes Enrichment | Kubernetes Persistent Volume | User-defined tags found on Persistent Volumes in Kubernetes clusters monitored with Datadog | +| Kubernetes Persistent Volume Claim | User-defined tags found on Persistent Volume Claims in Kubernetes clusters monitored with Datadog | +| Cloud Cost Management | Cloud Cost Aliases | Some aliases are tags derived from provider cost data, used to simplify the cost data model, such as `aws_product`, which is an alias of `lineItem/ProductCode`. Additional tags that exist on both cost data and integration metrics are added, allowing cost data and usage data to be combined in Custom Allocation Rules, dashboards, and notebooks | +| Cloud Cost Management | Cloud Cost Allocation | Tags created during cost allocation that specify the split of shared resources, such as `allocated_spend_type` | +| Cloud Cost Management | FOCUS | Provider-agnostic tags compliant with [FOCUS][8], the unifying format for cloud billing data | +| Tag Pipelines | Rules defined by user | Tags created by applying your Tag Pipelines to cost data | +| Custom Allocation Rules | Rules defined by user | Tags created by applying your Custom Allocation Rules to cost data (do not apply to SaaS costs) | + +Datadog also adds provider specific tags: + +| Provider | What tags are collected | Description | +|---|---|---| +| AWS | Cost Allocation Tags | Any tag defined by the user in [AWS Cost Allocation][1] tags that show up in the AWS CUR | +| AWS | AWS Resource Groups Tagging API | User-defined tags on a cloud resource in AWS, pulled by Cloud Cost Management using the Group Tagging API | +| AWS | AWS Organizational Units | User-defined tags on an AWS organizational units using [AWS Organizations][7] | +| AWS | AWS Organizations - Accounts | User-defined tags on an AWS account using [AWS Organizations][7] | +| Amazon ECS | Amazon ECS Task | User-defined tags on an ECS task definition | +| Amazon ECS | Amazon ECS Container | User-defined tags on a container running in an ECS task | +| Azure | Azure Cost Export - User Resource Tags | User-defined tags on a cloud resource in Azure, found in the Tags column in the Azure cost export. Does not include Resource Group tags | +| Azure | Azure Cost Export - System Resource Tags | Azure-defined tags on a cloud resource, found in the AdditionalInfo column in the Azure cost export | +| Google Cloud | Google Billing Export - Project Labels| User-defined labels on a project in Google Cloud, found in the project.labels column in the billing export | +| Google Cloud | Google Billing Export - System Resource Labels | System-generated labels on a resource in Google Cloud, found in the system_labels column in the billing export | +| Google Cloud | Google Billing Export - User Resource Labels | User-defined labels on a cloud resource in Google Cloud, found in the labels column in the billing export | +| Google Cloud | Google Billing Export - User Resource Tags | User-defined tags on a cloud resource in Google Cloud, found in the tags column in the billing export | +| Google Cloud | GKE Pod | User-defined labels found on pods running in Google Kubernetes Engine | +| Oracle Cloud | OCI Cost Export - User Resource Tags | User-defined tags on a cloud resource in Oracle Cloud Infrastructure, from the Tags column in the OCI FOCUS cost export | +| Datadog | Datadog Usage Attribution | User-defined tags for Usage Attribution in Datadog Plan and Usage | +| Custom Costs | Cost File Tags | User-defined tags for every provider, found on [cost files][9] uploaded to Cloud Cost Management | ## How tags are normalized @@ -46,9 +80,12 @@ Datadog applies tags to cost data using the following sources: {{< partial name="whats-next/whats-next.html" >}} -[1]: /cloud_cost_management/multisource_querying/#out-of-the-box-tags +[1]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html [2]: /cloud_cost_management/container_cost_allocation [3]: /cloud_cost_management/setup/aws/#aws-resource-tags [4]: /cloud_cost_management/tags/tag_pipelines [5]: /cloud_cost_management/tags/tag_explorer [6]: /cloud_cost_management/custom_allocation_rules +[7]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html +[8]: https://focus.finops.org/ +[9]: /cloud_cost_management/setup/custom?tab=csv From de120bb795c65fb9909cce4e2235642217d1532f Mon Sep 17 00:00:00 2001 From: goeln Date: Thu, 18 Sep 2025 11:42:08 +0200 Subject: [PATCH 08/22] Update normalization section --- .../en/cloud_cost_management/tags/_index.md | 37 ++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index a74088da2a6ff..007711e07b61e 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -18,7 +18,7 @@ further_reading: ## Overview -Tags help you investigate and understand your cloud and SaaS costs across any dimensions. +Tags help you investigate and understand your cloud and SaaS costs across any dimensions. Tags are made of tag keys and values (ex: in `aws_product:ec2`, the tag key is `aws_product`, and the value is `ec2`.) Cloud Cost Management automatically enriches your cost data with tags from multiple sources, to help you achieve higher cost allocation and get deeper insight into who owns infrastructure costs in your ever changing cloud environments. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. @@ -67,6 +67,41 @@ Datadog also adds provider specific tags: ## How tags are normalized +Tag keys and/or values may look slightly different in Cloud Cost Management compared to the providers or other parts of Datadog because of tag normalization. + +Cloud Cost Management normalizes tag **keys** largely the same as Datadog Metrics: +- Drop leading characters that are not letters +- Lower-case all characters +- Replace special characters and spaces with single underscore +- Remove any trailing underscore +- Reduce contiguous underscores to a single underscore +- Tag keys up to 5000 characters are supported, and any characters up until a letter are dropped so that tag keys start with letters (differs from Datadog Metrics) + +Cloud Cost Management normalizes tag **values** as well, while maintaining human readable tag values for cost reporting, with the following logic: +- Convert any consecutive whitespace to a single space +- Keep all letters, marks, numbers, punctuation, and symbols +- Replace any other characters with an underscore `_` +- Tag values up to 5000 characters are supported + +## How tags are prioritized + +It's possible for a cost data row to have multiple values, if tag values from 2+ sources are combined, and one is not prioritized over the other. + +To resolve conflicts and mitigate this, Cloud Cost Management will replace existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace an Kubernetes node tag `team:compute`. + +Sources higher in this list replace tag values from sources lower in this list, if there are conflicts: +- Tag Pipelines and Custom Allocation Rules +- FOCUS +- Service Catalog +- Amazon ECS Container +- Amazon ECS Task +- Kubernetes Pod +- Kubernetes Persistent Volume +- Kubernetes Node +- Host Agent + +All other tag sources (such as bill columns, AWS Organization tags, etc) can be overriden by these sources. + ## Improving tagging 1. **Understand what tags exist** - Use [Tag Explorer][5] to discover which tags are already available in your cost data. From df2c5cc42441aca1ade8210a1cc400d705a6eca1 Mon Sep 17 00:00:00 2001 From: goeln Date: Thu, 18 Sep 2025 11:42:43 +0200 Subject: [PATCH 09/22] Update _index.md --- content/en/cloud_cost_management/tags/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index 007711e07b61e..6d558be152abb 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -37,7 +37,7 @@ Across all cloud and SaaS providers, Datadog collects tags from the following so | Kubernetes Enrichment | Kubernetes Node | User-defined tags found on Kubernetes nodes monitored with Datadog | | Kubernetes Enrichment | Kubernetes Pod | User-defined tags found on Kubernetes pods monitored with Datadog | | Kubernetes Enrichment | Kubernetes Persistent Volume | User-defined tags found on Persistent Volumes in Kubernetes clusters monitored with Datadog | -| Kubernetes Persistent Volume Claim | User-defined tags found on Persistent Volume Claims in Kubernetes clusters monitored with Datadog | +| Kubernetes Enrichment | Kubernetes Persistent Volume Claim | User-defined tags found on Persistent Volume Claims in Kubernetes clusters monitored with Datadog | | Cloud Cost Management | Cloud Cost Aliases | Some aliases are tags derived from provider cost data, used to simplify the cost data model, such as `aws_product`, which is an alias of `lineItem/ProductCode`. Additional tags that exist on both cost data and integration metrics are added, allowing cost data and usage data to be combined in Custom Allocation Rules, dashboards, and notebooks | | Cloud Cost Management | Cloud Cost Allocation | Tags created during cost allocation that specify the split of shared resources, such as `allocated_spend_type` | | Cloud Cost Management | FOCUS | Provider-agnostic tags compliant with [FOCUS][8], the unifying format for cloud billing data | From 10d8012b1a5da0e507dc06138cf4135035ef7775 Mon Sep 17 00:00:00 2001 From: goeln Date: Thu, 18 Sep 2025 11:47:08 +0200 Subject: [PATCH 10/22] Update _index.md --- content/en/cloud_cost_management/tags/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index 6d558be152abb..eb5af180e28e0 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -59,7 +59,7 @@ Datadog also adds provider specific tags: | Google Cloud | Google Billing Export - Project Labels| User-defined labels on a project in Google Cloud, found in the project.labels column in the billing export | | Google Cloud | Google Billing Export - System Resource Labels | System-generated labels on a resource in Google Cloud, found in the system_labels column in the billing export | | Google Cloud | Google Billing Export - User Resource Labels | User-defined labels on a cloud resource in Google Cloud, found in the labels column in the billing export | -| Google Cloud | Google Billing Export - User Resource Tags | User-defined tags on a cloud resource in Google Cloud, found in the tags column in the billing export | +| Google Cloud | Google Billing Export - User Resource Tags | User-defined tags on a cloud resource in Google Cloud, found in the tags column in the billing export. The `goog-originating-sku-description` tag is added leveraging Google's SKU APis, to provide more granular SKU details for commitment line items. | | Google Cloud | GKE Pod | User-defined labels found on pods running in Google Kubernetes Engine | | Oracle Cloud | OCI Cost Export - User Resource Tags | User-defined tags on a cloud resource in Oracle Cloud Infrastructure, from the Tags column in the OCI FOCUS cost export | | Datadog | Datadog Usage Attribution | User-defined tags for Usage Attribution in Datadog Plan and Usage | From 30e05c6471ac26d86998fc56bab3398d012956a6 Mon Sep 17 00:00:00 2001 From: Rosa Trieu <107086888+rtrieu@users.noreply.github.com> Date: Fri, 3 Oct 2025 15:36:10 -0700 Subject: [PATCH 11/22] Apply suggestions from code review Co-authored-by: Tyler Edelen --- content/en/cloud_cost_management/tags/_index.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index eb5af180e28e0..4af8c10e5462b 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -18,7 +18,7 @@ further_reading: ## Overview -Tags help you investigate and understand your cloud and SaaS costs across any dimensions. Tags are made of tag keys and values (ex: in `aws_product:ec2`, the tag key is `aws_product`, and the value is `ec2`.) +Tags help you investigate and understand your cloud and SaaS costs across any dimensions. Tags consist of tag keys and values (for example: in `aws_product:ec2`, the tag key is `aws_product`, and the value is `ec2`.) Cloud Cost Management automatically enriches your cost data with tags from multiple sources, to help you achieve higher cost allocation and get deeper insight into who owns infrastructure costs in your ever changing cloud environments. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. @@ -30,9 +30,9 @@ Across all cloud and SaaS providers, Datadog collects tags from the following so |---|---|---| | All Providers | Bill columns | Such as AWS Cost and Usage Report (CUR) columns, Google Billing Export columns, etc | | Datadog Enrichment | Host Agent | Tags added to host metadata by the Datadog agent running on the host | -| Datadog Enrichment | Service Catalog | Tags associated with this service in the APM Service Catalog | +| Datadog Enrichment | Software Catalog | Tags associated with this service in the APM Service Catalog | | Datadog Enrichment | Integration Tiles | Tags added to the Datadog integration tile for a specific cloud account. Integration tile tags apply to all costs in that account. Requires enabling the provider integration for each account | -| Datadog Enrichment | Data Observability | Tags from the Datadog’s Data Observability product, requires enabling BigQuery monitoring | +| Datadog Enrichment | Data Observability | Tags from the Datadog’s Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | | Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the Datadog Cloud Network product. Requires enabling Cloud Network in the Datadog agent | | Kubernetes Enrichment | Kubernetes Node | User-defined tags found on Kubernetes nodes monitored with Datadog | | Kubernetes Enrichment | Kubernetes Pod | User-defined tags found on Kubernetes pods monitored with Datadog | @@ -59,7 +59,7 @@ Datadog also adds provider specific tags: | Google Cloud | Google Billing Export - Project Labels| User-defined labels on a project in Google Cloud, found in the project.labels column in the billing export | | Google Cloud | Google Billing Export - System Resource Labels | System-generated labels on a resource in Google Cloud, found in the system_labels column in the billing export | | Google Cloud | Google Billing Export - User Resource Labels | User-defined labels on a cloud resource in Google Cloud, found in the labels column in the billing export | -| Google Cloud | Google Billing Export - User Resource Tags | User-defined tags on a cloud resource in Google Cloud, found in the tags column in the billing export. The `goog-originating-sku-description` tag is added leveraging Google's SKU APis, to provide more granular SKU details for commitment line items. | +| Google Cloud | Google Billing Export - User Resource Tags | User-defined tags on a cloud resource in Google Cloud, found in the tags column in the billing export. The `goog-originating-sku-description` tag is added leveraging Google's SKU APIs, to provide more granular SKU details for commitment line items. | | Google Cloud | GKE Pod | User-defined labels found on pods running in Google Kubernetes Engine | | Oracle Cloud | OCI Cost Export - User Resource Tags | User-defined tags on a cloud resource in Oracle Cloud Infrastructure, from the Tags column in the OCI FOCUS cost export | | Datadog | Datadog Usage Attribution | User-defined tags for Usage Attribution in Datadog Plan and Usage | @@ -85,9 +85,9 @@ Cloud Cost Management normalizes tag **values** as well, while maintaining human ## How tags are prioritized -It's possible for a cost data row to have multiple values, if tag values from 2+ sources are combined, and one is not prioritized over the other. +It's possible for a cost data row to have multiple values for the same tag key, if tag values from 2+ sources are combined, and one is not prioritized over the other. -To resolve conflicts and mitigate this, Cloud Cost Management will replace existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace an Kubernetes node tag `team:compute`. +To resolve conflicts and mitigate this, Cloud Cost Management replaces existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace a Kubernetes node tag `team:compute`. Sources higher in this list replace tag values from sources lower in this list, if there are conflicts: - Tag Pipelines and Custom Allocation Rules From d0e7785f181d390e007132cef94fc5ab161c47ce Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Fri, 3 Oct 2025 15:42:42 -0700 Subject: [PATCH 12/22] add links --- content/en/cloud_cost_management/setup/aws.md | 2 +- .../en/cloud_cost_management/tags/_index.md | 20 +++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/content/en/cloud_cost_management/setup/aws.md b/content/en/cloud_cost_management/setup/aws.md index 32a619b6c5231..4df50e2d9b039 100644 --- a/content/en/cloud_cost_management/setup/aws.md +++ b/content/en/cloud_cost_management/setup/aws.md @@ -411,7 +411,7 @@ _Requires [container cost allocation][11], and applies only to `shared.resources ### Tag pipelines -Finally, all of your [tag pipeline][15] rulesets are applied, providing complete cost allocation when infrastructure tagging is not possible. Tag pipelines are the final enrichment layer and can override tags from other sources. +Finally, all of your [tag pipeline][15] rulesets are applied, providing complete cost allocation when infrastructure tagging is not possible. Tag pipelines are the final enrichment layer and add new tags to your cost data. ## Billing conductor [AWS Billing Conductor][16] is a custom billing service for AWS Marketplace Channel Partners (Partners) and organizations that have chargeback requirements. diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index eb5af180e28e0..e0e3b36347c8c 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -32,14 +32,14 @@ Across all cloud and SaaS providers, Datadog collects tags from the following so | Datadog Enrichment | Host Agent | Tags added to host metadata by the Datadog agent running on the host | | Datadog Enrichment | Service Catalog | Tags associated with this service in the APM Service Catalog | | Datadog Enrichment | Integration Tiles | Tags added to the Datadog integration tile for a specific cloud account. Integration tile tags apply to all costs in that account. Requires enabling the provider integration for each account | -| Datadog Enrichment | Data Observability | Tags from the Datadog’s Data Observability product, requires enabling BigQuery monitoring | -| Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the Datadog Cloud Network product. Requires enabling Cloud Network in the Datadog agent | +| Datadog Enrichment | Data Observability | Tags from the Datadog Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | +| Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the [Datadog Cloud Network][12] product. Requires enabling Cloud Network in the Datadog agent. See [data transfer cost allocation][13] for more details | | Kubernetes Enrichment | Kubernetes Node | User-defined tags found on Kubernetes nodes monitored with Datadog | | Kubernetes Enrichment | Kubernetes Pod | User-defined tags found on Kubernetes pods monitored with Datadog | | Kubernetes Enrichment | Kubernetes Persistent Volume | User-defined tags found on Persistent Volumes in Kubernetes clusters monitored with Datadog | | Kubernetes Enrichment | Kubernetes Persistent Volume Claim | User-defined tags found on Persistent Volume Claims in Kubernetes clusters monitored with Datadog | | Cloud Cost Management | Cloud Cost Aliases | Some aliases are tags derived from provider cost data, used to simplify the cost data model, such as `aws_product`, which is an alias of `lineItem/ProductCode`. Additional tags that exist on both cost data and integration metrics are added, allowing cost data and usage data to be combined in Custom Allocation Rules, dashboards, and notebooks | -| Cloud Cost Management | Cloud Cost Allocation | Tags created during cost allocation that specify the split of shared resources, such as `allocated_spend_type` | +| Cloud Cost Management | Cloud Cost Allocation | Tags created during [cost allocation][11] that specify the split of shared resources, such as `allocated_spend_type` | | Cloud Cost Management | FOCUS | Provider-agnostic tags compliant with [FOCUS][8], the unifying format for cloud billing data | | Tag Pipelines | Rules defined by user | Tags created by applying your Tag Pipelines to cost data | | Custom Allocation Rules | Rules defined by user | Tags created by applying your Custom Allocation Rules to cost data (do not apply to SaaS costs) | @@ -49,7 +49,7 @@ Datadog also adds provider specific tags: | Provider | What tags are collected | Description | |---|---|---| | AWS | Cost Allocation Tags | Any tag defined by the user in [AWS Cost Allocation][1] tags that show up in the AWS CUR | -| AWS | AWS Resource Groups Tagging API | User-defined tags on a cloud resource in AWS, pulled by Cloud Cost Management using the Group Tagging API | +| AWS | AWS Resource Groups Tagging API | User-defined tags on a cloud resource in AWS, pulled by Cloud Cost Management using the [Groups Tagging API][10] | | AWS | AWS Organizational Units | User-defined tags on an AWS organizational units using [AWS Organizations][7] | | AWS | AWS Organizations - Accounts | User-defined tags on an AWS account using [AWS Organizations][7] | | Amazon ECS | Amazon ECS Task | User-defined tags on an ECS task definition | @@ -77,7 +77,7 @@ Cloud Cost Management normalizes tag **keys** largely the same as Datadog Metric - Reduce contiguous underscores to a single underscore - Tag keys up to 5000 characters are supported, and any characters up until a letter are dropped so that tag keys start with letters (differs from Datadog Metrics) -Cloud Cost Management normalizes tag **values** as well, while maintaining human readable tag values for cost reporting, with the following logic: +Cloud Cost Management normalizes tag **values** as well, while maintaining human readable tag values for cost reporting. For example, `aws_instance_family:Machine Learning ASIC Instances` remains readable rather than being converted to something like `machine_learning_asic_instances`. The normalization follows this logic: - Convert any consecutive whitespace to a single space - Keep all letters, marks, numbers, punctuation, and symbols - Replace any other characters with an underscore `_` @@ -87,10 +87,10 @@ Cloud Cost Management normalizes tag **values** as well, while maintaining human It's possible for a cost data row to have multiple values, if tag values from 2+ sources are combined, and one is not prioritized over the other. -To resolve conflicts and mitigate this, Cloud Cost Management will replace existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace an Kubernetes node tag `team:compute`. +To resolve conflicts and mitigate this, Cloud Cost Management replaces existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace an Kubernetes node tag `team:compute`. Sources higher in this list replace tag values from sources lower in this list, if there are conflicts: -- Tag Pipelines and Custom Allocation Rules +- Custom Allocation Rules - FOCUS - Service Catalog - Amazon ECS Container @@ -100,7 +100,7 @@ Sources higher in this list replace tag values from sources lower in this list, - Kubernetes Node - Host Agent -All other tag sources (such as bill columns, AWS Organization tags, etc) can be overriden by these sources. +Other tag sources (such as AWS Organization tags, integration tile tags, and such) can be overridden by these sources. Bill columns and FOCUS columns are reserved and cannot be overridden. Tag Pipelines add new tags but do not override existing tags. ## Improving tagging @@ -124,3 +124,7 @@ All other tag sources (such as bill columns, AWS Organization tags, etc) can be [7]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html [8]: https://focus.finops.org/ [9]: /cloud_cost_management/setup/custom?tab=csv +[10]: https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/overview.html +[11]: /cloud_cost_management/cost_allocation/container_cost_allocation/?tab=aws#understanding-spend +[12]: /network_monitoring/ +[13]: /cloud_cost_management/cost_allocation/container_cost_allocation/?tab=aws#data-transfer \ No newline at end of file From 24b0d17b9324370e47b1bd7e97762dac799b8abe Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Fri, 3 Oct 2025 15:48:54 -0700 Subject: [PATCH 13/22] resolve merge conflict --- content/en/cloud_cost_management/tags/_index.md | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index cf8d994d22573..0fa864ac4fa43 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -32,11 +32,9 @@ Across all cloud and SaaS providers, Datadog collects tags from the following so | Datadog Enrichment | Host Agent | Tags added to host metadata by the Datadog agent running on the host | | Datadog Enrichment | Software Catalog | Tags associated with this service in the APM Service Catalog | | Datadog Enrichment | Integration Tiles | Tags added to the Datadog integration tile for a specific cloud account. Integration tile tags apply to all costs in that account. Requires enabling the provider integration for each account | -<<<<<<< HEAD | Datadog Enrichment | Data Observability | Tags from the Datadog Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | | Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the [Datadog Cloud Network][12] product. Requires enabling Cloud Network in the Datadog agent. See [data transfer cost allocation][13] for more details | -======= -| Datadog Enrichment | Data Observability | Tags from the Datadog’s Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | +| Datadog Enrichment | Data Observability | Tags from the Datadog Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | | Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the Datadog Cloud Network product. Requires enabling Cloud Network in the Datadog agent | >>>>>>> 30e05c6471ac26d86998fc56bab3398d012956a6 | Kubernetes Enrichment | Kubernetes Node | User-defined tags found on Kubernetes nodes monitored with Datadog | @@ -92,11 +90,7 @@ Cloud Cost Management normalizes tag **values** as well, while maintaining human It's possible for a cost data row to have multiple values for the same tag key, if tag values from 2+ sources are combined, and one is not prioritized over the other. -<<<<<<< HEAD To resolve conflicts and mitigate this, Cloud Cost Management replaces existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace an Kubernetes node tag `team:compute`. -======= -To resolve conflicts and mitigate this, Cloud Cost Management replaces existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace a Kubernetes node tag `team:compute`. ->>>>>>> 30e05c6471ac26d86998fc56bab3398d012956a6 Sources higher in this list replace tag values from sources lower in this list, if there are conflicts: - Custom Allocation Rules From 5ca122fdcb8032233107310c1e1585c99bbb7cf3 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Fri, 3 Oct 2025 15:49:57 -0700 Subject: [PATCH 14/22] remove commit number --- content/en/cloud_cost_management/tags/_index.md | 1 - 1 file changed, 1 deletion(-) diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index 0fa864ac4fa43..c75e1fb4cb0cd 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -36,7 +36,6 @@ Across all cloud and SaaS providers, Datadog collects tags from the following so | Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the [Datadog Cloud Network][12] product. Requires enabling Cloud Network in the Datadog agent. See [data transfer cost allocation][13] for more details | | Datadog Enrichment | Data Observability | Tags from the Datadog Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | | Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the Datadog Cloud Network product. Requires enabling Cloud Network in the Datadog agent | ->>>>>>> 30e05c6471ac26d86998fc56bab3398d012956a6 | Kubernetes Enrichment | Kubernetes Node | User-defined tags found on Kubernetes nodes monitored with Datadog | | Kubernetes Enrichment | Kubernetes Pod | User-defined tags found on Kubernetes pods monitored with Datadog | | Kubernetes Enrichment | Kubernetes Persistent Volume | User-defined tags found on Persistent Volumes in Kubernetes clusters monitored with Datadog | From f20692dc8588b3bf737d34fd46d208e2b7f600ad Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Mon, 6 Oct 2025 11:19:37 -0700 Subject: [PATCH 15/22] little fixes everywhere --- content/en/cloud_cost_management/_index.md | 52 +++++++++---------- .../custom_allocation_rules.md | 9 ++-- content/en/cloud_cost_management/setup/aws.md | 50 +++++++++--------- .../en/cloud_cost_management/setup/azure.md | 16 +++--- .../setup/google_cloud.md | 6 +-- .../en/cloud_cost_management/tags/_index.md | 14 +++-- .../tags/tag_explorer.md | 10 ++-- .../tags/tag_pipelines.md | 19 +++---- 8 files changed, 89 insertions(+), 87 deletions(-) diff --git a/content/en/cloud_cost_management/_index.md b/content/en/cloud_cost_management/_index.md index 72212dea4cc6b..5d8586f97aced 100644 --- a/content/en/cloud_cost_management/_index.md +++ b/content/en/cloud_cost_management/_index.md @@ -77,9 +77,9 @@ Optionally, you can programmatically export a timeseries graph of your cloud cos ## Use daily Datadog cost data -Visualize daily Datadog spending alongside related utilization metrics with a retention period of 15 months to spot potential inefficiencies and savings opportunities. +Visualize daily Datadog spending alongside related utilization metrics with a retention period of 15 months to spot potential inefficiencies and savings opportunities. Learn more about [Datadog Costs][8]. -When creating a dashboard, select **Cloud Cost** as the data source for your search query. +When creating a dashboard, select **Cloud Cost** as the data source, then choose **Datadog** from the available cost types. {{< img src="cloud_cost/datadog_costs/dashboard-updated.png" alt="Datadog costs as an option for the Cloud Cost data source in a dashboard" style="width:80%;" >}} @@ -87,9 +87,9 @@ Optionally, you can programmatically export a timeseries graph of your Datadog c ## Tagging and cost allocation -Use the [Tags documentation][5] to understand how tags are sourced, enriched, and managed in Cloud Cost Management. +Learn how tags are sourced, enriched, and managed in Cloud Cost Management by visiting the [Tags documentation][5]. -You can create tag rules to correct missing or incorrect tags and add inferred tags that align with your organization's business logic. +You can create tag rules to correct missing or incorrect tags, and add inferred tags that align with your organization's business logic. ## Create a cost monitor @@ -99,7 +99,7 @@ Proactively manage and optimize your cloud spending by creating a [Cloud Cost Mo ## Allocate costs -Use [Container Cost Allocation metrics][4] to discover costs associated with clusters and workloads across Kubernetes, Amazon ECS, Azure, and Google Cloud. Gain visibility into pod-level costs, identify idle resource costs, and analyze costs by resource type. +Use [Container Cost Allocation metrics][4] to discover costs associated with clusters and workloads across Kubernetes, Amazon ECS, Azure, and Google Cloud. You can gain visibility into pod-level costs, identify idle resource costs, and analyze costs by resource type. ## Permissions Two permissions are available: @@ -108,27 +108,26 @@ Two permissions are available: The table below describes the impact of these permissions in both Cloud Cost Management and related pages. -| Page/Functionality | Cloud Cost Management Read Permission | Cloud Cost Management Write Permission | -|-----------------------------------|---------------------------------------------|---------------------------------------------------| -| CCM Summary Page | Permission Required | N/A | -| CCM Containers Page | Permission Required | N/A | -| CCM Recommendations Page | Permission Required | N/A | -| CCM Explorer Page | Permission Required | N/A | -| CCM Plan Page | Permission Required | Permission Required to view Budgets | -| CCM Settings Page - Custom Costs | Permission Required | Permission Required to upload custom costs | -| CCM Settings Page - Tag Pipelines | Permission Required | Permission Required to create tag pipelines | -| CCM Settings Page - SaaS Integrations | Permission Required | Permission Required to enable integration for CCM | -| CCM Settings Page - Accounts | Permission Required | Permission Required to modify or create accounts | -| CCM Settings Page - Configure Recommendations | Permission Required | Permission Required to customize recommendations | -| Dashboards/Notebooks (external) | Permission Required to create and view data | N/A | -| Monitors (external) | Permission Required to create CCM monitors | N/A | -| Service Catalog (external) | Permission Required to view cost data | N/A | -| Resource Catalog (external) | Permission Required to view cost data | N/A | -| API Queries for Cost Data | Permission Required | N/A | - -### Data Access Control Preview -More granular tag-level restrictions are available as part of the [Data Access Control Preview][6]. To request preview access, -please fill out [this form][7]. +| Page/Functionality | Cloud Cost Management Read Permission | Cloud Cost Management Write Permission | +|-----------------------------------------------|---------------------------------------------|---------------------------------------------------| +| CCM Summary Page | Permission Required | N/A | +| CCM Containers Page | Permission Required | N/A | +| CCM Recommendations Page | Permission Required | N/A | +| CCM Explorer Page | Permission Required | N/A | +| CCM Plan Page | Permission Required | Permission Required to view Budgets | +| CCM Settings Page - Custom Costs | Permission Required | Permission Required to upload custom costs | +| CCM Settings Page - Tag Pipelines | Permission Required | Permission Required to create tag pipelines | +| CCM Settings Page - SaaS Integrations | Permission Required | Permission Required to enable integration for CCM | +| CCM Settings Page - Accounts | Permission Required | Permission Required to modify or create accounts | +| CCM Settings Page - Configure Recommendations | Permission Required | Permission Required to customize recommendations | +| Dashboards/Notebooks (external) | Permission Required to create and view data | N/A | +| Monitors (external) | Permission Required to create CCM monitors | N/A | +| Service Catalog (external) | Permission Required to view cost data | N/A | +| Resource Catalog (external) | Permission Required to view cost data | N/A | +| API Queries for Cost Data | Permission Required | N/A | + +### Data access control preview +More granular tag-level restrictions are available as part of the [Data Access Control Preview][6]. To request preview access, fill out [this form][7]. ## Further reading @@ -141,3 +140,4 @@ please fill out [this form][7]. [5]: /cloud_cost_management/tags/ [6]: /account_management/rbac/data_access/ [7]: https://www.datadoghq.com/product-preview/data-access-control/ +[8]: /cloud_cost_management/datadog_costs diff --git a/content/en/cloud_cost_management/custom_allocation_rules.md b/content/en/cloud_cost_management/custom_allocation_rules.md index 8f2964b5f5251..caf4d6d59afa1 100644 --- a/content/en/cloud_cost_management/custom_allocation_rules.md +++ b/content/en/cloud_cost_management/custom_allocation_rules.md @@ -21,9 +21,9 @@ The following allocation methods are available: | Even | Split costs evenly among all destinations. | Scenarios where each team, project, or environment should be charged the same amount for a shared cost. | Untagged support costs are allocated evenly to teams `teamA`, `teamB`, and `teamC`. | | Custom | Split costs to each destination based on percentages you define. | Scenarios where business rules or agreements dictate how much each team should pay. | Untagged support costs are allocated 60% to `teamA`, 30% to `teamB`, and 10% to `teamC`. | | Proportional by spend | Split costs based on each destination's share of total spend. | Scenarios where teams should pay in proportion to their actual spend. | Untagged support costs are allocated to teams `teamA`, `teamB`, and `teamC` based on their proportion of total spend on Amazon EC2.| - | Dynamic by metric | Split costs based each destination's share of total usage. | Scenarios where teams should pay in proportion to their actual usage. | Shared PostgreSQL costs are allocated by total query execution time per team. | + | Dynamic by metric | Split costs based on each destination's share of total usage. | Scenarios where teams should pay in proportion to their actual usage. | Shared PostgreSQL costs are allocated by total query execution time per team. | -Custom allocation rules runs after [Tag Pipelines][1], enabling cost allocations on the latest user-defined tags. Costs are allocated on a daily basis. Cost allocations can be applied to AWS, Google Cloud, and Azure costs. +Custom allocation rules run after [Tag Pipelines][1], enabling cost allocations on the latest user-defined tags. Costs are allocated on a daily basis. Cost allocations can be applied to AWS, Google Cloud, and Azure costs. ## Create a custom allocation rule @@ -92,10 +92,9 @@ For example, this PostgreSQL metrics query `sum:postgresql.queries.time{*} by {u To create a rule for this allocation, you could: -- Define the costs to allocate (source): **PostGreSQL costs** (`azure_product_family:dbforpostgresql`). +- Define the costs to allocate (source): **PostgreSQL costs** (`azure_product_family:dbforpostgresql`). - Choose the allocation method: **Dynamic by metric** - Choose the [destination tag](#step-3---define-the-destination) to split your costs by: **User** (`User A`, `User B`, `User C`). -- Refine the allocation by applying [filters](#step-4---optional-apply-filters): **EC2** (`aws_product:ec2`). - Define the metric query used to split the source costs: **Query execution time per user** (`sum:postgresql.queries.time{*}` by `{user}.as_count`). - Create suballocations by [partitioning](#step-5---optional-apply-a-partition) the allocation rule: **environment** (`env`). @@ -166,7 +165,7 @@ You can also disable a custom allocation rule without deleting it. Rules are applied in the same order as shown in the list. ## Visualize your allocations -Changes to custom allocation rules may take up to 24 hours to be applied. After being applied, the new allocations can be seen throughout Cloud Cost Management on all costs where Container Allocation is set to `enabled`. Custom allocated costs also include an `allocated_by_rule` tag, denoting the rule name that applied the allocation. +Changes to custom allocation rules may take up to 24 hours to be applied. After being applied, the new allocations can be seen throughout Cloud Cost Management. Custom allocated costs also include an `allocated_by_rule` tag, denoting the rule name that applied the allocation. {{< img src="cloud_cost/custom_allocation_rules/visualize_your_allocations-1.png" alt="See your allocations throughout Datadog" style="width:90%;" >}} diff --git a/content/en/cloud_cost_management/setup/aws.md b/content/en/cloud_cost_management/setup/aws.md index 4df50e2d9b039..c55d504583c5d 100644 --- a/content/en/cloud_cost_management/setup/aws.md +++ b/content/en/cloud_cost_management/setup/aws.md @@ -21,10 +21,10 @@ further_reading: ## Overview -To set up Cloud Cost Management in Datadog, you should: -1. Have an AWS account with billing access -2. Have the AWS integration installed in Datadog -3. Follow the steps below to create a Cost and Usage Report +To set up Cloud Cost Management in Datadog, you need: +1. An AWS account with billing access +2. The AWS integration installed in Datadog +3. A Cost and Usage Report (follow the steps below to create one) ## Setup @@ -32,13 +32,14 @@ To set up Cloud Cost Management in Datadog, you should: Navigate to [Setup & Configuration][7] and select an AWS account from the dropdown menu to pull costs from. -**Note**: Datadog recommends sending a Cost and Usage Report from an [AWS **management account**][2] for cost visibility into related **member accounts**. If you send a Cost and Usage report from an AWS **member account**, ensure that you have selected the following options in your **management account's** [preferences][3]: +**Note:** Datadog recommends configuring a Cost and Usage Report from an [AWS **management account**][2] for cost visibility into related **member accounts**. -* **Linked Account Access** -* **Linked Account Refunds and Credits** -* **Linked Account Discounts** +If you send a Cost and Usage Report from an AWS **member account**, ensure that you have selected the following options in your **management account's** [preferences][3]: +- **Linked Account Access** +- **Linked Account Refunds and Credits** +- **Linked Account Discounts** -This ensures complete cost accuracy by allowing periodic cost calculations against the AWS Cost Explorer. +These settings ensure complete cost accuracy by allowing periodic cost calculations against the AWS Cost Explorer. {{< tabs >}} @@ -63,7 +64,7 @@ Enter the following details for your Cost and Usage Report: * **Export Path Prefix**: The S3 path prefix where report files are stored. * **Export Name**: The name of your Cost and Usage Report. -**Notes**: +**Note**: - These values either locate your existing Cost and Usage Report, or define the settings for newly created resources. - It may take between 48 and 72 hours for all available data to populate in your Datadog organization after a complete Cost and Usage Report is generated. If 72 hours have passed and the data has still not yet populated, contact [Datadog Support][18]. @@ -105,7 +106,7 @@ To enable Datadog to locate the Cost and Usage Report, complete the fields with * **Export Path Prefix**: This is the **S3 path prefix** in the Data export storage settings section. * **Export Name**: This is the **Export name** in the Export name section. -**Note**: Datadog only supports legacy CURs generated by AWS. Do not modify or move the files generated by AWS, or attempt to provide access to files generated by a 3rd party. +**Note**: Datadog only supports legacy Cost and Usage Reports (CURs) generated by AWS. Do not modify or move the files generated by AWS, or attempt to provide access to files generated by a third party. {{< site-region region="gov" >}}
The AWS Cost and Usage Reports endpoint is used to validate the above fields against the CUR export in your S3 bucket. This endpoint is not FIPS validated.
@@ -164,7 +165,7 @@ To enable Datadog to locate the Cost and Usage Report, complete the fields with } {{< /code-block >}} -**Tip:** Make note of the name you created for this policy for next steps. +**Note:** Make note of the name you created for this policy for next steps. ### Attach the policy to the Datadog integration role @@ -189,7 +190,7 @@ Attach the new S3 policy to the Datadog integration role. ### Account filtering -Use Account Filtering to control which AWS member accounts to pull into Cloud Cost Management. You do not incur any additional costs for accounts that you filter out. +Use Account Filtering to control which AWS member accounts to pull into Cloud Cost Management. Filtering out accounts does not incur additional Datadog costs. Using Account Filtering requires an AWS management account. You can configure account filters after an account has been configured in Cloud Cost Management. @@ -210,9 +211,9 @@ Click **Billing dataset** to access the Account Filtering UI. Visualize your ingested data using out-of-the-box cost types. The cost types differ mainly in how they report on discount rates, savings plans and reservations. ### On-demand -**On-demand** costs are the costs of usage at the public, on-demand rate published by AWS. This excludes all savings plans, reservations, discounts, taxes, and fees. +**On-demand** costs represent the cost of usage at the public, on-demand rate published by AWS. This excludes all savings plans, reservations, discounts, taxes, and fees. -In most cases, on-demand costs are not a reliable source to estimate actual costs. +**Note**: In most cases, on-demand costs are not a reliable source to estimate actual costs. ### Amortized and unblended costs **Amortized** cost metrics distribute commitment savings throughout the discount term. This is also called _accrual basis_. Reservations and savings plans are drawn down from a monthly commitment and applied directly to covered usage, at the time of usage. Any unused remainder appears as a fee. @@ -263,7 +264,7 @@ In general: | `aws.cost.unblended` | Unblended costs, without container cost breakdowns. Matches the AWS invoice. | | `aws.cost.ondemand` | Costs based on the list rate provided by AWS, excluding all savings plans, reservations, discounts, taxes, and fees. | -## Tag enrichment +## How Datadog enriches your AWS cost data with tags Datadog automatically enriches your AWS cost data with tags from multiple sources. For a comprehensive overview of how tags are applied to cost data, see [Tags][19]. @@ -281,7 +282,7 @@ The following tag sources are available for AWS: All string-valued columns from the AWS [Cost and Usage Report (CUR)][6] are added as tags on cost metrics. -To ensure consistency, Datadog normalizes tag keys using underscores and lower case. For example, the CUR column `lineItem/ResourceId` maps to the tag key `line_item/resource_id`. Tag values are generally unmodified - maintaining exact casing and most special characters. +To ensure consistency, Datadog normalizes tag keys using underscores and lowercase. For example, the CUR column `lineItem/ResourceId` maps to the tag key `line_item/resource_id`. Tag values are generally unmodified, maintaining exact casing and most special characters. **Examples:** @@ -293,7 +294,7 @@ To ensure consistency, Datadog normalizes tag keys using underscores and lower c ### AWS resource tags -[AWS resource tags][12] are user-defined tags that appear in the AWS console when viewing a particular resource, like an EC2 instance or S3 bucket. +[AWS resource tags][12] are user-defined tags that appear in the AWS console when viewing a particular resource, such as an EC2 instance or S3 bucket. When you enable the Datadog AWS integration, Datadog automatically collects resource tags for most AWS resources. These tags are applied to all costs found in the CUR for a given resource. Resource tags are retrieved regularly and are applied to cost data starting from the day they are created or modified. Historical tag values are not overwritten when tags change. @@ -366,7 +367,7 @@ The following out-of-the-box tags are available for filtering and grouping data: | `pricing/purchase_option` | How you chose to pay for the line item (such as `All Upfront`). | | `pricing/term` | Whether your AWS usage is `Reserved` or `On-Demand`. | | `pricing/unit` | The pricing unit that AWS used for calculating the usage cost (such as `Hours`). | -| `reservation/availability_zone` | The Availability Zone of the resource associated with the line item (such as `us-east-1`). | +| `reservation/availability_zone` | The availability zone of the resource associated with the line item (such as `us-east-1`). | | `reservation/modification_status` | Shows whether the RI lease was modified or unaltered (such as `Manual`). | | `reservation/reservation_arn` | The ARN of the RI that the line item benefited from. | | `reservation/subscription_id` | The unique ID that maps the line item with the associated offer. | @@ -379,9 +380,9 @@ The following out-of-the-box tags are available for filtering and grouping data: #### Cost and observability correlation -Viewing costs in context of observability data is important to understand how infrastructure changes impact costs, identify why costs change, and optimize infrastructure for both costs and performance. Datadog updates resource identifying tags on cost data for top AWS products to simplify correlating observability and cost metrics. +Viewing costs in context of observability data is important to understand how infrastructure changes impact costs, identify why costs change, and optimize infrastructure for both costs and performance. Datadog updates resource-identifying tags on cost data for top AWS products to simplify correlating observability and cost metrics. -For example, to view cost and utilization for each RDS database, you can make a table with `aws.cost.amortized`, `aws.rds.cpuutilization`, and `aws.rds.freeable_memory` (or any other RDS metric) and group by `dbinstanceidentifier`. Or, to see Lambda usage and costs side by side, you can graph `aws.lambda.concurrent_executions` and `aws.cost.amortized` grouped by `functionname`. +For example, to view cost and utilization for each RDS database, you can create a table with `aws.cost.amortized`, `aws.rds.cpuutilization`, and `aws.rds.freeable_memory` (or any other RDS metric) and group by `dbinstanceidentifier`. To see Lambda usage and costs side by side, you can graph `aws.lambda.concurrent_executions` and `aws.cost.amortized` grouped by `functionname`. The following out-of-the-box tags are available: @@ -414,12 +415,13 @@ _Requires [container cost allocation][11], and applies only to `shared.resources Finally, all of your [tag pipeline][15] rulesets are applied, providing complete cost allocation when infrastructure tagging is not possible. Tag pipelines are the final enrichment layer and add new tags to your cost data. ## Billing conductor -[AWS Billing Conductor][16] is a custom billing service for AWS Marketplace Channel Partners (Partners) and organizations that have chargeback requirements. +[AWS Billing Conductor][16] is a custom billing service for AWS Marketplace Channel Partners and organizations that have chargeback requirements. Billing Conductor enables customers to create a second, pro forma version of their costs to share with their customers or account owners. Billing rates, credits and fees, and overhead costs can be customized at your discretion. You can also select which accounts to include in the CUR. -_Pro Forma Cost and Usage Reports do not include discounts and taxes, which makes it difficult to compare costs in Datadog to AWS Cost Explorer. -Additionally, adding accounts to a billing group impacts how Reservations and Savings Plans are shared across AWS accounts._ +**Important limitations**: +- Pro forma Cost and Usage Reports do not include discounts and taxes, which makes it difficult to compare costs in Datadog to AWS Cost Explorer. +- Adding accounts to a billing group impacts how Reservations and Savings Plans are shared across AWS accounts. To create a billing conductor CUR, follow the [AWS Cost and Usage Reports user guide][8]. Ensure the CUR meets [Datadog's requirements][9]. After the billing conductor CUR is created, follow the Cloud Cost Management instructions above to set it up in Datadog. diff --git a/content/en/cloud_cost_management/setup/azure.md b/content/en/cloud_cost_management/setup/azure.md index c7b57ed9198ab..6efd0ad7febc7 100644 --- a/content/en/cloud_cost_management/setup/azure.md +++ b/content/en/cloud_cost_management/setup/azure.md @@ -20,9 +20,11 @@ further_reading: ## Overview -To use Azure Cloud Cost Management in Datadog, you must set up the Datadog Azure integration and set up **amortized** and **actual** exports in Azure. Additionally, Datadog must have permissions to read the exports from the container. +To use Azure Cloud Cost Management in Datadog, you must configure the Datadog Azure integration and create **amortized** and **actual** exports in Azure. Additionally, Datadog must have permissions to read the exports from the container. -Datadog provides cost visibility on a Subscription, Resource Group, and Billing Account Level. Microsoft Customer Agreements (MCA) can be set up at all three scopes. Pay as you go (PAYG) accounts are in Preview. Contact [Datadog support][11] if you encounter any issues with setup. To determine your account type, see the [Azure documentation][10]. **Note**: If your account type is listed as "Microsoft Online Services Program", then your account is PAYG. +Datadog provides cost visibility on a Subscription, Resource Group, and Billing Account Level. Microsoft Customer Agreements (MCA) can be set up at all three scopes. Pay as you go (PAYG) accounts are in Preview. Contact [Datadog support][11] if you encounter any issues with setup. + +To determine your account type, see the [Azure documentation][10]. **Note:** If your account type is listed as "Microsoft Online Services Program", then your account is PAYG. ## Setup @@ -92,8 +94,8 @@ You need to generate exports for two data types: **actual** and **amortized**. D 5. Choose **Add role assignment**. 6. Choose **Storage Blob Data Reader**, then click Next. 7. Assign these permissions to one of the App Registrations you have connected with Datadog. - - Click **Select members**, pick the name of the App Registration, and click **Select**. **Note:** If you do not see your App Registration listed, start typing in the name for the UI to update and show it, if it is available. - - Select *review + assign*. + - Click **Select members**, pick the name of the App Registration, and click **Select**. **Note:** If you do not see your App Registration listed, start typing the name for the UI to update and show it, if it is available. + - Select **Review + assign**. If your exports are in different storage containers, repeat steps one to seven for the other storage container. {{% /tab %}} @@ -108,7 +110,7 @@ If your exports are in different storage containers, repeat steps one to seven f 6. Choose **Storage Blob Data Reader**, then click Next. 7. Assign these permissions to one of the App Registrations you have connected with Datadog. - Click **Select members**, pick the name of the App Registration, and click **Select**. - - Select *review + assign*. + - Select **Review + assign**. If your exports are in different storage containers, repeat steps one to seven for the other storage container. @@ -130,7 +132,7 @@ This ensures complete cost accuracy by allowing periodic cost calculations again {{% /tab %}} {{< /tabs >}} -**Note**: If you have the proper permissions on the app registration but your network is blocking Datadog's webhook IPs, you may see unexpected errors that appear to be permission issues. +**Note**: If you have the proper permissions on the app registration but your network is blocking Datadog's webhook IPs, you may encounter errors that appear to be permission-related. To resolve this, add Datadog's webhook IPs to your network allowlist by visiting the `Webhooks` section at `https://ip-ranges.`{{< region-param key="dd_site" code="true" >}}. @@ -227,7 +229,7 @@ The following out-of-the-box tags are derived from your [usage cost report][9] a | `resourceid` | The ID of the Azure resource. | | `resourcelocation` | The data center location where the resource is running (such as `westus2`). | | `resourcename` | The name of the resource. Not all charges come from deployed resources. | -| ResourceType | | +| `resourcetype` | The type of the Azure resource. | | `servicefamily` | The service family that the service belongs to (such as `Compute`). The tag `consumedservice` has deeper insights on infrastructure types. | | `ServicePeriodEndDate` | The termination date of the Azure service period. | | `ServicePeriodStartDate` | The start date the Azure service period. | diff --git a/content/en/cloud_cost_management/setup/google_cloud.md b/content/en/cloud_cost_management/setup/google_cloud.md index ee95f7bec1732..47ead0a741bd8 100644 --- a/content/en/cloud_cost_management/setup/google_cloud.md +++ b/content/en/cloud_cost_management/setup/google_cloud.md @@ -122,7 +122,7 @@ If your integrated Service Account exists in a different Google Cloud Platform p 1. Trigger the service agent creation by following the [official documentation][11] using the following values: * ENDPOINT: `bigquerydatatransfer.googleapis.com` * RESOURCE_TYPE: `project` - * RESOURCE_ID: export dataset project

+ * RESOURCE_ID: export dataset project

This creates a new service agent that looks like `service-@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com`. @@ -133,7 +133,7 @@ If your integrated Service Account exists in a different Google Cloud Platform p ### Configure Cloud Cost Continue to follow the steps indicated in [Setup & Configuration][3]. -**Note**: Data can take up to 48 to 72 hours after setup to stabilize in Datadog. +**Note**: Data can take 48 to 72 hours after setup to stabilize in Datadog. ## Cost types You can visualize your ingested data using the following cost types: @@ -146,7 +146,7 @@ You can visualize your ingested data using the following cost types: ### Out-of-the-box tags -Datadog automatically enriches your Google Cloud cost data with tags from multiple sources. For a comprehensive overview of how tags are applied to cost data, see [Tags][17]. +Datadog automatically enriches your Google Cloud cost data with tags from multiple sources. For a comprehensive overview of how tags are applied to cost data, see the [Tags documentation][17]. The following out-of-the-box tags are derived from your [detailed usage cost report][16] and make it easier to discover and understand cost data: diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index c75e1fb4cb0cd..19a1a78403818 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -18,9 +18,9 @@ further_reading: ## Overview -Tags help you investigate and understand your cloud and SaaS costs across any dimensions. Tags consist of tag keys and values (for example: in `aws_product:ec2`, the tag key is `aws_product`, and the value is `ec2`.) +Tags help you investigate and understand your cloud and SaaS costs across any dimensions. Tags consist of tag keys and values. For example, in `aws_product:ec2`, the tag key is `aws_product`, and the value is `ec2`. -Cloud Cost Management automatically enriches your cost data with tags from multiple sources, to help you achieve higher cost allocation and get deeper insight into who owns infrastructure costs in your ever changing cloud environments. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. +Cloud Cost Management automatically enriches your cost data with tags from multiple sources, to help you achieve better cost allocation and get deeper insight into who owns infrastructure costs in your ever-changing cloud environments. Using tags, you can allocate shared costs fairly, create accurate reports, and track costs by team, service, or environment. ## Where tags come from @@ -34,13 +34,11 @@ Across all cloud and SaaS providers, Datadog collects tags from the following so | Datadog Enrichment | Integration Tiles | Tags added to the Datadog integration tile for a specific cloud account. Integration tile tags apply to all costs in that account. Requires enabling the provider integration for each account | | Datadog Enrichment | Data Observability | Tags from the Datadog Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | | Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the [Datadog Cloud Network][12] product. Requires enabling Cloud Network in the Datadog agent. See [data transfer cost allocation][13] for more details | -| Datadog Enrichment | Data Observability | Tags from the Datadog Data Observability product, powering BigQuery cost allocation. Requires enabling BigQuery monitoring | -| Datadog Enrichment | Cloud Network Monitoring | Source and destination dimensions from the Datadog Cloud Network product. Requires enabling Cloud Network in the Datadog agent | | Kubernetes Enrichment | Kubernetes Node | User-defined tags found on Kubernetes nodes monitored with Datadog | | Kubernetes Enrichment | Kubernetes Pod | User-defined tags found on Kubernetes pods monitored with Datadog | | Kubernetes Enrichment | Kubernetes Persistent Volume | User-defined tags found on Persistent Volumes in Kubernetes clusters monitored with Datadog | | Kubernetes Enrichment | Kubernetes Persistent Volume Claim | User-defined tags found on Persistent Volume Claims in Kubernetes clusters monitored with Datadog | -| Cloud Cost Management | Cloud Cost Aliases | Some aliases are tags derived from provider cost data, used to simplify the cost data model, such as `aws_product`, which is an alias of `lineItem/ProductCode`. Additional tags that exist on both cost data and integration metrics are added, allowing cost data and usage data to be combined in Custom Allocation Rules, dashboards, and notebooks | +| Cloud Cost Management | Cloud Cost Aliases | Tags derived from provider cost data to simplify the cost data model, such as `aws_product` (an alias of `lineItem/ProductCode`). Additional tags that exist on both cost data and integration metrics are added, allowing cost data and usage data to be combined in Custom Allocation Rules, dashboards, and notebooks | | Cloud Cost Management | Cloud Cost Allocation | Tags created during [cost allocation][11] that specify the split of shared resources, such as `allocated_spend_type` | | Cloud Cost Management | FOCUS | Provider-agnostic tags compliant with [FOCUS][8], the unifying format for cloud billing data | | Tag Pipelines | Rules defined by user | Tags created by applying your Tag Pipelines to cost data | @@ -87,9 +85,9 @@ Cloud Cost Management normalizes tag **values** as well, while maintaining human ## How tags are prioritized -It's possible for a cost data row to have multiple values for the same tag key, if tag values from 2+ sources are combined, and one is not prioritized over the other. +A cost data row can have multiple values for the same tag key when tag values from two or more sources are combined and one is not prioritized over the other. -To resolve conflicts and mitigate this, Cloud Cost Management replaces existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopist` would take precedence and replace an Kubernetes node tag `team:compute`. +To resolve conflicts and mitigate this, Cloud Cost Management replaces existing tags instead of adding duplicates using the most specific source for each tag key. For example, a Kubernetes Pod tag `team:shopping` would take precedence and replace a Kubernetes node tag `team:compute`. Sources higher in this list replace tag values from sources lower in this list, if there are conflicts: - Custom Allocation Rules @@ -102,7 +100,7 @@ Sources higher in this list replace tag values from sources lower in this list, - Kubernetes Node - Host Agent -Other tag sources (such as AWS Organization tags, integration tile tags, and such) can be overridden by these sources. Bill columns and FOCUS columns are reserved and cannot be overridden. Tag Pipelines add new tags but do not override existing tags. +Other tag sources (such as AWS Organization tags, integration tile tags, and similar sources) can be overridden by these sources. Bill columns and FOCUS columns are reserved and cannot be overridden by any source. Tag Pipelines add new tags but do not override existing tags. ## Improving tagging diff --git a/content/en/cloud_cost_management/tags/tag_explorer.md b/content/en/cloud_cost_management/tags/tag_explorer.md index ef512d9ec979c..ce17f20a054c8 100644 --- a/content/en/cloud_cost_management/tags/tag_explorer.md +++ b/content/en/cloud_cost_management/tags/tag_explorer.md @@ -23,9 +23,9 @@ further_reading: ## Overview -[Cloud Cost Management][1] detects the sources for all of your cost-related tags, allowing you to search and manage tags for breaking down costs, including [Custom costs][4], [Datadog costs][5], and [SaaS cost integrations][6]. +[Cloud Cost Management][1] detects the sources for all of your cost-related tags. You can search and manage tags for breaking down costs, including [Custom costs][4], [Datadog costs][5], and [SaaS cost integrations][6]. -Use the [Tag Explorer][2] to understand the sources and view descriptions for each tag, in addition to those managed through [Tag Pipelines][3]. [Tag Pipelines][3] allow you to create and manage tag rules that fix missing or incorrect tags on your cloud bill, or create inferred tags according to your business logic. +Use the [Tag Explorer][2] to understand the sources and view descriptions for each tag. This includes tags managed through [Tag Pipelines][3]. [Tag Pipelines][3] allow you to create and manage tag rules that fix missing or incorrect tags on your cloud bill, or create inferred tags according to your business logic. {{< img src="cloud_cost/tag_explorer/dropdown_1.png" alt="Search through the list of Azure cost-related tags in the Tag Explorer and understand where the costs are coming from" style="width:100%;" >}} @@ -37,7 +37,7 @@ See the respective documentation for your cloud provider: {{< partial name="cloud_cost/getting-started.html" >}} -
+
## Search and manage tags @@ -62,7 +62,7 @@ For Azure tags, select **Azure** from the dropdown menu on the top right corner. For Google Cloud tags, select **Google** from the dropdown menu on the top right corner. -{{< img src="cloud_cost/tag_explorer/google_1.png" alt="Search through the list of Azure cost-related tags in the Tag Explorer and understand where the costs are coming from" style="width:100%;" >}} +{{< img src="cloud_cost/tag_explorer/google_1.png" alt="Search through the list of Google Cloud cost-related tags in the Tag Explorer and understand where the costs are coming from" style="width:100%;" >}} {{% /tab %}} {{% tab "Datadog" %}} @@ -149,7 +149,7 @@ For Twilio tags, select **Twilio** from the dropdown menu on the top right corne {{< /tabs >}} ## Set preferred tags -Set up to five preferred tags to highlight your organization's most important tags throughout Cloud Cost Management. These tags appear first when selecting tags in the [Explorer page][7], [CCM Reports][8], and [Custom Allocation Rules][9], among other areas. +You can set up to five preferred tags to highlight your organization's most important tags throughout Cloud Cost Management. These tags appear first when selecting tags in the [Explorer page][7], [CCM Reports][8], and [Custom Allocation Rules][9], among other areas. {{< img src="cloud_cost/tag_explorer/preferred_tags_1.png" alt="Preferred tags are shown throughout CCM" style="width:100%;" >}} diff --git a/content/en/cloud_cost_management/tags/tag_pipelines.md b/content/en/cloud_cost_management/tags/tag_pipelines.md index 170411bb3dda6..de4a07969facd 100644 --- a/content/en/cloud_cost_management/tags/tag_pipelines.md +++ b/content/en/cloud_cost_management/tags/tag_pipelines.md @@ -16,13 +16,13 @@ further_reading: ## Overview -To effectively monitor cloud costs, you need a comprehensive understanding of how various services, teams, and products contribute to your overall spending. Tag Pipelines enforce the use of standardized tags across your cloud resources and ensure consistent, accurate cost attribution throughout your organization. +To effectively monitor cloud costs, you need to understand how various services, teams, and products contribute to your overall spending. Tag Pipelines enforce the use of standardized tags across your cloud resources and ensure consistent, accurate cost attribution throughout your organization. With [Tag Pipelines][1], you can create tag rules to address missing or incorrect tags on your cloud bills. You can also create new inferred tags that align with specific business logic to enhance the accuracy of your cost tracking. -Tag pipelines are applied to Cloud Cost metrics from all providers. Tag pipelines are not applied to Cloud Cost Recommendations. +Tag pipelines are applied to Cloud Cost metrics from all providers, but are not applied to Cloud Cost Recommendations. -When tag pipelines change, the new rules are automatically applied to the most recent three months of data. It may take up to 24 hours for the backfill to complete after rules are added or modified. +When tag pipelines change, the new rules are automatically applied to the most recent three months of data. It may take up to 24 hours for the historical data update to complete after rules are added or modified. ## Create a ruleset @@ -49,7 +49,7 @@ For example, you can create a rule to tag all resources with their business unit Under the **Additional options** section, you have the following options: - **Only apply if tag `{tag}` doesn't exist** - Ensures the rule only applies if the specified tag (`business-unit` in the example above) doesn't already exist. -- **Apply case-insensitive matching to resource tags** - Enables tags defined in the `To resources with tag(s)` field and tags from the cost data to be case insensitive. For example, if resource tags from the UI is: `foo:bar` and the tag from the cost data is `Foo:bar`, then the two can be matched. +- **Apply case-insensitive matching to resource tags** - Enables tags defined in the `To resources with tag(s)` field and tags from the cost data to be case insensitive. For example, if resource tags from the UI are: `foo:bar` and the tag from the cost data is `Foo:bar`, then the two can be matched. ### Alias tag keys @@ -59,24 +59,24 @@ For example, if your organization wants to use the standard `application` tag ke {{< img src="cloud_cost/pipelines-alias-tag.png" alt="Add application tag to resources with app, webapp, or apps tag." style="width:60%;" >}} -Add the application tag to resources with `app`, `webapp`, or `apps` tags. The rule stops executing for each resource after a first match is found. For example, if a resource already has a `app` tag, then the rule no longer attempts to identify a `webapp` or `apps` tag. +Add the application tag to resources with `app`, `webapp`, or `apps` tags. The rule stops executing for each resource after the first match is found. For example, if a resource already has an `app` tag, then the rule no longer attempts to identify a `webapp` or `apps` tag. To ensure the rule only applies if the `application` tag doesn't already exist, click the toggle in the **Additional options** section. ### Map multiple tags -Use [Reference Tables][2] to add multiple tags to cost data without creating multiple rules. This maps the values from your Reference Table's primary key column to values from cost tags. If found, the pipelines adds the selected Reference Table columns as tags to cost data. +Use [Reference Tables][2] to add multiple tags to cost data without creating multiple rules. This maps the values from your Reference Table's primary key column to values from cost tags. If found, the pipeline adds the selected Reference Table columns as tags to cost data. For example, if you want to add information about which VPs, organizations, and business_units different AWS and Azure accounts fall under, you can create a table and map the tags. {{< img src="cloud_cost/pipelines-map-multiple-tags.png" alt="Add account metadata like customer_name using reference tables for tag pipelines" style="width:60%;" >}} -Similar to [Alias tag keys](#alias-tag-keys), the rule stops executing for each resource after a first match is found. For example, if an `aws_member_account_id` is found, then the rule no longer attempts to find a `subscriptionid`. +Similar to [Alias tag keys](#alias-tag-keys), the rule stops executing for each resource after the first match is found. For example, if an `aws_member_account_id` is found, then the rule no longer attempts to find a `subscriptionid`. Under the **Additional options** section, you have the following options: - **Only apply if columns don't exist** - Ensures the defined columns are only added if they do not already exist with the associated tags from the cost data. -- **Apply case-insensitive matching for primary key values** - Enables case-insensitive matching between the primary key value from the reference table and the value of the tag in the cost data where the tag key matches the primary key. For example, if the primary key value pair from UI is: foo:Bar and the tag from the cost data is foo:bar, then the two can be matched. +- **Apply case-insensitive matching for primary key values** - Enables case-insensitive matching between the primary key value from the reference table and the value of the tag in the cost data where the tag key matches the primary key. For example, if the primary key value pair from the UI is `foo:Bar` and the tag from the cost data is `foo:bar`, then the two can be matched. ## Reserved tags @@ -85,7 +85,7 @@ Certain tags such as `env` and `host` are [reserved tags][4], and are part of [U Using tags helps correlate your metrics, traces, processes, and logs. Reserved tags like `host` provide visibility and effective monitoring across your infrastructure. For optimal correlation and actionable insights, use these reserved tags as part of your tagging strategy in Datadog. ## Delete tags -To delete a tag created using Tag Pipelines, delete the rule that created it. Within 24 hours, the tag is automatically removed from the most recent three months of data. To remove the tag from older data, request a backfill through [Datadog support][5]. +To delete a tag created using Tag Pipelines, delete the rule that created it. Within 24 hours, the tag is automatically removed from the most recent three months of data. To remove the tag from older data, contact [Datadog support][5]. ## Further reading @@ -95,3 +95,4 @@ To delete a tag created using Tag Pipelines, delete the rule that created it. Wi [2]: /integrations/guide/reference-tables/?tab=manualupload [3]: /getting_started/tagging/unified_service_tagging/ [4]: /getting_started/tagging/ +[5]: /help/ From f29e65232bd09fa3b11e81dc624ba4e3487acf69 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Tue, 7 Oct 2025 12:24:20 -0700 Subject: [PATCH 16/22] first push moving things around renaming --- config/_default/menus/main.en.yaml | 111 ++++++++++-------- .../{cost_allocation => allocation}/_index.md | 8 +- .../bigquery.md | 0 .../container_cost_allocation.md | 0 .../custom_allocation_rules.md | 2 + .../cloud_cost_management/real_time_costs.md | 2 +- .../en/cloud_cost_management/setup/oracle.md | 6 +- .../en/cloud_cost_management/tags/_index.md | 2 +- .../tags/tag_explorer.md | 2 +- 9 files changed, 74 insertions(+), 59 deletions(-) rename content/en/cloud_cost_management/{cost_allocation => allocation}/_index.md (90%) rename content/en/cloud_cost_management/{cost_allocation => allocation}/bigquery.md (100%) rename content/en/cloud_cost_management/{cost_allocation => allocation}/container_cost_allocation.md (100%) rename content/en/cloud_cost_management/{ => allocation}/custom_allocation_rules.md (99%) diff --git a/config/_default/menus/main.en.yaml b/config/_default/menus/main.en.yaml index 4570d072c5450..e6c7e7ddc62aa 100644 --- a/config/_default/menus/main.en.yaml +++ b/config/_default/menus/main.en.yaml @@ -3673,41 +3673,86 @@ menu: parent: cloud_cost identifier: cloud_cost_datadog_costs weight: 2 - - name: Cost Allocation - url: cloud_cost_management/cost_allocation + - name: Tags + url: cloud_cost_management/tags parent: cloud_cost - identifier: cloud_cost_cost_allocation + identifier: cloud_cost_tags weight: 3 - - name: Container Costs - url: cloud_cost_management/cost_allocation/container_cost_allocation/ + - name: Tag Explorer + url: cloud_cost_management/tags/tag_explorer + parent: cloud_cost_tags + identifier: cloud_cost_tag_explorer + weight: 301 + - name: Tag Pipelines + url: cloud_cost_management/tags/tag_pipelines + parent: cloud_cost_tags + identifier: cloud_cost_tag_pipelines + weight: 302 + - name: Allocation + url: cloud_cost_management/allocation + parent: cloud_cost + identifier: cloud_cost_cost_allocation + weight: 4 + - name: Container Cost Allocation + url: cloud_cost_management/allocation/container_cost_allocation/ parent: cloud_cost_cost_allocation identifier: cloud_cost_container_cost_allocation - weight: 301 + weight: 401 - name: AWS - url: cloud_cost_management/cost_allocation/container_cost_allocation/?tab=aws/ + url: cloud_cost_management/allocation/container_cost_allocation/?tab=aws/ parent: cloud_cost_container_cost_allocation identifier: cloud_cost_container_cost_allocation_aws weight: 101 - name: Azure - url: cloud_cost_management/cost_allocation/container_cost_allocation/?tab=azure + url: cloud_cost_management/allocation/container_cost_allocation/?tab=azure parent: cloud_cost_container_cost_allocation identifier: cloud_cost_container_cost_allocation_azure weight: 102 - name: Google Cloud - url: cloud_cost_management/cost_allocation/container_cost_allocation/?tab=google + url: cloud_cost_management/allocation/container_cost_allocation/?tab=google parent: cloud_cost_container_cost_allocation identifier: cloud_cost_container_cost_allocation_google weight: 103 - name: BigQuery Costs - url: cloud_cost_management/cost_allocation/bigquery/ + url: cloud_cost_management/allocation/bigquery/ parent: cloud_cost_cost_allocation identifier: cloud_cost_cost_allocationbigquery - weight: 302 + weight: 402 - name: Custom Allocation Rules - url: cloud_cost_management/custom_allocation_rules - parent: cloud_cost + url: cloud_cost_management/allocation/custom_allocation_rules + parent: cloud_cost_cost_allocation identifier: cloud_cost_custom_allocation_rules - weight: 4 + weight: 403 + - name: Reporting + url: /cloud_cost_management/reporting + parent: cloud_cost + identifier: cloud_cost_reporting + weight: 5 + - name: Explorer + url: /cloud_cost_management/reporting/explorer + parent: cloud_cost_reporting + identifier: cloud_cost_explorer + weight: 501 + - name: Scheduled Cost Reports + url: /cloud_cost_management/reports/scheduled_reports + parent: cloud_cost_reporting + identifier: cloud_cost_scheduled_reports + weight: 502 + - name: Reports + url: /cloud_cost_management/reporting/reports + parent: cloud_cost_reporting + identifier: cloud_cost_sreports + weight: 503 + - name: Monitors + url: /cloud_cost_management/reporting/monitors + parent: cloud_cost + identifier: cloud_cost_monitors + weight: 504 + - name: Anomalies + url: /cloud_cost_management/reporting/anomalies + parent: cloud_cost + identifier: cloud_cost_anomalies + weight: 505 - name: Planning url: cloud_cost_management/planning parent: cloud_cost @@ -3723,36 +3768,13 @@ menu: parent: cloud_cost_planning identifier: cloud_cost_planning_commitment_programs weight: 502 - - name: Tags - url: cloud_cost_management/tags - parent: cloud_cost - identifier: cloud_cost_tags - weight: 6 - - name: Tag Explorer - url: cloud_cost_management/tags/tag_explorer - parent: cloud_cost_tags - identifier: cloud_cost_tag_explorer - weight: 601 - - name: Tag Pipelines - url: cloud_cost_management/tags/tag_pipelines - parent: cloud_cost_tags - identifier: cloud_cost_tag_pipelines - weight: 602 + - name: Multisource Querying url: cloud_cost_management/multisource_querying parent: cloud_cost identifier: cloud_cost_multisource_querying weight: 7 - - name: Reports - url: /cloud_cost_management/reports - parent: cloud_cost - identifier: cloud_cost_reports - weight: 9 - - name: Scheduled Cost Reports - url: /cloud_cost_management/reports/scheduled_reports - parent: cloud_cost_reports - identifier: cloud_cost_scheduled_reports - weight: 901 + - name: Recommendations url: cloud_cost_management/recommendations parent: cloud_cost @@ -3763,16 +3785,7 @@ menu: parent: cloud_cost_recommendations identifier: cloud_cost_custom_recommendations weight: 901 - - name: Monitors - url: /cloud_cost_management/monitors - parent: cloud_cost - identifier: cloud_cost_monitors - weight: 10 - - name: Anomalies - url: /cloud_cost_management/anomalies - parent: cloud_cost - identifier: cloud_cost_anomalies - weight: 11 + - name: Real-Time Costs url: cloud_cost_management/real_time_costs parent: cloud_cost diff --git a/content/en/cloud_cost_management/cost_allocation/_index.md b/content/en/cloud_cost_management/allocation/_index.md similarity index 90% rename from content/en/cloud_cost_management/cost_allocation/_index.md rename to content/en/cloud_cost_management/allocation/_index.md index 92b312e868904..8c21ac69c9916 100644 --- a/content/en/cloud_cost_management/cost_allocation/_index.md +++ b/content/en/cloud_cost_management/allocation/_index.md @@ -5,10 +5,10 @@ further_reading: - link: "/cloud_cost_management/" tag: "Documentation" text: "Learn about Cloud Cost Management" - - link: "/cloud_cost_management/cost_allocation/container_cost_allocation" + - link: "/cloud_cost_management/allocation/container_cost_allocation" tag: "Documentation" text: "Container Cost Allocation" - - link: "/cloud_cost_management/cost_allocation/bigquery" + - link: "/cloud_cost_management/allocation/bigquery" tag: "Documentation" text: "BigQuery Cost Allocation" --- @@ -51,6 +51,6 @@ To get started with cost allocation: {{< partial name="whats-next/whats-next.html" >}} -[1]: /cloud_cost_management/cost_allocation/container_cost_allocation -[2]: /cloud_cost_management/cost_allocation/bigquery +[1]: /cloud_cost_management/allocation/container_cost_allocation +[2]: /cloud_cost_management/allocation/bigquery [3]: https://app.datadoghq.com/cost/setup \ No newline at end of file diff --git a/content/en/cloud_cost_management/cost_allocation/bigquery.md b/content/en/cloud_cost_management/allocation/bigquery.md similarity index 100% rename from content/en/cloud_cost_management/cost_allocation/bigquery.md rename to content/en/cloud_cost_management/allocation/bigquery.md diff --git a/content/en/cloud_cost_management/cost_allocation/container_cost_allocation.md b/content/en/cloud_cost_management/allocation/container_cost_allocation.md similarity index 100% rename from content/en/cloud_cost_management/cost_allocation/container_cost_allocation.md rename to content/en/cloud_cost_management/allocation/container_cost_allocation.md diff --git a/content/en/cloud_cost_management/custom_allocation_rules.md b/content/en/cloud_cost_management/allocation/custom_allocation_rules.md similarity index 99% rename from content/en/cloud_cost_management/custom_allocation_rules.md rename to content/en/cloud_cost_management/allocation/custom_allocation_rules.md index caf4d6d59afa1..71ff5c8c1a369 100644 --- a/content/en/cloud_cost_management/custom_allocation_rules.md +++ b/content/en/cloud_cost_management/allocation/custom_allocation_rules.md @@ -1,6 +1,8 @@ --- title: Custom Allocation Rules description: "Allocate cloud costs based on custom allocation rules." +aliases: +- /cloud_cost_management/custom_allocation_rules further_reading: - link: "https://docs.datadoghq.com/cloud_cost_management/?tab=aws#overview" tag: "Documentation" diff --git a/content/en/cloud_cost_management/real_time_costs.md b/content/en/cloud_cost_management/real_time_costs.md index 0a98e869e95cf..8ea21cee2fabd 100644 --- a/content/en/cloud_cost_management/real_time_costs.md +++ b/content/en/cloud_cost_management/real_time_costs.md @@ -76,4 +76,4 @@ You can use the `estimated_hourly_cost` tag to understand the estimated unit cos - Instances are monitored by the Datadog Agent but are not included in CCM billing data [1]: /metrics/types/?tab=rate#metric-types -[2]: /cloud_cost_management/cost_allocation/container_cost_allocation/ +[2]: /cloud_cost_management/allocation/container_cost_allocation/ diff --git a/content/en/cloud_cost_management/setup/oracle.md b/content/en/cloud_cost_management/setup/oracle.md index 5accdd6fcc408..f00035b717c31 100644 --- a/content/en/cloud_cost_management/setup/oracle.md +++ b/content/en/cloud_cost_management/setup/oracle.md @@ -99,8 +99,8 @@ Container cost allocation is not available for OCI. See [Container Cost Allocati ## Further reading {{< partial name="whats-next/whats-next.html" >}} -[1]: https://docs.datadoghq.com/integrations/oracle-cloud-infrastructure/ +[1]: /integrations/oracle-cloud-infrastructure/ [2]: https://app.datadoghq.com/cost/setup?cloud=oracle -[3]: https://docs.datadoghq.com/integrations/oracle-cloud-infrastructure/?tab=createvcnrecommended#oci-integration-manual-to-quickstart-migration +[3]: /integrations/oracle-cloud-infrastructure/?tab=createvcnrecommended#oci-integration-manual-to-quickstart-migration [4]: https://docs.oracle.com/en-us/iaas/Content/Billing/Concepts/costusagereportsoverview.htm -[5]: https://docs-staging.datadoghq.com/jahanzeb.hassan/oci-docs-yo/cloud_cost_management/cost_allocation/container_cost_allocation/?tab=aws +[5]: /cloud_cost_management/allocation/container_cost_allocation/?tab=aws diff --git a/content/en/cloud_cost_management/tags/_index.md b/content/en/cloud_cost_management/tags/_index.md index 19a1a78403818..db9186ee98941 100644 --- a/content/en/cloud_cost_management/tags/_index.md +++ b/content/en/cloud_cost_management/tags/_index.md @@ -120,7 +120,7 @@ Other tag sources (such as AWS Organization tags, integration tile tags, and sim [3]: /cloud_cost_management/setup/aws/#aws-resource-tags [4]: /cloud_cost_management/tags/tag_pipelines [5]: /cloud_cost_management/tags/tag_explorer -[6]: /cloud_cost_management/custom_allocation_rules +[6]: /cloud_cost_management/allocation/custom_allocation_rules [7]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html [8]: https://focus.finops.org/ [9]: /cloud_cost_management/setup/custom?tab=csv diff --git a/content/en/cloud_cost_management/tags/tag_explorer.md b/content/en/cloud_cost_management/tags/tag_explorer.md index ce17f20a054c8..2acbefd9bc9a4 100644 --- a/content/en/cloud_cost_management/tags/tag_explorer.md +++ b/content/en/cloud_cost_management/tags/tag_explorer.md @@ -169,4 +169,4 @@ You can choose preferred tags from any of your existing cost data tags, includin [6]: /cloud_cost_management/setup/saas_costs [7]: https://app.datadoghq.com/cost/explorer [8]: /cloud_cost_management/reports -[9]: /cloud_cost_management/custom_allocation_rules +[9]: /cloud_cost_management/allocation/custom_allocation_rules From e84ece625eb5d22d846233767491f185cdd71771 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Tue, 7 Oct 2025 13:25:52 -0700 Subject: [PATCH 17/22] rearrange stuff --- config/_default/menus/main.en.yaml | 38 ++++++++++--------- .../cloud_cost_management/reports/_index.md | 4 +- .../reports/scheduled_reports.md | 2 +- .../tags/tag_explorer.md | 2 +- 4 files changed, 24 insertions(+), 22 deletions(-) diff --git a/config/_default/menus/main.en.yaml b/config/_default/menus/main.en.yaml index e6c7e7ddc62aa..e6a7701350716 100644 --- a/config/_default/menus/main.en.yaml +++ b/config/_default/menus/main.en.yaml @@ -3668,6 +3668,11 @@ menu: parent: cloud_cost_setup identifier: cloud_cost_custom weight: 105 + - name: Real-Time Costs + url: cloud_cost_management/setup/real_time_costs + parent: cloud_cost_setup + identifier: cloud_cost_real_time_costs + weight: 106 - name: Datadog Costs url: cloud_cost_management/datadog_costs parent: cloud_cost @@ -3688,6 +3693,11 @@ menu: parent: cloud_cost_tags identifier: cloud_cost_tag_pipelines weight: 302 + - name: Multisource Querying + url: cloud_cost_management/multisource_querying + parent: cloud_cost_tags + identifier: cloud_cost_multisource_querying + weight: 303 - name: Allocation url: cloud_cost_management/allocation parent: cloud_cost @@ -3734,7 +3744,7 @@ menu: identifier: cloud_cost_explorer weight: 501 - name: Scheduled Cost Reports - url: /cloud_cost_management/reports/scheduled_reports + url: /cloud_cost_management/reporting/scheduled_reports parent: cloud_cost_reporting identifier: cloud_cost_scheduled_reports weight: 502 @@ -3757,40 +3767,32 @@ menu: url: cloud_cost_management/planning parent: cloud_cost identifier: cloud_cost_planning - weight: 5 + weight: 6 - name: Budgets url: cloud_cost_management/planning/budgets parent: cloud_cost_planning identifier: cloud_cost_planning_budgets - weight: 501 + weight: 601 - name: Commitment Programs url: cloud_cost_management/planning/commitment_programs parent: cloud_cost_planning identifier: cloud_cost_planning_commitment_programs - weight: 502 - - - name: Multisource Querying - url: cloud_cost_management/multisource_querying + weight: 602 + - name: Optimization + url: cloud_cost_management/optimization parent: cloud_cost - identifier: cloud_cost_multisource_querying + identifier: cloud_cost_optimization weight: 7 - - name: Recommendations url: cloud_cost_management/recommendations - parent: cloud_cost + parent: cloud_cost_optimization identifier: cloud_cost_recommendations - weight: 9 + weight: 401 - name: Custom Recommendations url: cloud_cost_management/recommendations/custom_recommendations parent: cloud_cost_recommendations identifier: cloud_cost_custom_recommendations - weight: 901 - - - name: Real-Time Costs - url: cloud_cost_management/real_time_costs - parent: cloud_cost - identifier: cloud_cost_real_time_costs - weight: 12 + weight: 101 - name: APM url: tracing/ pre: apm diff --git a/content/en/cloud_cost_management/reports/_index.md b/content/en/cloud_cost_management/reports/_index.md index ed90f1b73c363..157acebb0d6d2 100644 --- a/content/en/cloud_cost_management/reports/_index.md +++ b/content/en/cloud_cost_management/reports/_index.md @@ -3,7 +3,7 @@ title: Reports private: true description: Track your organization spending with Cloud Cost Management Reports. further_reading: -- link: "/cloud_cost_management/reports/scheduled_reports" +- link: "/cloud_cost_management/reporting/scheduled_reports" tag: "Documentation" text: "Scheduled cost reports" - link: "/cloud_cost_management/" @@ -105,5 +105,5 @@ After you've created and customized your report, you can save and share it from [8]: /cloud_cost_management/setup/azure/#cost-types [9]: /cloud_cost_management/setup/google_cloud/#cost-types [10]: /cloud_cost_management/setup/custom/#cost-metric-types -[11]: /cloud_cost_management/reports/scheduled_reports +[11]: /cloud_cost_management/reporting/scheduled_reports [12]: /cloud_cost_management/oracle/ diff --git a/content/en/cloud_cost_management/reports/scheduled_reports.md b/content/en/cloud_cost_management/reports/scheduled_reports.md index 229af6ac85551..33d277791a1a5 100644 --- a/content/en/cloud_cost_management/reports/scheduled_reports.md +++ b/content/en/cloud_cost_management/reports/scheduled_reports.md @@ -71,6 +71,6 @@ After a report is created, you can subscribe, unsubscribe, edit schedules, and d {{< partial name="whats-next/whats-next.html" >}} [1]: https://app.datadoghq.com/cost/analyze/reports -[2]: /cloud_cost_management/reports +[2]: /cloud_cost_management/reporting [3]: /integrations/slack/?tab=datadogforslack [4]: /account_management/org_settings/domain_allowlist/ \ No newline at end of file diff --git a/content/en/cloud_cost_management/tags/tag_explorer.md b/content/en/cloud_cost_management/tags/tag_explorer.md index 2acbefd9bc9a4..7236338b326e7 100644 --- a/content/en/cloud_cost_management/tags/tag_explorer.md +++ b/content/en/cloud_cost_management/tags/tag_explorer.md @@ -168,5 +168,5 @@ You can choose preferred tags from any of your existing cost data tags, includin [5]: /cloud_cost_management/datadog_costs [6]: /cloud_cost_management/setup/saas_costs [7]: https://app.datadoghq.com/cost/explorer -[8]: /cloud_cost_management/reports +[8]: /cloud_cost_management/reporting [9]: /cloud_cost_management/allocation/custom_allocation_rules From 847ccc3984939a81993abe6d8929663aa9996bcf Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Tue, 7 Oct 2025 13:59:37 -0700 Subject: [PATCH 18/22] move things around --- config/_default/menus/main.en.yaml | 12 ++++++------ .../cloud_cost_management/{ => reports}/anomalies.md | 0 .../{monitors/_index.md => reports/monitors.md} | 0 .../{ => setup}/real_time_costs.md | 0 4 files changed, 6 insertions(+), 6 deletions(-) rename content/en/cloud_cost_management/{ => reports}/anomalies.md (100%) rename content/en/cloud_cost_management/{monitors/_index.md => reports/monitors.md} (100%) rename content/en/cloud_cost_management/{ => setup}/real_time_costs.md (100%) diff --git a/config/_default/menus/main.en.yaml b/config/_default/menus/main.en.yaml index e6a7701350716..66bcb9d52191b 100644 --- a/config/_default/menus/main.en.yaml +++ b/config/_default/menus/main.en.yaml @@ -3734,32 +3734,32 @@ menu: identifier: cloud_cost_custom_allocation_rules weight: 403 - name: Reporting - url: /cloud_cost_management/reporting + url: cloud_cost_management/reporting parent: cloud_cost identifier: cloud_cost_reporting weight: 5 - name: Explorer - url: /cloud_cost_management/reporting/explorer + url: cloud_cost_management/reporting/explorer parent: cloud_cost_reporting identifier: cloud_cost_explorer weight: 501 - name: Scheduled Cost Reports - url: /cloud_cost_management/reporting/scheduled_reports + url: cloud_cost_management/reporting/scheduled_reports parent: cloud_cost_reporting identifier: cloud_cost_scheduled_reports weight: 502 - name: Reports - url: /cloud_cost_management/reporting/reports + url: cloud_cost_management/reporting/reports parent: cloud_cost_reporting identifier: cloud_cost_sreports weight: 503 - name: Monitors - url: /cloud_cost_management/reporting/monitors + url: cloud_cost_management/reporting/monitors parent: cloud_cost identifier: cloud_cost_monitors weight: 504 - name: Anomalies - url: /cloud_cost_management/reporting/anomalies + url: cloud_cost_management/reporting/anomalies parent: cloud_cost identifier: cloud_cost_anomalies weight: 505 diff --git a/content/en/cloud_cost_management/anomalies.md b/content/en/cloud_cost_management/reports/anomalies.md similarity index 100% rename from content/en/cloud_cost_management/anomalies.md rename to content/en/cloud_cost_management/reports/anomalies.md diff --git a/content/en/cloud_cost_management/monitors/_index.md b/content/en/cloud_cost_management/reports/monitors.md similarity index 100% rename from content/en/cloud_cost_management/monitors/_index.md rename to content/en/cloud_cost_management/reports/monitors.md diff --git a/content/en/cloud_cost_management/real_time_costs.md b/content/en/cloud_cost_management/setup/real_time_costs.md similarity index 100% rename from content/en/cloud_cost_management/real_time_costs.md rename to content/en/cloud_cost_management/setup/real_time_costs.md From 0abf5d8a53a99e79a57c1d55f26051db13cf53f9 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Tue, 7 Oct 2025 14:38:51 -0700 Subject: [PATCH 19/22] anomalies and monitors under reporting --- config/_default/menus/main.en.yaml | 6 +++--- .../plan_and_usage/cost_details.md | 2 +- .../datadog_costs/_index.md | 2 +- .../en/cloud_cost_management/planning/budgets.md | 2 +- .../en/cloud_cost_management/reporting/_index.md | 16 ++++++++++++++++ .../{reports => reporting}/anomalies.md | 2 +- .../_index.md => reporting/explorer.md} | 2 +- .../{reports => reporting}/monitors.md | 4 +++- .../{reports/_index.md => reporting/reports.md} | 2 ++ .../{reports => reporting}/scheduled_reports.md | 2 ++ 10 files changed, 31 insertions(+), 9 deletions(-) create mode 100644 content/en/cloud_cost_management/reporting/_index.md rename content/en/cloud_cost_management/{reports => reporting}/anomalies.md (99%) rename content/en/cloud_cost_management/{multisource_querying/_index.md => reporting/explorer.md} (99%) rename content/en/cloud_cost_management/{reports => reporting}/monitors.md (93%) rename content/en/cloud_cost_management/{reports/_index.md => reporting/reports.md} (99%) rename content/en/cloud_cost_management/{reports => reporting}/scheduled_reports.md (98%) diff --git a/config/_default/menus/main.en.yaml b/config/_default/menus/main.en.yaml index 66bcb9d52191b..d803d181e1442 100644 --- a/config/_default/menus/main.en.yaml +++ b/config/_default/menus/main.en.yaml @@ -3751,16 +3751,16 @@ menu: - name: Reports url: cloud_cost_management/reporting/reports parent: cloud_cost_reporting - identifier: cloud_cost_sreports + identifier: cloud_cost_reports weight: 503 - name: Monitors url: cloud_cost_management/reporting/monitors - parent: cloud_cost + parent: cloud_cost_reporting identifier: cloud_cost_monitors weight: 504 - name: Anomalies url: cloud_cost_management/reporting/anomalies - parent: cloud_cost + parent: cloud_cost_reporting identifier: cloud_cost_anomalies weight: 505 - name: Planning diff --git a/content/en/account_management/plan_and_usage/cost_details.md b/content/en/account_management/plan_and_usage/cost_details.md index 5ede06db752bb..0d9b096d48bba 100644 --- a/content/en/account_management/plan_and_usage/cost_details.md +++ b/content/en/account_management/plan_and_usage/cost_details.md @@ -160,5 +160,5 @@ Products billed by the sum of usage throughout the month include indexed logs an [4]: /api/latest/usage-metering/#get-historical-cost-across-your-account [5]: /account_management/plan_and_usage/cost_details/#cost-summary [6]: /api/latest/usage-metering/#get-projected-cost-across-your-account -[7]: /cloud_cost_management/monitors/?tab=costmetricbased +[7]: /cloud_cost_management/reporting/monitors/?tab=costmetricbased [8]: /cloud_cost_management/datadog_costs/ diff --git a/content/en/cloud_cost_management/datadog_costs/_index.md b/content/en/cloud_cost_management/datadog_costs/_index.md index d3fb2ccab3be1..fb3b2f47a4d4d 100644 --- a/content/en/cloud_cost_management/datadog_costs/_index.md +++ b/content/en/cloud_cost_management/datadog_costs/_index.md @@ -92,7 +92,7 @@ You can use out-of-the-box tags to break down and allocate your Datadog cost dat {{< partial name="whats-next/whats-next.html" >}} -[1]: /cloud_cost_management/monitors +[1]: /cloud_cost_management/reporting/monitors [2]: /cloud_cost_management/setup/saas_costs [3]: /cloud_cost_management/ [4]: /account_management/plan_and_usage/cost_details/ diff --git a/content/en/cloud_cost_management/planning/budgets.md b/content/en/cloud_cost_management/planning/budgets.md index ddc6c69eb275b..3af70c94bc4e2 100644 --- a/content/en/cloud_cost_management/planning/budgets.md +++ b/content/en/cloud_cost_management/planning/budgets.md @@ -132,4 +132,4 @@ Learn how to [create a budget-based monitor][2]. {{< partial name="whats-next/whats-next.html" >}} [1]: https://app.datadoghq.com/cost/plan/budgets -[2]: /cloud_cost_management/monitors/ \ No newline at end of file +[2]: /cloud_cost_management/reporting/monitors/ \ No newline at end of file diff --git a/content/en/cloud_cost_management/reporting/_index.md b/content/en/cloud_cost_management/reporting/_index.md new file mode 100644 index 0000000000000..5052fb7e71b2b --- /dev/null +++ b/content/en/cloud_cost_management/reporting/_index.md @@ -0,0 +1,16 @@ +--- +title: Reporting +description: +further_reading: +- link: "/cloud_cost_management/reporting/scheduled_reports" + tag: "Documentation" + text: "Scheduled cost reports" +- link: "/cloud_cost_management/" + tag: "Documentation" + text: "Learn about Cloud Cost Management" +--- + + +## Further reading + +{{< partial name="whats-next/whats-next.html" >}} diff --git a/content/en/cloud_cost_management/reports/anomalies.md b/content/en/cloud_cost_management/reporting/anomalies.md similarity index 99% rename from content/en/cloud_cost_management/reports/anomalies.md rename to content/en/cloud_cost_management/reporting/anomalies.md index 026e69018035a..3c9de4cfc1fc1 100644 --- a/content/en/cloud_cost_management/reports/anomalies.md +++ b/content/en/cloud_cost_management/reporting/anomalies.md @@ -4,7 +4,7 @@ further_reading: - link: "/cloud_cost_management/" tag: "Documentation" text: "Learn about Cloud Cost Management" -- link: "/cloud_cost_management/monitors" +- link: "/cloud_cost_management/reporting/monitors" tag: "Monitors" text: "Create Cost Monitors" --- diff --git a/content/en/cloud_cost_management/multisource_querying/_index.md b/content/en/cloud_cost_management/reporting/explorer.md similarity index 99% rename from content/en/cloud_cost_management/multisource_querying/_index.md rename to content/en/cloud_cost_management/reporting/explorer.md index f7ead05400ed8..2f5e81711cce7 100644 --- a/content/en/cloud_cost_management/multisource_querying/_index.md +++ b/content/en/cloud_cost_management/reporting/explorer.md @@ -121,7 +121,7 @@ Cloud Cost Management retrieves the billing currency from each cloud provider's [6]: https://app.datadoghq.com/cost/explorer [7]: /dashboards [8]: /notebooks -[9]: /cloud_cost_management/monitors +[9]: /cloud_cost_management/reporting/monitors [10]: /cloud_cost_management [11]: https://app.datadoghq.com/dashboard/lists [12]: https://focus.finops.org/#obtain diff --git a/content/en/cloud_cost_management/reports/monitors.md b/content/en/cloud_cost_management/reporting/monitors.md similarity index 93% rename from content/en/cloud_cost_management/reports/monitors.md rename to content/en/cloud_cost_management/reporting/monitors.md index 55606b3bc1d7d..271af8bc64f6a 100644 --- a/content/en/cloud_cost_management/reports/monitors.md +++ b/content/en/cloud_cost_management/reporting/monitors.md @@ -1,6 +1,8 @@ --- -title: Cloud Cost Monitor +title: Monitors description: Learn how to create a monitor with Cloud Cost data. +aliases: +- /cloud_cost_management/monitors further_reading: - link: "https://www.datadoghq.com/blog/ccm-cost-monitors/" tag: "Blog" diff --git a/content/en/cloud_cost_management/reports/_index.md b/content/en/cloud_cost_management/reporting/reports.md similarity index 99% rename from content/en/cloud_cost_management/reports/_index.md rename to content/en/cloud_cost_management/reporting/reports.md index 157acebb0d6d2..113fcd799cb38 100644 --- a/content/en/cloud_cost_management/reports/_index.md +++ b/content/en/cloud_cost_management/reporting/reports.md @@ -1,6 +1,8 @@ --- title: Reports private: true +aliases: +- /cloud_cost_management/reports description: Track your organization spending with Cloud Cost Management Reports. further_reading: - link: "/cloud_cost_management/reporting/scheduled_reports" diff --git a/content/en/cloud_cost_management/reports/scheduled_reports.md b/content/en/cloud_cost_management/reporting/scheduled_reports.md similarity index 98% rename from content/en/cloud_cost_management/reports/scheduled_reports.md rename to content/en/cloud_cost_management/reporting/scheduled_reports.md index 33d277791a1a5..f71332348214d 100644 --- a/content/en/cloud_cost_management/reports/scheduled_reports.md +++ b/content/en/cloud_cost_management/reporting/scheduled_reports.md @@ -1,5 +1,7 @@ --- title: Scheduled Cost Reports +aliases: +- /cloud_cost_management/scheduled_reports further_reading: - link: "/cloud_cost_management/" tag: "Documentation" From 18951f4a51e5eb1c34e588efaf5dad317d49295e Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Tue, 7 Oct 2025 14:39:44 -0700 Subject: [PATCH 20/22] rename multisource querying to explorer --- content/en/cloud_cost_management/reporting/explorer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/en/cloud_cost_management/reporting/explorer.md b/content/en/cloud_cost_management/reporting/explorer.md index 2f5e81711cce7..660d2aeff2ea2 100644 --- a/content/en/cloud_cost_management/reporting/explorer.md +++ b/content/en/cloud_cost_management/reporting/explorer.md @@ -1,5 +1,5 @@ --- -title: Multisource Querying +title: Cloud Cost Explorer is_beta: true description: Learn how to use Multisource Querying to query costs across multiple providers in Cloud Cost Management. further_reading: From c518e46ecd2b35ddd693e8a694c6b6c2028f0a66 Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Tue, 7 Oct 2025 14:40:52 -0700 Subject: [PATCH 21/22] remove multisource querying from tags --- config/_default/menus/main.en.yaml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/config/_default/menus/main.en.yaml b/config/_default/menus/main.en.yaml index d803d181e1442..58b7d9e2be096 100644 --- a/config/_default/menus/main.en.yaml +++ b/config/_default/menus/main.en.yaml @@ -3693,11 +3693,6 @@ menu: parent: cloud_cost_tags identifier: cloud_cost_tag_pipelines weight: 302 - - name: Multisource Querying - url: cloud_cost_management/multisource_querying - parent: cloud_cost_tags - identifier: cloud_cost_multisource_querying - weight: 303 - name: Allocation url: cloud_cost_management/allocation parent: cloud_cost From f036e8ebe4e085da48aff7591cca5922204ce27f Mon Sep 17 00:00:00 2001 From: Rosa Trieu Date: Tue, 7 Oct 2025 14:44:32 -0700 Subject: [PATCH 22/22] add optimizing landing page --- .../en/cloud_cost_management/optimization/_index.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 content/en/cloud_cost_management/optimization/_index.md diff --git a/content/en/cloud_cost_management/optimization/_index.md b/content/en/cloud_cost_management/optimization/_index.md new file mode 100644 index 0000000000000..ad3b44a7dc5f0 --- /dev/null +++ b/content/en/cloud_cost_management/optimization/_index.md @@ -0,0 +1,13 @@ +--- +title: Optimization +description: +further_reading: +- link: "/cloud_cost_management/" + tag: "Documentation" + text: "Learn about Cloud Cost Management" +--- + + +## Further reading + +{{< partial name="whats-next/whats-next.html" >}}