diff --git a/docs-mslearn/.markdownlint.json b/docs-mslearn/.markdownlint.json
new file mode 100644
index 000000000..bcbb405f1
--- /dev/null
+++ b/docs-mslearn/.markdownlint.json
@@ -0,0 +1,5 @@
+{
+ "line-length": false,
+ "no-inline-html": false,
+ "single-h1": false
+}
diff --git a/docs-mslearn/best-practices/library.md b/docs-mslearn/best-practices/library.md
index 8e2905ebf..a7c8933c2 100644
--- a/docs-mslearn/best-practices/library.md
+++ b/docs-mslearn/best-practices/library.md
@@ -3,7 +3,7 @@ title: FinOps best practices library
description: Discover essential FinOps best practices to optimize cost efficiency and governance for your Azure resources.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: arclares
#customer intent: As a FinOps user, I want to understand what FinOps best practices I should use with Microsoft Cloud services.
---
-
# FinOps best practices library
The FinOps best practices library is a collection of essential proven practices to manage and optimize cost, usage, and carbon efficiency across your Microsoft Cloud environment. Guidance is organized using the service category. Use the following categories to explore FinOps practices for different services.
@@ -31,13 +30,17 @@ The FinOps best practices library is a collection of essential proven practices
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.BestPractices/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/best-practices/web.md b/docs-mslearn/best-practices/web.md
index 210ee4ae5..ba6f4c4c8 100644
--- a/docs-mslearn/best-practices/web.md
+++ b/docs-mslearn/best-practices/web.md
@@ -3,7 +3,7 @@ title: FinOps best practices for Web
description: This article outlines a collection of proven FinOps practices for web services, focusing on cost optimization, efficiency improvements, and resource insights.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: arclares
#customer intent: As a FinOps user, I want to understand what FinOps best practices I should use with web services.
---
-
# FinOps best practices for Web
This article outlines a collection of proven FinOps practices for web services. It provides strategies for optimizing costs, improving efficiency, and using Azure Resource Graph (ARG) queries to gain insights into your web resources. By following these practices, you can ensure that your web services are cost-effective and aligned with your organization's financial goals.
@@ -87,13 +86,17 @@ resources
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.BestPractices/featureName/Web)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/conduct-iteration.md b/docs-mslearn/conduct-iteration.md
index 6d0281e7e..0b87e223a 100644
--- a/docs-mslearn/conduct-iteration.md
+++ b/docs-mslearn/conduct-iteration.md
@@ -3,7 +3,7 @@ title: Tutorial - Conduct an iteration
description: This tutorial helps you learn how to take an iterative approach to FinOps adoption.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: tutorial
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,18 +11,20 @@ ms.reviewer: kedelaro
# customer intent: As a finops practitioner, I want to adopt FinOps in my organization so that we can create a plan to adopt.
---
-
-
# Tutorial: Conduct a FinOps iteration
In this tutorial, you learn that FinOps is an iterative, hierarchical process that requires cross-functional collaboration across business, technology, and finance teams. When you consider the 18 different capabilities, each with their own unique nuances, adopting FinOps can seem like a daunting task. However, in this tutorial, you learn how to take an iterative approach to FinOps adoption where you:
+
+
> [!div class="checklist"]
> - Define the right scope for your next FinOps investments.
> - Identify measurable goals to achieve over the coming weeks or months.
> - Select the right actions to get to the next maturity level.
> - Review progress at the end of the iteration and identify goals for the next.
+
+
Use this tutorial as a guide when you start each iteration of the FinOps lifecycle.
@@ -41,42 +43,42 @@ Before you start your next iteration, it's important to define the bounds for wh
Use the following information as a guide to select the right FinOps capabilities based on your role, experience, and current priorities. It isn't an all-inclusive list of considerations. We encourage you to select all from one group or pick and choose across groups based on your current needs. The following order presented is a suggestion, not a requirement. It's merely an aid to help you get started.
1. If your team is new to FinOps with little to moderate experience with cost management and optimization, we recommend starting with the basics:
- 1. Reporting and analytics
- 2. Forecasting
- 3. Budgeting
- 4. Workload optimization
- 5. Anomaly management
+ 1. Reporting and analytics
+ 2. Forecasting
+ 3. Budgeting
+ 4. Workload optimization
+ 5. Anomaly management
2. If you're building a new FinOps team or interested in driving awareness and adoption of FinOps, start with:
- 1. FinOps practice operations
- 2. Onboarding workloads
- 3. FinOps assessment
- 4. FinOps education and enablement
- 5. Forecasting
+ 1. FinOps practice operations
+ 2. Onboarding workloads
+ 3. FinOps assessment
+ 4. FinOps education and enablement
+ 5. Forecasting
3. If your team knows Microsoft Cloud's FinOps tools well and needs to manage costs in a large company where ownership is sometimes shared, consider the following items:
- 1. Allocation
- 2. Invoicing and chargeback
- 3. Rate optimization
+ 1. Allocation
+ 2. Invoicing and chargeback
+ 3. Rate optimization
4. If your team is experienced with Microsoft Cloud's FinOps tools and needs to manage costs in a large organization with distributed and shared ownership, consider the following items:
- 1. Allocation
- 2. Invoicing and chargeback
- 3. Rate optimization
+ 1. Allocation
+ 2. Invoicing and chargeback
+ 3. Rate optimization
5. If your team needs to build more advanced reporting, like managing costs across clouds or merging with business data, consider:
- 1. Tools and services
- 2. Data ingestion
- 3. Allocation
- 4. Reporting and analytics
+ 1. Tools and services
+ 2. Data ingestion
+ 3. Allocation
+ 4. Reporting and analytics
6. If your team has a solid understanding of the basics and wants to focus on deeper optimization through advanced automation, consider:
- 1. Architecting for the cloud
- 2. Workload optimization
- 3. Rate optimization
- 4. Licensing and SaaS
- 5. Cloud sustainability
- 6. Policy and governance
+ 1. Architecting for the cloud
+ 2. Workload optimization
+ 3. Rate optimization
+ 4. Licensing and SaaS
+ 5. Cloud sustainability
+ 6. Policy and governance
7. If your team has a solid understanding of the basics and needs to map cloud investments back to business value, consider:
- 1. Unit economics
- 2. Allocation
- 3. Budgeting
- 4. Planning and estimating
+ 1. Unit economics
+ 2. Allocation
+ 3. Budgeting
+ 4. Planning and estimating
Note the capabilities you select for future use.
@@ -86,6 +88,7 @@ Note the capabilities you select for future use.
Next, you identify specific, measurable goals based on your current experience with the capabilities you selected. Consider the following points when you identify goals for this iteration:
+
- **Knowledge** – How much do you know about the capability?
- If you're new to the capability, focus on learning the purpose, intent, and how to implement the basics. Knowledge is often the first step of any capability.
- **Process** – Is a repeatable process defined, documented, and verified?
@@ -95,15 +98,17 @@ Next, you identify specific, measurable goals based on your current experience w
- If you know the basics, but didn't identify success metrics, they're a must-have for your next step. Focus on identifying metrics that are relevant for your business and help you make trade-off decisions for this capability. To maximize efficiency, build these metrics and decisions into your process.
- If you have metrics identified, focus on getting a baseline for where you're at today. Seek to automate wherever possible, which will save you time in the future. Use tools like Power BI to generate reports you can share with stakeholders and celebrate your collective successes.
- **Adoption** – How many teams adopted the defined process and metrics?
+
- If you have a process that was only tested on a small scale, share it with others. Experiment with the process and incorporate a feedback loop for continuous improvement.
- - As your process matures, you notice less input from the feedback loop. Less input is a sign that your process is ready to be scaled out more and potentially be established as an official governance policy for new teams. If you're in a large organization that doesn't have a dedicated FinOps team, you might want to consider establishing one to drive this effort.
+ - As your process matures, you notice less input from the feedback loop. Less input is a sign that your process is ready to be scaled out more and potentially be established as an official governance policy for new teams. If you're in a large organization that doesn't have a dedicated FinOps team, you might want to consider establishing one to drive this effort.
- > [!IMPORTANT]
- > _Before establishing a dedicated FinOps team, consider how much time each individual team is spending on FinOps efforts, what the potential business value is with more savings and efficiency (or lost opportunity), and how much a dedicated team can accelerate those goals. A dedicated team is not for everyone. Ensure you have the right return on investment._
+ > [!IMPORTANT]
+ > _Before establishing a dedicated FinOps team, consider how much time each individual team is spending on FinOps efforts, what the potential business value is with more savings and efficiency (or lost opportunity), and how much a dedicated team can accelerate those goals. A dedicated team is not for everyone. Ensure you have the right return on investment._
- **Automation** – Has the capability been automated to minimize manual effort?
- If you're developing a process, we recommend identifying automation opportunities as you go. You might identify low-hanging fruit that could lead to large efficiency gains at scale or even find partner teams willing to contribute time in those areas and share resources.
- As you experiment with your process, keep your list of automation opportunities updated and share them with others as part of the feedback loop. Prioritize automating success metrics and look for opportunities to implement the most repeated tasks for maximum efficiency.
+
In general, we recommend short iterations with targeted goals. Select one to three highly related goals listed previously. Avoid long iterations that cover a broad spectrum of work because they're harder to track, measure, and ultimately deliver.
@@ -129,13 +134,17 @@ After you close out on the iteration, remember that this tutorial can help guide
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.General/featureName/ConductAnIteration)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
@@ -143,7 +152,9 @@ If you're looking for something specific, vote for an existing or create a new i
Review and refine the FinOps capabilities that are most critical to you:
+
> [!div class="nextstepaction"]
> [FinOps capabilities](./framework/capabilities.md)
+
diff --git a/docs-mslearn/fabric/create-fabric-workspace-finops.md b/docs-mslearn/fabric/create-fabric-workspace-finops.md
index 88b98642d..0a13fbe19 100644
--- a/docs-mslearn/fabric/create-fabric-workspace-finops.md
+++ b/docs-mslearn/fabric/create-fabric-workspace-finops.md
@@ -3,7 +3,7 @@ title: Create a Fabric workspace for FinOps
description: This article guides you through creating and configuring a Microsoft Fabric workspace for FinOps. When completed, you can use Power BI to build reports.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-workspaces
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what FinOps best practices I should use with web services.
---
-
# Create a Fabric workspace for FinOps
This article walks you through creating and configuring a [Microsoft Fabric](/fabric/get-started/microsoft-fabric-overview) workspace for FinOps. It provides a step-by-step guide to create and configure Azure Data Lake storage (ADLS) setup, data export, workspace creation, and data ingestion. When completed, you can use Power BI to build reports.
@@ -22,7 +21,7 @@ Before you begin, you must have:
- A paid Azure subscription with cost and usage information
- Owner of a storage account or have access to grant permissions to the storage account
-- You must have the *Storage Blob Data Contributor* role when you use *Organizational account* authentication. If you don't have the required permission, you can use other authentication types like *Account key*. Otherwise, you get an `Invalid credentials` error.
+- You must have the _Storage Blob Data Contributor_ role when you use _Organizational account_ authentication. If you don't have the required permission, you can use other authentication types like _Account key_. Otherwise, you get an `Invalid credentials` error.
To complete this walkthrough, you create the following resources that incur costs:
@@ -39,13 +38,13 @@ Microsoft Fabric is optimized to work with storage accounts with hierarchical na
- Option 1: To create a Data Lake storage account, see [Create a storage account for Azure Data Lake Storage Gen2](/azure/storage/blobs/create-data-lake-storage-account).
- Option 2: To enable hierarchical namespace on an existing storage account, see [Upgrade Azure Blob Storage with Azure Data Lake Storage Gen2 capabilities](/azure/storage/blobs/upgrade-to-data-lake-storage-gen2-how-to?tabs=azure-portal).
->[!TIP]
->If you deployed [FinOps hubs](../toolkit/hubs/finops-hubs-overview.md), you can use the storage account created as part of the hub resource group.
+> [!TIP]
+> If you deployed [FinOps hubs](../toolkit/hubs/finops-hubs-overview.md), you can use the storage account created as part of the hub resource group.
For the following example, we used the following Data Lake Gen 2 storage account. You use your own storage account and subscription details.
-- Subscription = *Contoso subscription*.
-- Storage account = *Contoso-storage-account*.
+- Subscription = _Contoso subscription_.
+- Storage account = _Contoso-storage-account_.
:::image type="content" source="./media/create-fabric-workspace-finops/storage-account-configuration-gen-2.png" border="true" alt-text="Screenshot showing converting an existing storage account into Data Lake storage." lightbox="./media/create-fabric-workspace-finops/storage-account-configuration-gen-2.png" :::
@@ -66,14 +65,14 @@ Here are the high-level steps to create an export:
3. Select **+ Create**
4. On the Basics tab, select the template = **Cost and usage (FOCUS)**
:::image type="content" source="./media/create-fabric-workspace-finops/exports-cost-and-usage-focus.png" border="true" alt-text="Screenshot showing creating a new FOCUS export dataset." lightbox="./media/create-fabric-workspace-finops/exports-cost-and-usage-focus.png" :::
-5. On the Datasets tab, fill in **Export prefix** to ensure you have a unique name for the export. For example, *june2024focus*.
+5. On the Datasets tab, fill in **Export prefix** to ensure you have a unique name for the export. For example, _june2024focus_.
6. On the Destination tab, select:
- Storage type = Azure blob storage
- Destination and storage = **Use existing**
- - Subscription = *Contoso subscription*
- - Storage account = *Contoso-storage-account*
- - Container = *msexports*
- - Directory = focuscost/<*scope-id*>
+ - Subscription = _Contoso subscription_
+ - Storage account = _Contoso-storage-account_
+ - Container = _msexports_
+ - Directory = focuscost/<_scope-id_>
- Compression type = **None**.
- Overwrite data = **Enabled**
7. On the Review + Create tab, select **Create**.
@@ -81,7 +80,7 @@ Here are the high-level steps to create an export:
Ensure that your export completed and that the file is available before moving to the next step.
->[!IMPORTANT]
+> [!IMPORTANT]
> Cost Management exports utilize managed identity. To create an export, you must be an Owner of the storage account or have access to grant permissions to the storage account. To see all required permissions, see [Prerequisites](/azure/cost-management-billing/costs/tutorial-improved-exports#prerequisites).
If you want to automate export creation, consider using the [New-FinOpsCostExport command](../toolkit/powershell/cost/New-FinOpsCostExport.md) in the FinOps toolkit PowerShell module.
@@ -111,7 +110,7 @@ Here's an example screenshot showing a new Fabric workspace getting created.
## Create a lakehouse
-Microsoft Fabric [lakehouses](/fabric/data-engineering/lakehouse-overview) are data architectures that allow organizations to store and manage structured and unstructured data in a single location. They use various tools and frameworks to process and analyze that data. These tools and frameworks can include SQL-based queries and analytics, machine learning, and other advanced analytics techniques.
+Microsoft Fabric [lakehouses](/fabric/data-engineering/lakehouse-overview) are data architectures that allow organizations to store and manage structured and unstructured data in a single location. They use various tools and frameworks to process and analyze that data. These tools and frameworks can include SQL-based queries and analytics, machine learning, and other advanced analytics techniques.
You can either create a new lakehouse or use an existing one. Lakehouses are interoperable so we would generally recommend using a single lakehouse for all your FinOps datasets. A single lakehouse keeps related information together to share data models, pipelines, and security measures.
@@ -120,9 +119,9 @@ To create a new lakehouse in the Fabric workspace of your choice:
1. Sign in to the Fabric app using your [Fabric free account](https://www.microsoft.com/microsoft-fabric/getting-started) or [Microsoft Power BI](https://app.powerbi.com) account.
1. Select the workspace where you want to create the lakehouse.
1. Near the top left of the page, select **+ New** and then select **More options**.
- :::image type="content" source="./media/create-fabric-workspace-finops/fabric-new-more-options.png" border="true" alt-text="Screenshot showing navigation to More options." lightbox="./media/create-fabric-workspace-finops/fabric-new-more-options.png" :::
+ :::image type="content" source="./media/create-fabric-workspace-finops/fabric-new-more-options.png" border="true" alt-text="Screenshot showing navigation to More options." lightbox="./media/create-fabric-workspace-finops/fabric-new-more-options.png" :::
1. Select **Lakehouse**
- :::image type="content" source="./media/create-fabric-workspace-finops/fabric-new-lakehouse.png" border="true" alt-text="Screenshot showing the Lakehouse option." lightbox="./media/create-fabric-workspace-finops/fabric-new-lakehouse.png" :::
+ :::image type="content" source="./media/create-fabric-workspace-finops/fabric-new-lakehouse.png" border="true" alt-text="Screenshot showing the Lakehouse option." lightbox="./media/create-fabric-workspace-finops/fabric-new-lakehouse.png" :::
For more information, see [Create a lakehouse](/fabric/data-engineering/create-lakehouse).
@@ -137,13 +136,13 @@ To create a shortcut, see [Create an Azure Data Lake Storage Gen2 shortcut](/fab
1. Sign in to the Fabric app using your [Fabric free account](https://www.microsoft.com/microsoft-fabric/getting-started) or [Microsoft Power BI](https://app.powerbi.com) account.
1. Select the lakehouse of your choice.
1. Select the ellipsis (**...**) next to **Files**.
- You add CSV and Parquet files under **Files**. Delta tables get added under **Tables**.
+ You add CSV and Parquet files under **Files**. Delta tables get added under **Tables**.
1. Select **New shortcut**.
- :::image type="content" source="./media/create-fabric-workspace-finops/fabric-new-shortcut.png" border="true" alt-text="Screenshot showing creating a new shortcut in a lakehouse under the Files folder." lightbox="./media/create-fabric-workspace-finops/fabric-new-shortcut.png" :::
+ :::image type="content" source="./media/create-fabric-workspace-finops/fabric-new-shortcut.png" border="true" alt-text="Screenshot showing creating a new shortcut in a lakehouse under the Files folder." lightbox="./media/create-fabric-workspace-finops/fabric-new-shortcut.png" :::
1. Select **Azure Data Lake Storage Gen 2** and provide the following settings:
- URL = **Data Lake Storage** URL of the Data Lake storage account. See the following note about authentication.
- Connection = **Create a new connection**
- - Connection name = <*Any name of your choice*>
+ - Connection name = <_Any name of your choice_>
- Authentication kind = **Organizational account**
- Sign in when prompted.
@@ -169,13 +168,13 @@ After the shortcut gets created, you can view the FOCUS cost data inside **Files
1. In the lakehouse, find the directory that you created when you set up the export. The Directory is in the **Files** section.
2. Next to the directory, select the ellipsis (**...**), and then select **Load to Tables** > **New table**.
- :::image type="content" source="./media/create-fabric-workspace-finops/load-to-tables-new-table.png" border="true" alt-text="Screenshot showing the New table option." lightbox="./media/create-fabric-workspace-finops/load-to-tables-new-table.png" :::
- 1. Table name = <*Any valid name*>
- 2. File type = `CSV`
- 3. Including subfolders = **Enabled**
- 4. Use header for column names = **Enabled**
- 5. Separator = `,`
- 6. Select **Load**
+ :::image type="content" source="./media/create-fabric-workspace-finops/load-to-tables-new-table.png" border="true" alt-text="Screenshot showing the New table option." lightbox="./media/create-fabric-workspace-finops/load-to-tables-new-table.png" :::
+ 1. Table name = <_Any valid name_>
+ 2. File type = `CSV`
+ 3. Including subfolders = **Enabled**
+ 4. Use header for column names = **Enabled**
+ 5. Separator = `,`
+ 6. Select **Load**
:::image type="content" source="./media/create-fabric-workspace-finops/load-folder-to-new-table.png" border="true" alt-text="Screenshot showing the new table options." lightbox="./media/create-fabric-workspace-finops/load-folder-to-new-table.png" :::
@@ -213,27 +212,27 @@ Use the following Python script in step 3 above to ingest data into Fabric table
# coding: utf-8
# ## Sample Read CSV to Delta Output
-#
+#
# Exports Platform Demo Notebook
# # Export to Delta Parquet
# In[1]:
read_path = '' # input path to your data stream
-export_table = '' # output path for your delta parquet table, ex: "Tables/CostDetails"
+export_table = '' # output path for your delta parquet table, ex: "Tables/CostDetails"
# In[3]:
-df = spark.read.format("csv").option("header", "true").option("inferSchema", "true").option("recursiveFileLookup", "true").load(read_path)
-
-''' Use this for parquet reading
-df = spark.read.format("parquet").option("header", "true").option("inferSchema", "true").option("recursiveFileLookup", "true").load(read_path)
-'''
+df = spark.read.format("csv").option("header", "true").option("inferSchema", "true").option("recursiveFileLookup", "true").load(read_path)
+
+''' Use this for parquet reading
+df = spark.read.format("parquet").option("header", "true").option("inferSchema", "true").option("recursiveFileLookup", "true").load(read_path)
+'''
# In[4]:
-''' Use this if you want to overwrite the schema as well
-df.write.mode("overwrite").format("delta").option("overwriteSchema", "true").save(export_table)
-'''
-df.write.mode("overwrite").format("delta").save(export_table)
+''' Use this if you want to overwrite the schema as well
+df.write.mode("overwrite").format("delta").option("overwriteSchema", "true").save(export_table)
+'''
+df.write.mode("overwrite").format("delta").save(export_table)
```
---
@@ -251,7 +250,7 @@ After the data is ingested into Fabric and tables are ready, you can move on to
1. Select the Power BI symbol at the bottom left.
1. Select the same semantic model to build reports and then use Copilot to generate insights from your ingested data.
->[!NOTE]
+> [!NOTE]
> The Power BI demo uses simulated cost data for illustration purposes.
@@ -260,13 +259,17 @@ After the data is ingested into Fabric and tables are ready, you can move on to
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Workspaces/featureName/Documentation.Create)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/focus/conformance-full-report.md b/docs-mslearn/focus/conformance-full-report.md
index 1502d5978..c28344d84 100644
--- a/docs-mslearn/focus/conformance-full-report.md
+++ b/docs-mslearn/focus/conformance-full-report.md
@@ -3,14 +3,13 @@ title: FOCUS conformance report
description: Comprehensive analysis of the Microsoft Cost Management FOCUS dataset's adherence to FOCUS requirements.
author: flanakin
ms.author: micflan
-ms.date: 06/18/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: micflan
---
-
# FOCUS conformance full report
This document provides a detailed list of all FOCUS 1.2 requirements and indicates the level of support provided by the Microsoft Cost Management FOCUS 1.2-preview dataset. To learn more about FOCUS, refer to the [FOCUS overview](./what-is-focus.md).
@@ -1179,13 +1178,17 @@ Source: [columns/tags.md](https://github.com/FinOps-Open-Cost-and-Usage-Spec/FOC
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.FOCUS/featureName/Conformance.Report)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/focus/conformance-summary.md b/docs-mslearn/focus/conformance-summary.md
index c04f6f000..3019bcee0 100644
--- a/docs-mslearn/focus/conformance-summary.md
+++ b/docs-mslearn/focus/conformance-summary.md
@@ -3,14 +3,13 @@ title: FOCUS conformance summary
description: Summary of FOCUS conformance gaps in the Microsoft Cost Management FOCUS dataset with applicable workarounds.
author: flanakin
ms.author: micflan
-ms.date: 06/18/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: micflan
---
-
# FOCUS conformance summary
This document summarizes the known conformance gaps for the latest FOCUS 1.2-preview dataset in Microsoft Cost Management compared to the FOCUS 1.2 specification. To learn more about FOCUS, refer to the [FOCUS overview](./what-is-focus.md).
@@ -71,13 +70,17 @@ The remaining conformance gaps are summarized in the following sections. For det
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.FOCUS/featureName/Conformance.Summary)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/focus/convert.md b/docs-mslearn/focus/convert.md
index 1f20dc277..70d0ef074 100644
--- a/docs-mslearn/focus/convert.md
+++ b/docs-mslearn/focus/convert.md
@@ -3,7 +3,7 @@ title: Convert cost and usage data to FOCUS
description: This document provides guidance for converting existing Cost Management datasets to the FinOps Open Cost and Usage Specification (FOCUS).
author: flanakin
ms.author: micflan
-ms.date: 06/16/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to convert existing Cost Management datasets to the FinOps Open Cost and Usage Specification (FOCUS).
---
-
# Convert Cost Management data to FOCUS
This document provides guidance for converting Cost Management actual and amortized datasets to the FinOps Open Cost and Usage Specification (FOCUS). This includes mappings for FOCUS 1.0, 1.1, and 1.2-preview specifications. To learn more about FOCUS, refer to the [FOCUS overview](what-is-focus.md).
@@ -116,13 +115,17 @@ If you have feedback about FOCUS, [create an issue in the FOCUS repository](http
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.FOCUS/featureName/Convert)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/focus/mapping.md b/docs-mslearn/focus/mapping.md
index df78fb9a8..4f5543044 100644
--- a/docs-mslearn/focus/mapping.md
+++ b/docs-mslearn/focus/mapping.md
@@ -3,7 +3,7 @@ title: Update reports to use FOCUS columns
description: Learn how to update existing reports from Cost Management actual or amortized datasets to use FOCUS columns.
author: flanakin
ms.author: micflan
-ms.date: 06/16/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to learn how to update existing reports to use the columns defined by the FinOps Open Cost and Usage Specification (FOCUS).
---
-
# Update reports to use FOCUS columns
This document provides guidance for updating existing reports to use the columns defined by the FinOps Open Cost and Usage Specification (FOCUS). To learn more about FOCUS, refer to the [FOCUS overview](what-is-focus.md).
@@ -114,13 +113,17 @@ If you have feedback about FOCUS, [create an issue in the FOCUS repository](http
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.FOCUS/featureName/Mapping)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/focus/metadata.md b/docs-mslearn/focus/metadata.md
index fd568b7a0..59eed5ccf 100644
--- a/docs-mslearn/focus/metadata.md
+++ b/docs-mslearn/focus/metadata.md
@@ -3,14 +3,13 @@ title: FOCUS metadata
description: This article provides general information about the FOCUS dataset including the data generator, schema version, and columns included in the dataset.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: micflan
---
-
# Details about the FOCUS dataset
This document describes what is included in the FOCUS cost and usage details dataset (also called FocusCost). The following details are also available as a JSON file as defined by the FOCUS specification. For more information about FOCUS, see [FOCUS overview](what-is-focus.md).
@@ -19,8 +18,10 @@ This document describes what is included in the FOCUS cost and usage details dat
## FocusCost 1.2-preview
+
> [!div class="nextstepaction"]
> [Download metadata](https://github.com/microsoft/finops-toolkit/releases/latest/download/dataset-metadata.zip)
+
- Data generator: Microsoft
- Schema ID: `1.2-preview`
@@ -143,8 +144,10 @@ Columns include:
## FocusCost 1.0
+
> [!div class="nextstepaction"]
> [Download metadata](https://github.com/microsoft/finops-toolkit/releases/latest/download/dataset-metadata.zip)
+
- Data generator: Microsoft
- Schema ID: `1.0`
@@ -257,8 +260,10 @@ Columns include:
## FocusCost 1.0-preview(v1)
+
> [!div class="nextstepaction"]
> [Download metadata](https://github.com/microsoft/finops-toolkit/releases/latest/download/dataset-metadata.zip)
+
- Data generator: Microsoft
- Schema ID: `1.0-preview(v1)`
@@ -379,13 +384,17 @@ If you have feedback about FOCUS, [create an issue in the FOCUS repository](http
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.FOCUS/featureName/Metadata)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/focus/validate.md b/docs-mslearn/focus/validate.md
index 41076548c..31687e330 100644
--- a/docs-mslearn/focus/validate.md
+++ b/docs-mslearn/focus/validate.md
@@ -3,14 +3,13 @@ title: Validate FOCUS data
description: This article provides reference information that explains how to compare FOCUS data with existing Cost Management datasets.
author: flanakin
ms.author: micflan
-ms.date: 06/16/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: micflan
---
-
# Validate FOCUS data
This document helps you validate FOCUS data by comparing it to actual and amortized cost data from Cost Management. The goal of this article is to help you familiarize yourself with and transition to FOCUS data with confidence. To learn more about FOCUS, refer to the [FOCUS overview](what-is-focus.md).
@@ -106,13 +105,17 @@ If you have feedback about FOCUS, [create an issue in the FOCUS repository](http
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.FOCUS/featureName/Validate)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/focus/what-is-focus.md b/docs-mslearn/focus/what-is-focus.md
index 4aa6f6c56..2a706df2f 100644
--- a/docs-mslearn/focus/what-is-focus.md
+++ b/docs-mslearn/focus/what-is-focus.md
@@ -3,7 +3,7 @@ title: What is FOCUS?
description: Learn about FOCUS, a cloud-agnostic billing data specification that helps optimize cost and usage across cloud, SaaS, and on-premises providers.
author: flanakin
ms.author: micflan
-ms.date: 06/16/2025
+ms.date: 02/24/2026
ms.topic: overview
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what FOCUS is and how it can help me optimize cost and usage across various cloud, SaaS, and on-premises providers.
---
-
# FinOps Open Cost and Usage Specification
Learn about the new billing data specification that helps make it easier to understand and optimize cost and usage across any cloud, SaaS, or on-premises provider.
@@ -197,13 +196,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.FOCUS/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/capabilities.md b/docs-mslearn/framework/capabilities.md
index a3e800ecc..e67d50740 100644
--- a/docs-mslearn/framework/capabilities.md
+++ b/docs-mslearn/framework/capabilities.md
@@ -3,14 +3,13 @@ title: FinOps capabilities
description: Learn about what the fundamental building blocks of the FinOps Framework that enable you to maximize business value through the cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: conceptual
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: kedelaro
---
-
# FinOps capabilities
The FinOps Framework includes capabilities that cover everything you need to perform FinOps tasks and manage a FinOps practice. Capabilities are organized into a set of related domains based on the goals of the capabilities. Each capability defines a functional area of activity and a set of tasks to support your FinOps practice.
@@ -71,13 +70,17 @@ The **Manage the FinOps practice** domain is focused on establishing a clear and
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/finops-framework.md b/docs-mslearn/framework/finops-framework.md
index 8bc4dee1e..4a86ac4de 100644
--- a/docs-mslearn/framework/finops-framework.md
+++ b/docs-mslearn/framework/finops-framework.md
@@ -3,14 +3,13 @@ title: FinOps Framework overview
description: 'Learn about what the FinOps Framework is and how you can use it to accelerate your cost management and optimization goals.'
author: flanakin
ms.author: micflan
-ms.date: 04/25/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: kedelaro
---
-
# FinOps Framework
Learn about what the FinOps Framework is and how you can use it to accelerate your cost management and optimization goals.
@@ -176,13 +175,17 @@ FinOps Foundation offers many resources to help you learn and implement FinOps.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/assessment.md b/docs-mslearn/framework/manage/assessment.md
index 4a926f799..0f4b77b81 100644
--- a/docs-mslearn/framework/manage/assessment.md
+++ b/docs-mslearn/framework/manage/assessment.md
@@ -4,14 +4,13 @@ description: This article helps you understand the FinOps assessment capability
ms.topic: concept-article
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the FinOps assessment capability so that I can implement it in the Microsoft Cloud.
---
-
# FinOps assessment
This article helps you understand the FinOps assessment capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -65,13 +64,17 @@ This capability is a part of the FinOps Framework by the FinOps Foundation, a no
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Manage.Assessment)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/education.md b/docs-mslearn/framework/manage/education.md
index 498d2877f..a2445a871 100644
--- a/docs-mslearn/framework/manage/education.md
+++ b/docs-mslearn/framework/manage/education.md
@@ -3,7 +3,7 @@ title: FinOps education and enablement
description: This article helps you understand the FinOps education and enablement capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: kedelaro
# customer intent: As a FinOps practitioner, I want to understand the FinOps education and enablement capability so that I can implement that in the Microsoft cloud.
---
-
# FinOps education and enablement
This article helps you understand the FinOps education and enablement capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -85,13 +84,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Manage.Education)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/governance.md b/docs-mslearn/framework/manage/governance.md
index 750a82d43..6c12166ce 100644
--- a/docs-mslearn/framework/manage/governance.md
+++ b/docs-mslearn/framework/manage/governance.md
@@ -3,7 +3,7 @@ title: Policy and governance
description: This article helps you understand the policy and governance capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: kedelaro
# customer intent: As a FinOps practitioner, I want to understand the policy and governance capability so that I can implement it in the Microsoft Cloud.
---
-
# Policy and governance
This article helps you understand the policy and governance capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -79,13 +78,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Manage.Governance)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/intersecting-disciplines.md b/docs-mslearn/framework/manage/intersecting-disciplines.md
index 88e8ccf85..34e002ce8 100644
--- a/docs-mslearn/framework/manage/intersecting-disciplines.md
+++ b/docs-mslearn/framework/manage/intersecting-disciplines.md
@@ -3,7 +3,7 @@ title: FinOps and intersecting frameworks
description: This article helps you understand the FinOps and intersecting frameworks capability in the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps practitioner, I want to understand the FinOps and intersecting frameworks capability so that I can implement it in the Microsoft Cloud.
---
-
# FinOps and intersecting frameworks
This article helps you understand the FinOps and intersecting frameworks capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -54,13 +53,17 @@ Implementation of this capability is highly dependent on how your organization a
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Manage.Disciplines)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/invoicing-chargeback.md b/docs-mslearn/framework/manage/invoicing-chargeback.md
index 73707ee87..d22fea279 100644
--- a/docs-mslearn/framework/manage/invoicing-chargeback.md
+++ b/docs-mslearn/framework/manage/invoicing-chargeback.md
@@ -3,7 +3,7 @@ title: Invoicing and chargeback
description: This article helps you understand the invoicing and chargeback capability in the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: micflan
@@ -11,7 +11,6 @@ ms.topic: concept-article
# customer intent: As a FinOps practitioner, I want to understand the invoicing and chargeback capability so that I can implement it in the Microsoft Cloud.
---
-
# Invoicing and chargeback
This article helps you understand the invoicing and chargeback capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -52,7 +51,7 @@ Invoicing and chargeback are all about integrating with your own internal tools.
At this point, you have a basic chargeback model that all stakeholders agreed to. As you move beyond the basics, consider the following points:
-- Think about setting up a one-way synchronization from your budget system to [Cost Management budgets](/azure/cost-management-billing/automate/automate-budget-creation). It allows you to use automated alerts that are based on machine learning predictions.
+- Think about setting up a one-way synchronization from your budget system to [Cost Management budgets](/azure/cost-management-billing/automate/automate-budget-creation). It allows you to use automated alerts that are based on machine learning predictions.
- If you track manual forecasts, consider creating Cost Management budgets for your forecast values as well. It gives you separate tracking and alerting for budgets separate from your forecast.
- Automate your [cost allocation](../understand/allocation.md) strategy through tagging.
- Expand coverage of shared costs and [commitment discounts](../optimize/rates.md) if not already included.
@@ -74,13 +73,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Manage.Invoicing)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/manage-finops.md b/docs-mslearn/framework/manage/manage-finops.md
index 6c8893204..20a4602f9 100644
--- a/docs-mslearn/framework/manage/manage-finops.md
+++ b/docs-mslearn/framework/manage/manage-finops.md
@@ -3,14 +3,13 @@ title: Manage the FinOps practice
description: Learn about the FinOps capabilities that help you establish your FinOps practice and drive organizational accountability.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: conceptual
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: kedelaro
---
-
# Manage the FinOps practice
This article helps you understand the **Manage the FinOps practice** domain within the FinOps Framework and how to implement its capabilities in the Microsoft Cloud.
@@ -105,13 +104,17 @@ To learn more, see [Intersecting frameworks](./intersecting-disciplines.md).
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK0.11/bladeName/Guide.Framework/featureName/Capabilities.Manage)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/onboarding.md b/docs-mslearn/framework/manage/onboarding.md
index 354c0e742..5ee559981 100644
--- a/docs-mslearn/framework/manage/onboarding.md
+++ b/docs-mslearn/framework/manage/onboarding.md
@@ -3,7 +3,7 @@ title: Onboarding workloads
description: This article helps you understand the onboarding workloads capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: kedelaro
# customer intent: As a FinOps practitioner, I want to understand the onboarding workloads capability so that I can implement it in the Microsoft Cloud.
---
-
# Onboarding workloads
This article helps you understand the onboarding workloads capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -86,13 +85,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK0.11/bladeName/Guide.Framework/featureName/Capabilities.Manage.Onboarding)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/operations.md b/docs-mslearn/framework/manage/operations.md
index c66c16b1d..035b6b13b 100644
--- a/docs-mslearn/framework/manage/operations.md
+++ b/docs-mslearn/framework/manage/operations.md
@@ -3,7 +3,7 @@ title: FinOps practice operations
description: This article helps you understand the FinOps practice operations capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the FinOps practice operations capability so that I can implement it in the Microsoft Cloud.
---
-
# FinOps practice operations
This article helps you understand the FinOps Practice Operations capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -92,13 +91,17 @@ This capability is part of the FinOps Framework by the FinOps Foundation, a non-
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK0.11/bladeName/Guide.Framework/featureName/Capabilities.Manage.Operations)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/manage/tools-services.md b/docs-mslearn/framework/manage/tools-services.md
index 2a6fb1a18..2660935bc 100644
--- a/docs-mslearn/framework/manage/tools-services.md
+++ b/docs-mslearn/framework/manage/tools-services.md
@@ -3,7 +3,7 @@ title: FinOps tools and services
description: This article helps you understand the FinOps tools and services capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the FinOps tools and services capability so that I can implement it in the Microsoft Cloud.
---
-
# FinOps tools and services
This article helps you understand the FinOps tools and services capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -93,13 +92,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK0.11/bladeName/Guide.Framework/featureName/Capabilities.Manage.ToolsAndServices)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/optimize/architecting.md b/docs-mslearn/framework/optimize/architecting.md
index ac2e9e1e8..2e40da786 100644
--- a/docs-mslearn/framework/optimize/architecting.md
+++ b/docs-mslearn/framework/optimize/architecting.md
@@ -1,104 +1,107 @@
----
-title: Architecting for cloud
-description: This article helps you understand the architecting for cloud capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
-author: flanakin
-ms.author: micflan
-ms.date: 04/02/2025
-ms.topic: concept-article
-ms.service: finops
-ms.subservice: finops-learning-resources
-ms.reviewer: micflan
-# customer intent: As a FinOps practitioner, I want to understand the architecting for cloud capability so that I can implement that in the Microsoft cloud.
----
-
-
-# Architecting for cloud
-
-This article helps you understand the architecting for cloud capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
-
-
-
-## Definition
-
-**Architecting for the cloud involves designing and implementing cloud infrastructure and applications in a manner that optimizes cost, performance, scalability, and reliability while aligning with business objectives.**
-
-This capability encompasses the architectural decisions and best practices aimed at maximizing the value derived from cloud investments while minimizing unnecessary expenditure.
-
-
-
-## Before you begin
-
-Integrating the [Cloud Adoption Framework (CAF)](/azure/cloud-adoption-framework) and the [Well-Architected Framework (WAF)](/azure/well-architected/pillars) with the FinOps approach is crucial for a comprehensive and effective cloud governance strategy, especially when using Microsoft Azure. Here's a refined list of prerequisites considering these frameworks:
-
-- **Microsoft Azure fundamentals:** Gain familiarity with Azure services and features, including compute, storage, networking, databases, and security, aligning with the CAF's guidelines for Azure adoption.
-- **Architectural principles and WAF pillars:** Familiarize yourself with architectural best practices outlined in the Well-Architected Framework's pillars: operational excellence, security, reliability, performance efficiency, and cost optimization.
-- **Azure Resource Management and CAF Landing Zones:** Learn how to manage Azure resources using Azure Resource Manager (ARM) templates or Infrastructure as Code (IaC) tools like Azure Bicep or Terraform. Understand the concept of CAF landing zones for implementing Azure environments aligned with best practices.
-
-
-
-## Getting started
-
-The "Architecting for Cloud" capability within the FinOps Framework helps customers, especially people at lower maturity levels, build foundational knowledge, establish processes, and implement best practices for designing cloud architectures that optimize cost, performance, and reliability.
-
-- **Educate stakeholders:** Conduct training sessions or workshops to educate stakeholders about the benefits and principles of cloud architecture, emphasizing cost optimization, scalability, and resilience.
-- **Implement architectural principles:** Establish architectural principles and design guidelines based on [WAF pillars](/azure/well-architected/workloads): operational excellence, security, reliability, performance efficiency, and cost optimization.
-- **Leverage Enterprise App Patterns for Web Apps:** Get started with the [Reliable Web App pattern](/azure/architecture/web-apps/guides/enterprise-app-patterns/overview). Enterprise App Patterns are built on top of the principles laid out in the WAF and provide implementation techniques to optimize your .NET or Java web app's move to the cloud.
-- **Utilize Azure Well-Architected Review:** Conduct Azure [Well-Architected Reviews](/assessments/azure-architecture-review/) for workloads deployed in Azure. To identify areas for improvement, evaluate workloads against the five pillars of WAF.
-- **Implement cost management practices:** Incorporate the Cloud Adoption Framework's [cost management practices](/azure/cloud-adoption-framework/get-started/manage-costs) into your architectural designs. This effort includes right-sizing resources, using [commitment discounts](./rates.md), and implementing [cost allocation mechanisms](../understand/allocation.md).
-- **Establish governance and compliance:** Establish [governance mechanisms](/azure/cloud-adoption-framework/govern/monitor-cloud-governance) and compliance controls to ensure adherence to organizational policies, regulatory requirements, and industry standards. Use Azure Governance and Azure Blueprints for policy enforcement and compliance automation.
-
-
-
-## Building on the basics
-
-At this point, you should have a clear architectural guidance. As you move beyond the basics, consider the following points:
-
-- **Advanced Architectural Patterns:** Review and explore the [Azure Architecture Center](/azure/architecture/browse/) for advanced architectural patterns and design principles specific to Azure. They include microservices, serverless computing, event-driven architectures, and distributed systems.
-- **Cloud-native Technologies:** Use managed services to simplify architecture, improve scalability, and reduce operational overhead. Embrace cloud-native technologies and services offered by Azure, such as [Azure Kubernetes Service (AKS)](/azure/well-architected/service-guides/azure-kubernetes-service), [Azure Functions](/azure/well-architected/service-guides/azure-functions-security), Azure Logic Apps, and Azure Event Grid.
-- **Multi-Cloud and Hybrid Architectures:** Extend cloud architectures to embrace multicloud and hybrid cloud scenarios, using [Azure Arc](/azure/azure-arc/overview) for managing resources across on-premises, multicloud, and edge environments. Implement cloud bursting and disaster recovery strategies for resilience and flexibility.
-- **Security and Compliance Automation:** Use Azure Policy, Azure Security Center, and Microsoft Sentinel to automate security and compliance practices, including threat detection, incident response, and compliance reporting. Implement DevSecOps practices to embed security throughout the development lifecycle.
-- **Data Management and Analytics:** Enhance data management and analytics capabilities by using Azure Data Services, such as Azure Synapse Analytics, Azure Databricks, and Azure Data Lake Storage. Implement advanced analytics, machine learning, and AI solutions for data-driven insights.
-- **DevOps and CI/CD Automation:** Improve DevOps practices by automating CI/CD pipelines, infrastructure provisioning, and testing using Azure DevOps services, GitHub Actions, or Azure Automation. Implement Infrastructure as Code (IaC) with Azure Resource Manager (ARM) templates or Azure Bicep for consistency and repeatability.
-- **Advanced Monitoring and Observability:** Implement advanced monitoring and observability solutions using tools such as the [Azure Monitor Baseline Alerts (AMBA)](https://azure.github.io/azure-monitor-baseline-alerts/welcome/).
-- **Azure Verified Modules:** Take advantage of [Azure Verified Modules](https://azure.github.io/Azure-Verified-Modules/) to accelerate cloud architecture design and implementation. These verified modules provide prevalidated configurations and best practices, according to Microsoft guidance (WAF), for deploying infrastructure, applications, and services on Azure.
-- **Continuous Learning and Improvement:** Invest in ongoing training and certification programs for teams to stay updated with the latest Azure technologies and best practices. Encourage knowledge sharing, cross-functional collaboration, and participation in community forums and events.
-
-
-
-## Learn more at the FinOps Foundation
-
-This capability is a part of the FinOps Framework by the FinOps Foundation, a non-profit organization dedicated to advancing cloud cost management and optimization. For more information about FinOps, including useful playbooks, training and certification programs, and more, see the [Architecting for cloud](https://www.finops.org/framework/capabilities/architecting-for-cloud/) article in the FinOps Framework documentation.
-
-You can also find related videos on the FinOps Foundation YouTube channel:
-
-> [!VIDEO https://www.youtube.com/embed/zMonuvmZE1g?list=PLUSCToibAswm62kf2eILBPaRHobvxNy35]
-
-
-
-## Give feedback
-
-Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
-
-> [!div class="nextstepaction"]
-> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Architecting)
-
-If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
-
-> [!div class="nextstepaction"]
-> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
-
-
-
-## Related content
-
-Related FinOps capabilities:
-
-- [Workload optimization](./workloads.md)
-- [Rate optimization](./rates.md)
-
-Other resources:
-
-- [Cloud Adoption Framework](/azure/cloud-adoption-framework/)
-- [Well-Architected Framework](/azure/well-architected/)
-
-
+---
+title: Architecting for cloud
+description: This article helps you understand the architecting for cloud capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
+author: flanakin
+ms.author: micflan
+ms.date: 02/24/2026
+ms.topic: concept-article
+ms.service: finops
+ms.subservice: finops-learning-resources
+ms.reviewer: micflan
+# customer intent: As a FinOps practitioner, I want to understand the architecting for cloud capability so that I can implement that in the Microsoft cloud.
+---
+
+# Architecting for cloud
+
+This article helps you understand the architecting for cloud capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
+
+
+
+## Definition
+
+**Architecting for the cloud involves designing and implementing cloud infrastructure and applications in a manner that optimizes cost, performance, scalability, and reliability while aligning with business objectives.**
+
+This capability encompasses the architectural decisions and best practices aimed at maximizing the value derived from cloud investments while minimizing unnecessary expenditure.
+
+
+
+## Before you begin
+
+Integrating the [Cloud Adoption Framework (CAF)](/azure/cloud-adoption-framework) and the [Well-Architected Framework (WAF)](/azure/well-architected/pillars) with the FinOps approach is crucial for a comprehensive and effective cloud governance strategy, especially when using Microsoft Azure. Here's a refined list of prerequisites considering these frameworks:
+
+- **Microsoft Azure fundamentals:** Gain familiarity with Azure services and features, including compute, storage, networking, databases, and security, aligning with the CAF's guidelines for Azure adoption.
+- **Architectural principles and WAF pillars:** Familiarize yourself with architectural best practices outlined in the Well-Architected Framework's pillars: operational excellence, security, reliability, performance efficiency, and cost optimization.
+- **Azure Resource Management and CAF Landing Zones:** Learn how to manage Azure resources using Azure Resource Manager (ARM) templates or Infrastructure as Code (IaC) tools like Azure Bicep or Terraform. Understand the concept of CAF landing zones for implementing Azure environments aligned with best practices.
+
+
+
+## Getting started
+
+The "Architecting for Cloud" capability within the FinOps Framework helps customers, especially people at lower maturity levels, build foundational knowledge, establish processes, and implement best practices for designing cloud architectures that optimize cost, performance, and reliability.
+
+- **Educate stakeholders:** Conduct training sessions or workshops to educate stakeholders about the benefits and principles of cloud architecture, emphasizing cost optimization, scalability, and resilience.
+- **Implement architectural principles:** Establish architectural principles and design guidelines based on [WAF pillars](/azure/well-architected/workloads): operational excellence, security, reliability, performance efficiency, and cost optimization.
+- **Leverage Enterprise App Patterns for Web Apps:** Get started with the [Reliable Web App pattern](/azure/architecture/web-apps/guides/enterprise-app-patterns/overview). Enterprise App Patterns are built on top of the principles laid out in the WAF and provide implementation techniques to optimize your .NET or Java web app's move to the cloud.
+- **Utilize Azure Well-Architected Review:** Conduct Azure [Well-Architected Reviews](/assessments/azure-architecture-review/) for workloads deployed in Azure. To identify areas for improvement, evaluate workloads against the five pillars of WAF.
+- **Implement cost management practices:** Incorporate the Cloud Adoption Framework's [cost management practices](/azure/cloud-adoption-framework/get-started/manage-costs) into your architectural designs. This effort includes right-sizing resources, using [commitment discounts](./rates.md), and implementing [cost allocation mechanisms](../understand/allocation.md).
+- **Establish governance and compliance:** Establish [governance mechanisms](/azure/cloud-adoption-framework/govern/monitor-cloud-governance) and compliance controls to ensure adherence to organizational policies, regulatory requirements, and industry standards. Use Azure Governance and Azure Blueprints for policy enforcement and compliance automation.
+
+
+
+## Building on the basics
+
+At this point, you should have a clear architectural guidance. As you move beyond the basics, consider the following points:
+
+- **Advanced Architectural Patterns:** Review and explore the [Azure Architecture Center](/azure/architecture/browse/) for advanced architectural patterns and design principles specific to Azure. They include microservices, serverless computing, event-driven architectures, and distributed systems.
+- **Cloud-native Technologies:** Use managed services to simplify architecture, improve scalability, and reduce operational overhead. Embrace cloud-native technologies and services offered by Azure, such as [Azure Kubernetes Service (AKS)](/azure/well-architected/service-guides/azure-kubernetes-service), [Azure Functions](/azure/well-architected/service-guides/azure-functions-security), Azure Logic Apps, and Azure Event Grid.
+- **Multi-Cloud and Hybrid Architectures:** Extend cloud architectures to embrace multicloud and hybrid cloud scenarios, using [Azure Arc](/azure/azure-arc/overview) for managing resources across on-premises, multicloud, and edge environments. Implement cloud bursting and disaster recovery strategies for resilience and flexibility.
+- **Security and Compliance Automation:** Use Azure Policy, Azure Security Center, and Microsoft Sentinel to automate security and compliance practices, including threat detection, incident response, and compliance reporting. Implement DevSecOps practices to embed security throughout the development lifecycle.
+- **Data Management and Analytics:** Enhance data management and analytics capabilities by using Azure Data Services, such as Azure Synapse Analytics, Azure Databricks, and Azure Data Lake Storage. Implement advanced analytics, machine learning, and AI solutions for data-driven insights.
+- **DevOps and CI/CD Automation:** Improve DevOps practices by automating CI/CD pipelines, infrastructure provisioning, and testing using Azure DevOps services, GitHub Actions, or Azure Automation. Implement Infrastructure as Code (IaC) with Azure Resource Manager (ARM) templates or Azure Bicep for consistency and repeatability.
+- **Advanced Monitoring and Observability:** Implement advanced monitoring and observability solutions using tools such as the [Azure Monitor Baseline Alerts (AMBA)](https://azure.github.io/azure-monitor-baseline-alerts/welcome/).
+- **Azure Verified Modules:** Take advantage of [Azure Verified Modules](https://azure.github.io/Azure-Verified-Modules/) to accelerate cloud architecture design and implementation. These verified modules provide prevalidated configurations and best practices, according to Microsoft guidance (WAF), for deploying infrastructure, applications, and services on Azure.
+- **Continuous Learning and Improvement:** Invest in ongoing training and certification programs for teams to stay updated with the latest Azure technologies and best practices. Encourage knowledge sharing, cross-functional collaboration, and participation in community forums and events.
+
+
+
+## Learn more at the FinOps Foundation
+
+This capability is a part of the FinOps Framework by the FinOps Foundation, a non-profit organization dedicated to advancing cloud cost management and optimization. For more information about FinOps, including useful playbooks, training and certification programs, and more, see the [Architecting for cloud](https://www.finops.org/framework/capabilities/architecting-for-cloud/) article in the FinOps Framework documentation.
+
+You can also find related videos on the FinOps Foundation YouTube channel:
+
+> [!VIDEO https://www.youtube.com/embed/zMonuvmZE1g?list=PLUSCToibAswm62kf2eILBPaRHobvxNy35]
+
+
+
+## Give feedback
+
+Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
+
+> [!div class="nextstepaction"]
+> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Architecting)
+
+
+If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
+
+> [!div class="nextstepaction"]
+> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
+
+
+
+## Related content
+
+Related FinOps capabilities:
+
+- [Workload optimization](./workloads.md)
+- [Rate optimization](./rates.md)
+
+Other resources:
+
+- [Cloud Adoption Framework](/azure/cloud-adoption-framework/)
+- [Well-Architected Framework](/azure/well-architected/)
+
+
diff --git a/docs-mslearn/framework/optimize/licensing.md b/docs-mslearn/framework/optimize/licensing.md
index 042383f76..2b347a072 100644
--- a/docs-mslearn/framework/optimize/licensing.md
+++ b/docs-mslearn/framework/optimize/licensing.md
@@ -1,91 +1,94 @@
----
-title: Licensing and SaaS
-description: This article helps you understand the licensing and SaaS capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
-author: flanakin
-ms.author: micflan
-ms.date: 04/04/2025
-ms.topic: concept-article
-ms.service: finops
-ms.subservice: finops-learning-resources
-ms.reviewer: kedelaro
-# customer intent: As a FinOps practitioner, I want to understand the licensing and SaaS capability so that I can implement that in the Microsoft cloud.
----
-
-
-# Licensing and SaaS
-
-This article helps you understand the licensing and SaaS capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
-
-
-
-## Definition
-
-**Licensing & SaaS refers to the specialized competency in managing and optimizing the financial aspects of software licensing agreements and Software as a Service (SaaS) investments within an organization.**
-
-This capability involves optimizing the procurement, deployment, and utilization of licensed software and SaaS solutions to achieve cost-efficiency while meeting business needs.
-
-
-
-## Before you begin
-
-Understanding Microsoft's licensing models—such as per-user, per-device, subscription-based (like Microsoft 365), and perpetual (like Microsoft Office) is crucial for optimizing agreements and ensuring compliance. Familiarity with Microsoft's cloud services, including Azure, Microsoft 365, Dynamics 365, and other SaaS offerings, is essential for informed subscription management and cost optimization. This understanding includes knowing their features, pricing structures, and usage patterns.
-
-
-
-## Getting started
-
-Microsoft offers several tools to help you identify when you should consider purchasing reservations or savings plans. You can choose whether you want to start by analyzing usage or by reviewing the system-generated recommendations based on your historical usage and cost. We recommend starting with the recommendations to focus your initial efforts:
-
-- **Understand Azure licensing models:** Gain an understanding of Azure's licensing models, including pay-as-you-go, reservations, hybrid benefits, and enterprise agreements. Determine which licensing options align best with the organization's needs and budget. Review the rules for [Azure Hybrid Benefit for Windows Server](/windows-server/get-started/azure-hybrid-benefit?tabs=azure&preserve-view=true) and [Azure Hybrid Benefit for SQL database.](/azure/azure-sql/azure-hybrid-benefit?view=azuresql&tabs=azure-portal&preserve-view=true)
-- **Review Advisor's cost optimization workbook** to [identify existing licensing benefits](/azure/advisor/advisor-cost-optimization-workbook#azure-hybrid-benefit) and ensure they're applied to the resources that have the biggest return in savings.
-
-
-
-## Building on the basics
-
-At this point, you defined a strategy for Licensing and SaaS optimization. As you move beyond the basics, consider the following points:
-
-- **Enhance compliance governance:** Establish processes and controls to ensure compliance with licensing agreements, regulatory requirements, and internal policies within Microsoft Cloud. Implement software asset management practices, conduct regular audits, and enforce license usage policies.
-- **Monitor and review:** Continuously monitor usage, costs, and compliance metrics for software licenses and SaaS subscriptions within Microsoft Cloud. Review reports, analyze trends, and identify areas for further optimization or cost savings.
-
-
-
-## Learn more at the FinOps Foundation
-
-This capability is a part of the FinOps Framework by the FinOps Foundation, a non-profit organization dedicated to advancing cloud cost management and optimization. For more information about FinOps, including useful playbooks, training and certification programs, and more, see the [Licensing and SaaS](https://www.finops.org/framework/capabilities/licensing-saas//) article in the FinOps Framework documentation.
-
-You can also find related videos on the FinOps Foundation YouTube channel:
-
-> [!VIDEO https://www.youtube.com/embed/E0apggxoBbc?list=PLUSCToibAswlWejHPVjbCqa3fJQvogzB9&pp=iAQB]
-
-
-
-## Give feedback
-
-Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
-
-> [!div class="nextstepaction"]
-> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Licensing)
-
-If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
-
-> [!div class="nextstepaction"]
-> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
-
-
-
-## Related content
-
-Related FinOps capabilities:
-
-- [Reporting and analytics](../understand/reporting.md)
-- [Policy and governance](../manage/governance.md)
-
-Related solutions:
-
-- [Cost Management connector for Power BI](/power-bi/connect-data/desktop-connect-azure-cost-management)
-- [FinOps toolkit Power BI reports](../../toolkit/power-bi/reports.md)
-- [FinOps hubs](../../toolkit/hubs/finops-hubs-overview.md)
-- [FinOps workbooks](../../toolkit/workbooks/finops-workbooks-overview.md)
-
-
+---
+title: Licensing and SaaS
+description: This article helps you understand the licensing and SaaS capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
+author: flanakin
+ms.author: micflan
+ms.date: 02/24/2026
+ms.topic: concept-article
+ms.service: finops
+ms.subservice: finops-learning-resources
+ms.reviewer: kedelaro
+# customer intent: As a FinOps practitioner, I want to understand the licensing and SaaS capability so that I can implement that in the Microsoft cloud.
+---
+
+# Licensing and SaaS
+
+This article helps you understand the licensing and SaaS capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
+
+
+
+## Definition
+
+**Licensing & SaaS refers to the specialized competency in managing and optimizing the financial aspects of software licensing agreements and Software as a Service (SaaS) investments within an organization.**
+
+This capability involves optimizing the procurement, deployment, and utilization of licensed software and SaaS solutions to achieve cost-efficiency while meeting business needs.
+
+
+
+## Before you begin
+
+Understanding Microsoft's licensing models—such as per-user, per-device, subscription-based (like Microsoft 365), and perpetual (like Microsoft Office) is crucial for optimizing agreements and ensuring compliance. Familiarity with Microsoft's cloud services, including Azure, Microsoft 365, Dynamics 365, and other SaaS offerings, is essential for informed subscription management and cost optimization. This understanding includes knowing their features, pricing structures, and usage patterns.
+
+
+
+## Getting started
+
+Microsoft offers several tools to help you identify when you should consider purchasing reservations or savings plans. You can choose whether you want to start by analyzing usage or by reviewing the system-generated recommendations based on your historical usage and cost. We recommend starting with the recommendations to focus your initial efforts:
+
+- **Understand Azure licensing models:** Gain an understanding of Azure's licensing models, including pay-as-you-go, reservations, hybrid benefits, and enterprise agreements. Determine which licensing options align best with the organization's needs and budget. Review the rules for [Azure Hybrid Benefit for Windows Server](/windows-server/get-started/azure-hybrid-benefit?tabs=azure&preserve-view=true) and [Azure Hybrid Benefit for SQL database.](/azure/azure-sql/azure-hybrid-benefit?view=azuresql&tabs=azure-portal&preserve-view=true)
+- **Review Advisor's cost optimization workbook** to [identify existing licensing benefits](/azure/advisor/advisor-cost-optimization-workbook#azure-hybrid-benefit) and ensure they're applied to the resources that have the biggest return in savings.
+
+
+
+## Building on the basics
+
+At this point, you defined a strategy for Licensing and SaaS optimization. As you move beyond the basics, consider the following points:
+
+- **Enhance compliance governance:** Establish processes and controls to ensure compliance with licensing agreements, regulatory requirements, and internal policies within Microsoft Cloud. Implement software asset management practices, conduct regular audits, and enforce license usage policies.
+- **Monitor and review:** Continuously monitor usage, costs, and compliance metrics for software licenses and SaaS subscriptions within Microsoft Cloud. Review reports, analyze trends, and identify areas for further optimization or cost savings.
+
+
+
+## Learn more at the FinOps Foundation
+
+This capability is a part of the FinOps Framework by the FinOps Foundation, a non-profit organization dedicated to advancing cloud cost management and optimization. For more information about FinOps, including useful playbooks, training and certification programs, and more, see the [Licensing and SaaS](https://www.finops.org/framework/capabilities/licensing-saas//) article in the FinOps Framework documentation.
+
+You can also find related videos on the FinOps Foundation YouTube channel:
+
+> [!VIDEO https://www.youtube.com/embed/E0apggxoBbc?list=PLUSCToibAswlWejHPVjbCqa3fJQvogzB9&pp=iAQB]
+
+
+
+## Give feedback
+
+Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
+
+> [!div class="nextstepaction"]
+> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Licensing)
+
+
+If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
+
+> [!div class="nextstepaction"]
+> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
+
+
+
+## Related content
+
+Related FinOps capabilities:
+
+- [Reporting and analytics](../understand/reporting.md)
+- [Policy and governance](../manage/governance.md)
+
+Related solutions:
+
+- [Cost Management connector for Power BI](/power-bi/connect-data/desktop-connect-azure-cost-management)
+- [FinOps toolkit Power BI reports](../../toolkit/power-bi/reports.md)
+- [FinOps hubs](../../toolkit/hubs/finops-hubs-overview.md)
+- [FinOps workbooks](../../toolkit/workbooks/finops-workbooks-overview.md)
+
+
diff --git a/docs-mslearn/framework/optimize/optimize-cloud-usage-cost.md b/docs-mslearn/framework/optimize/optimize-cloud-usage-cost.md
index cfa508930..ef94b6654 100644
--- a/docs-mslearn/framework/optimize/optimize-cloud-usage-cost.md
+++ b/docs-mslearn/framework/optimize/optimize-cloud-usage-cost.md
@@ -3,14 +3,13 @@ title: Optimize usage and cost
description: Learn about the FinOps capabilities that help you identify and implement the right mix of pricing models, services, and resources needed to meet business demands.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: conceptual
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: kedelaro
---
-
# Optimize usage and cost
This article helps you understand the **Optimize usage and cost** domain within the FinOps Framework and how to implement its capabilities in the Microsoft Cloud.
@@ -65,13 +64,17 @@ To learn more, see [Cloud sustainability](./sustainability.md).
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/optimize/rates.md b/docs-mslearn/framework/optimize/rates.md
index 26802bdde..d29ee1535 100644
--- a/docs-mslearn/framework/optimize/rates.md
+++ b/docs-mslearn/framework/optimize/rates.md
@@ -3,7 +3,7 @@ title: Rate optimization
description: This article helps you understand the rate optimization capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: kedelaro
# customer intent: As a FinOps practitioner, I want to understand the rate optimization capability so that I can implement that in the Microsoft cloud.
---
-
# Rate optimization
This article helps you understand the rate optimization capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -88,13 +87,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Rates)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/optimize/sustainability.md b/docs-mslearn/framework/optimize/sustainability.md
index 5ed25871a..ebdb087f4 100644
--- a/docs-mslearn/framework/optimize/sustainability.md
+++ b/docs-mslearn/framework/optimize/sustainability.md
@@ -1,88 +1,91 @@
----
-title: Cloud sustainability
-description: This article helps you understand the cloud sustainability capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
-author: flanakin
-ms.author: micflan
-ms.date: 04/02/2025
-ms.topic: concept-article
-ms.service: finops
-ms.subservice: finops-learning-resources
-ms.reviewer: micflan
-# customer intent: As a FinOps practitioner, I want to understand the cloud sustainability capability so that I can implement that in the Microsoft cloud.
----
-
-
-# Cloud sustainability
-
-This article helps you understand the cloud sustainability capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
-
-
-
-## Definition
-
-**Cloud sustainability balances environmental and financial efficiency in cloud optimization, ensuring alignment with strategic objectives.**
-
-To optimize cloud sustainability while balancing cost, establish policies, guidelines, and strategies. Identify opportunities to improve and foster stakeholder engagement for effective evaluation.
-
-
-
-## Getting started
-
-When you first start with cloud sustainability, you use the native tools to drive efficiency and optimize carbon in the portal.
-
-- Use [Azure Carbon Optimization](/azure/carbon-optimization/overview) to find opportunities to lower carbon emissions.
-- Consider using the [Cost optimization workbook](../../toolkit/workbooks/optimization.md) to view carbon optimization recommendations alongside other usage and cost efficiency recommendations.
-
-
-## Building on the basics
-
-At this point, you implemented all the basic carbon optimization recommendations and tuned applications to meet the most fundamental best practices. As you move beyond the basics, consider the following points:
-
-- Expand visibility to business and finance stakeholders by using the [Emissions Impact Dashboard for Azure](/power-bi/connect-data/service-connect-to-emissions-impact-dashboard) or the [Emissions Impact Dashboard for Microsoft 365](/power-bi/connect-data/service-connect-to-emissions-impact-dashboard).
-- Explore other tools available in Microsoft's environmental, social, and governance (ESG) capabilities available from the [Microsoft Cloud for Sustainability](/industry/sustainability/overview).
- - For a more prescriptive approach, refer to the [Well-Architected guide for sustainability](/industry/well-architected/sustainability).
-
-
-
-## Learn more at the FinOps Foundation
-
-This capability is a part of the FinOps Framework by the FinOps Foundation, a non-profit organization dedicated to advancing cloud cost management and optimization. For more information about FinOps, including useful playbooks, training and certification programs, and more, see the [Cloud sustainability](https://www.finops.org/framework/capabilities/cloud-sustainability/) article in the FinOps Framework documentation.
-
-You can also find related videos on the FinOps Foundation YouTube channel:
-
-> [!VIDEO https://www.youtube.com/embed/9CuwDB6XnPg?list=PLUSCToibAswnePI6MuWJpqbW7yxWKfDST]
-
-
-
-## Give feedback
-
-Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
-
-> [!div class="nextstepaction"]
-> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Sustainability)
-
-If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
-
-> [!div class="nextstepaction"]
-> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
-
-
-
-## Related content
-
-Related FinOps capabilities:
-
-- [Workload optimization](./workloads.md)
-- [Rate optimization](./rates.md)
-- [Unit economics](../quantify/unit-economics.md)
-
-Related products:
-
-- [Azure Carbon Optimization](/azure/carbon-optimization)
-
-Related solutions:
-
-- [Microsoft Cloud for Sustainability](https://www.microsoft.com/sustainability/cloud)
-- [Cost optimization workbook](../../toolkit/workbooks/optimization.md)
-
-
+---
+title: Cloud sustainability
+description: This article helps you understand the cloud sustainability capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
+author: flanakin
+ms.author: micflan
+ms.date: 02/24/2026
+ms.topic: concept-article
+ms.service: finops
+ms.subservice: finops-learning-resources
+ms.reviewer: micflan
+# customer intent: As a FinOps practitioner, I want to understand the cloud sustainability capability so that I can implement that in the Microsoft cloud.
+---
+
+# Cloud sustainability
+
+This article helps you understand the cloud sustainability capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
+
+
+
+## Definition
+
+**Cloud sustainability balances environmental and financial efficiency in cloud optimization, ensuring alignment with strategic objectives.**
+
+To optimize cloud sustainability while balancing cost, establish policies, guidelines, and strategies. Identify opportunities to improve and foster stakeholder engagement for effective evaluation.
+
+
+
+## Getting started
+
+When you first start with cloud sustainability, you use the native tools to drive efficiency and optimize carbon in the portal.
+
+- Use [Azure Carbon Optimization](/azure/carbon-optimization/overview) to find opportunities to lower carbon emissions.
+- Consider using the [Cost optimization workbook](../../toolkit/workbooks/optimization.md) to view carbon optimization recommendations alongside other usage and cost efficiency recommendations.
+
+
+## Building on the basics
+
+At this point, you implemented all the basic carbon optimization recommendations and tuned applications to meet the most fundamental best practices. As you move beyond the basics, consider the following points:
+
+- Expand visibility to business and finance stakeholders by using the [Emissions Impact Dashboard for Azure](/power-bi/connect-data/service-connect-to-emissions-impact-dashboard) or the [Emissions Impact Dashboard for Microsoft 365](/power-bi/connect-data/service-connect-to-emissions-impact-dashboard).
+- Explore other tools available in Microsoft's environmental, social, and governance (ESG) capabilities available from the [Microsoft Cloud for Sustainability](/industry/sustainability/overview).
+ - For a more prescriptive approach, refer to the [Well-Architected guide for sustainability](/industry/well-architected/sustainability).
+
+
+
+## Learn more at the FinOps Foundation
+
+This capability is a part of the FinOps Framework by the FinOps Foundation, a non-profit organization dedicated to advancing cloud cost management and optimization. For more information about FinOps, including useful playbooks, training and certification programs, and more, see the [Cloud sustainability](https://www.finops.org/framework/capabilities/cloud-sustainability/) article in the FinOps Framework documentation.
+
+You can also find related videos on the FinOps Foundation YouTube channel:
+
+> [!VIDEO https://www.youtube.com/embed/9CuwDB6XnPg?list=PLUSCToibAswnePI6MuWJpqbW7yxWKfDST]
+
+
+
+## Give feedback
+
+Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
+
+> [!div class="nextstepaction"]
+> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Sustainability)
+
+
+If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
+
+> [!div class="nextstepaction"]
+> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
+
+
+
+## Related content
+
+Related FinOps capabilities:
+
+- [Workload optimization](./workloads.md)
+- [Rate optimization](./rates.md)
+- [Unit economics](../quantify/unit-economics.md)
+
+Related products:
+
+- [Azure Carbon Optimization](/azure/carbon-optimization)
+
+Related solutions:
+
+- [Microsoft Cloud for Sustainability](https://www.microsoft.com/sustainability/cloud)
+- [Cost optimization workbook](../../toolkit/workbooks/optimization.md)
+
+
diff --git a/docs-mslearn/framework/optimize/workloads.md b/docs-mslearn/framework/optimize/workloads.md
index 230d94ad6..e8c02f3b0 100644
--- a/docs-mslearn/framework/optimize/workloads.md
+++ b/docs-mslearn/framework/optimize/workloads.md
@@ -3,7 +3,7 @@ title: Workload optimization
description: This article helps you understand the Workload optimization capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: kedelaro
# customer intent: As a FinOps practitioner, I want to understand the workload optimization capability so that I can implement it in the Microsoft Cloud.
---
-
# Workload optimization
This article helps you understand the Workload optimization capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -103,13 +102,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Optimize.Workloads)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/quantify/benchmarking.md b/docs-mslearn/framework/quantify/benchmarking.md
index 76d5d6bdc..83c1e5b35 100644
--- a/docs-mslearn/framework/quantify/benchmarking.md
+++ b/docs-mslearn/framework/quantify/benchmarking.md
@@ -3,7 +3,7 @@ title: FinOps benchmarking
description: This article helps you understand the benchmarking capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the FinOps practice operations capability so that I can implement it in the Microsoft Cloud.
---
-
# FinOps benchmarking
This article helps you understand the benchmarking capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -67,13 +66,17 @@ This capability is a part of the FinOps Framework by the FinOps Foundation, a no
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Quantify.Benchmarking)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/quantify/budgeting.md b/docs-mslearn/framework/quantify/budgeting.md
index fb4979548..efd3c575a 100644
--- a/docs-mslearn/framework/quantify/budgeting.md
+++ b/docs-mslearn/framework/quantify/budgeting.md
@@ -3,7 +3,7 @@ title: Budgeting
description: This article helps you understand the budgeting capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the budgeting capability so that I can implement it in the Microsoft Cloud.
---
-
# Budgeting
This article helps you understand the budgeting capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -74,13 +73,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Quantify.Budgeting)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/quantify/forecasting.md b/docs-mslearn/framework/quantify/forecasting.md
index bca9cb469..8bc484aaf 100644
--- a/docs-mslearn/framework/quantify/forecasting.md
+++ b/docs-mslearn/framework/quantify/forecasting.md
@@ -3,7 +3,7 @@ title: Forecasting
description: This article helps you understand the forecasting capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the forecasting capability so that I can implement it in the Microsoft Cloud.
---
-
# Forecasting
This article helps you understand the forecasting capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -123,13 +122,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Quantify.Forecasting)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/quantify/planning.md b/docs-mslearn/framework/quantify/planning.md
index f9e8da8f8..23d993141 100644
--- a/docs-mslearn/framework/quantify/planning.md
+++ b/docs-mslearn/framework/quantify/planning.md
@@ -3,7 +3,7 @@ title: Planning and estimating
description: This article helps you understand the planning and estimating capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the FinOps practice operations capability so that I can implement it in the Microsoft Cloud.
---
-
# Planning and estimating
This article helps you understand the planning and estimating capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -85,13 +84,17 @@ This capability is a part of the FinOps Framework by the FinOps Foundation, a no
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Quantify.Planning)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/quantify/quantify-business-value.md b/docs-mslearn/framework/quantify/quantify-business-value.md
index 92408ca99..271e8ae1f 100644
--- a/docs-mslearn/framework/quantify/quantify-business-value.md
+++ b/docs-mslearn/framework/quantify/quantify-business-value.md
@@ -3,14 +3,13 @@ title: Quantify business value
description: Learn about the FinOps capabilities that help you measure product and cloud performance and map to organizational KPIs so you can make data-driven decisions with increased accuracy and velocity.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: conceptual
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: kedelaro
---
-
# Quantify business value
This article helps you understand the **Quantify business value** domain within the FinOps Framework and how to implement its capabilities in the Microsoft Cloud.
@@ -63,13 +62,17 @@ To learn more, see [Unit economics](./unit-economics.md).
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Quantify)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/quantify/unit-economics.md b/docs-mslearn/framework/quantify/unit-economics.md
index fbf1f4b34..7a0d0012f 100644
--- a/docs-mslearn/framework/quantify/unit-economics.md
+++ b/docs-mslearn/framework/quantify/unit-economics.md
@@ -3,7 +3,7 @@ title: Unit economics
description: This article helps you understand the unit economics capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the unit economics capability so that I can implement it in the Microsoft Cloud.
---
-
# Unit economics
This article helps you understand the unit economics capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -77,13 +76,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Quantify.UnitEconomics)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/understand/allocation.md b/docs-mslearn/framework/understand/allocation.md
index 7fe01da4d..efb58fde4 100644
--- a/docs-mslearn/framework/understand/allocation.md
+++ b/docs-mslearn/framework/understand/allocation.md
@@ -3,7 +3,7 @@ title: Allocation
description: This article helps you understand the Allocation capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the allocation capability so that I can implement it in the Microsoft Cloud.
---
-
# Allocation
This article helps you understand the allocation capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -140,13 +139,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Understand.Allocation)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/understand/anomalies.md b/docs-mslearn/framework/understand/anomalies.md
index 4a219f1fb..3c6e7b195 100644
--- a/docs-mslearn/framework/understand/anomalies.md
+++ b/docs-mslearn/framework/understand/anomalies.md
@@ -3,7 +3,7 @@ title: Anomaly management
description: This article helps you understand the anomaly management capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,8 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the anomaly management capability so that I can implement it in the Microsoft Cloud.
---
-
-
# Anomaly management
This article helps you understand the anomaly management capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -82,13 +80,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Understand.Anomalies)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/understand/ingestion.md b/docs-mslearn/framework/understand/ingestion.md
index 5023c6b83..6cfaf788b 100644
--- a/docs-mslearn/framework/understand/ingestion.md
+++ b/docs-mslearn/framework/understand/ingestion.md
@@ -3,7 +3,7 @@ title: Data ingestion and normalization
description: This article helps you understand the data ingestion capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the data ingestion capability so that I can implement it in the Microsoft Cloud.
---
-
# Data ingestion
This article helps you understand the data ingestion capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -123,13 +122,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Understand.Ingestion)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/understand/reporting.md b/docs-mslearn/framework/understand/reporting.md
index 5b7d51376..b2468d69b 100644
--- a/docs-mslearn/framework/understand/reporting.md
+++ b/docs-mslearn/framework/understand/reporting.md
@@ -3,7 +3,7 @@ title: Reporting and analytics
description: This article helps you understand the reporting and analytics capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to understand the reporting and analytics capability so that I can implement it in the Microsoft Cloud.
---
-
# Reporting and analytics
This article helps you understand the reporting and analytics capability within the FinOps Framework and how to implement that in the Microsoft Cloud.
@@ -51,8 +50,10 @@ If you're new to FinOps, we recommend starting with reporting and analytics usin
Before you can effectively analyze usage and costs, you need to familiarize yourself with [how you're charged for the services you use](https://azure.microsoft.com/pricing#product-pricing). Understanding the factors that contribute to costs such as compute, storage, networking, data transfer, or executions helps you understand what you ultimately get billed. Understanding how your service usage aligns with the various pricing models also helps you understand what you get billed. These patterns vary between services, which can result in unexpected charges if you don't fully understand how you're charged and how you can stop billing.
+
> [!NOTE]
> _For example, many people understand "VMs are not billed when they're not running." However, this is only partially true. There's a slight nuance for VMs where a "stopped" VM _will_ continue to charge you, because the cloud provider is still reserving that capacity for you. To stop billing, you must "deallocate" the VM. But you also need to remember that compute time isn't the only charge for a VM – you're also charged for network bandwidth, disk storage, and other connected resources. In the simplest example, a deallocated VM will always charge you for disk storage, even if the VM is not running. Depending on what other services you have connected, there could be other charges as well. This is why it's important to understand how the services and features you use will charge you._
+
We also recommend learning about [how cost data is tracked, stored, and refreshed in Microsoft Cost Management](/azure/cost-management-billing/costs/understand-cost-mgt-data). Some examples include:
@@ -144,13 +145,17 @@ You can also find related videos on the FinOps Foundation YouTube channel:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Understand.Reporting)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/framework/understand/understand-cloud-usage-cost.md b/docs-mslearn/framework/understand/understand-cloud-usage-cost.md
index 8c455fa85..02dac5e8d 100644
--- a/docs-mslearn/framework/understand/understand-cloud-usage-cost.md
+++ b/docs-mslearn/framework/understand/understand-cloud-usage-cost.md
@@ -3,14 +3,13 @@ title: Understand usage and cost
description: Learn about the FinOps capabilities that help you collect, normalize, analyze, and monitor cost, usage, and carbon across the organization.
author: flanakin
ms.author: micflan
-ms.date: 04/04/2025
+ms.date: 02/24/2026
ms.topic: conceptual
ms.service: finops
ms.subservice: finops-learning-resources
ms.reviewer: kedelaro
---
-
# Understand usage and cost
This article helps you understand the **Understand usage and cost** domain within the FinOps Framework and how to implement its capabilities in the Microsoft Cloud.
@@ -55,13 +54,17 @@ To learn more, see [Anomaly management](./anomalies.md).
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.Framework/featureName/Capabilities.Understand)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/implementing-finops-guide.md b/docs-mslearn/implementing-finops-guide.md
index c8c08047b..476edadda 100644
--- a/docs-mslearn/implementing-finops-guide.md
+++ b/docs-mslearn/implementing-finops-guide.md
@@ -3,7 +3,7 @@ title: Implementing FinOps guide
description: Learn how FinOps can help you maintain business efficiency, empower new endeavors, and accelerate business growth through the cloud.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a cloud customer, I want to understand what resources are available so that I can learn how to implement FinOps within my organization.
---
-
# Implementing FinOps guide
FinOps is an expansive area with branches that extend out into many cloud management and governance activities. Cost especially is a part of many cloud and business initiatives, like security, resiliency, and adopting cloud-native solutions like AI. And to streamline cloud adoption in a way that prioritizes business value, you need the right guidance to help you make the right data-driven decisions. This document summarizes the FinOps resources available to organizations of all sizes to facilitate your FinOps goals, whether FinOps is a task, a job, or a team.
@@ -63,13 +62,17 @@ Learn more with these videos and training resources:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.General/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/overview.md b/docs-mslearn/overview.md
index 65439f159..7c352e5ce 100644
--- a/docs-mslearn/overview.md
+++ b/docs-mslearn/overview.md
@@ -3,7 +3,7 @@ title: What is FinOps?
description: FinOps combines financial management principles with engineering and operations to provide organizations with a better understanding of their cloud spending.
author: flanakin
ms.author: micflan
-ms.date: 04/25/2025
+ms.date: 02/24/2026
ms.topic: overview
ms.service: finops
ms.subservice: finops-learning-resources
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a cloud customer, I want to understand what FinOps is so that can learn how to leverage it to accelerate my business growth through the cloud.
---
-
# What is FinOps?
FinOps is an operational framework and cultural practice that enhances the business value derived from cloud and technology. It promotes data-driven decision-making in a timely manner and fosters financial responsibility. It gets achieved through collaboration among engineering, finance, and business teams.
@@ -54,13 +53,17 @@ The FinOps Foundation, a non-profit organization focused on FinOps, offers a gre
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Guide.General/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%252B1-desc)
+
diff --git a/docs-mslearn/toolkit/alerts/configure-finops-alerts.md b/docs-mslearn/toolkit/alerts/configure-finops-alerts.md
index b5fe0643e..974a0c907 100644
--- a/docs-mslearn/toolkit/alerts/configure-finops-alerts.md
+++ b/docs-mslearn/toolkit/alerts/configure-finops-alerts.md
@@ -1,9 +1,9 @@
---
-title: Configure FinOps alerts
+title: Configure FinOps alerts
description: Learn how to configure and customize FinOps alerts to perform notifications and actions based on your organizational needs.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: robelmamecha
#customer intent: As a FinOps practitioner, I want to deploy FinOps alerts to detect idle resources.
---
-
# Configure FinOps alerts
FinOps alerts is an automated and proactive cost optimization tool built on Azure Logic Apps. It continuously scans your Azure environment for idle resources and sends notifications to help you take timely action. This solution empowers FinOps practitioners to better manage cloud spending while minimizing waste in the environment.
@@ -22,6 +21,8 @@ FinOps alerts is an automated and proactive cost optimization tool built on Azur
To configure FinOps alerts, follow these steps:
+
+
1. **Deploy FinOps alerts**
> [!div class="nextstepaction"]
@@ -32,35 +33,33 @@ To configure FinOps alerts, follow these steps:
>
> [!div class="nextstepaction"]
> [Deploy to Azure China](https://portal.azure.cn/#create/Microsoft.Template/uri/https%3A%2F%2Fmicrosoft.github.io%2Ffinops-toolkit%2Fdeploy%2Ffinops-alerts-latest.json/createUIDefinitionUri/https%3A%2F%2Fmicrosoft.github.io%2Ffinops-toolkit%2Fdeploy%2Ffinops-alerts-latest.ui.json)
-
-2. **Authorize API connection**
-
- > [!NOTE]
- > After deployment, the Logic app will show a failed run this is due to the API connection, this is a temporary state until authorization is complete.
- 1. Select the **API connection** resource, then select **Edit API Connection** in the General tab to authorize the connection. Once you enable connection select **Save**.
+2. **Authorize API connection**
- :::image type="content" source="./media/configure-finops-alerts/authorize-api-connection.png" alt-text="Screenshot of the edit form for API connections." lightbox="./media/configure-finops-alerts/authorize-api-connection.png" :::
+ > [!NOTE]
+ > After deployment, the Logic app will show a failed run this is due to the API connection, this is a temporary state until authorization is complete.
-3. **Assigning reader permission**
+3. Select the **API connection** resource, then select **Edit API Connection** in the General tab to authorize the connection. Once you enable connection select **Save**.
- 1. The Logic App’s system-assigned identity must have the **Reader** role on the targeted subscriptions. This role enables it to query resource utilization data. Follow [these steps](/azure/role-based-access-control/role-assignments-portal-managed-identity#system-assigned-managed-identity) to assign the reader role.
+ :::image type="content" source="./media/configure-finops-alerts/authorize-api-connection.png" alt-text="Screenshot of the edit form for API connections." lightbox="./media/configure-finops-alerts/authorize-api-connection.png" :::
- 1. For environments that span multiple subscriptions, consider assigning the Reader role at the management group level to streamline permissions management and ensure comprehensive monitoring.
+4. **Assigning reader permission**
-4. **Configuring the Logic App**
+ 1. The Logic App’s system-assigned identity must have the **Reader** role on the targeted subscriptions. This role enables it to query resource utilization data. Follow [these steps](/azure/role-based-access-control/role-assignments-portal-managed-identity#system-assigned-managed-identity) to assign the reader role.
+ 2. For environments that span multiple subscriptions, consider assigning the Reader role at the management group level to streamline permissions management and ensure comprehensive monitoring.
- 1. Within the Logic App designer adjust the recurrence setting (defaulting to 1 week) based on your monitoring needs.
-
- 2. Configure details such as the email subject, alert recipients, and filter which subscription IDs should be included or excluded. This level of customization allows you to tailor the monitoring to your specific cloud environment and cost optimization strategy.
+5. **Configuring the Logic App**
- 3. If needed, further modify the Logic App’s workflow such as conditions, thresholds, and notification channels to align with your organization’s requirements.
+ 1. Within the Logic App designer adjust the recurrence setting (defaulting to 1 week) based on your monitoring needs.
+ 2. Configure details such as the email subject, alert recipients, and filter which subscription IDs should be included or excluded. This level of customization allows you to tailor the monitoring to your specific cloud environment and cost optimization strategy.
+ 3. If needed, further modify the Logic App’s workflow such as conditions, thresholds, and notification channels to align with your organization’s requirements.
-5. **Testing and validation**
+6. **Testing and validation**
- 1. After completing the setup, run the Logic App to ensure it correctly identifies idle resources and triggers the appropriate notifications.
+ 1. After completing the setup, run the Logic App to ensure it correctly identifies idle resources and triggers the appropriate notifications.
+ 2. Analyze test results to adjust thresholds or alert parameters as necessary.
- 2. Analyze test results to adjust thresholds or alert parameters as necessary.
+
@@ -68,13 +67,17 @@ To configure FinOps alerts, follow these steps:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20alerts%3F/cvaQuestion/How%20valuable%20are%20FinOps%20alerts%3F/surveyId/FTK/bladeName/Alerts/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20alerts%22%20sort%3Areactions-%2B1-desc)
+
@@ -92,5 +95,5 @@ Related products:
Related solutions:
- [FinOps workbooks](../workbooks/finops-workbooks-overview.md)
-
+
diff --git a/docs-mslearn/toolkit/alerts/finops-alerts-overview.md b/docs-mslearn/toolkit/alerts/finops-alerts-overview.md
index 4e65d47b8..ecfc3dc05 100644
--- a/docs-mslearn/toolkit/alerts/finops-alerts-overview.md
+++ b/docs-mslearn/toolkit/alerts/finops-alerts-overview.md
@@ -3,7 +3,7 @@ title: FinOps alerts overview
description: FinOps alerts accelerate cost optimization efforts with scheduled notifications that continuously monitor your cloud environment.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: robelmamecha
#customer intent: As a FinOps practitioner, I need to learn about FinOps alerts.
---
-
# FinOps alerts
FinOps alerts automate the identification of cost optimization opportunities using Azure Logic Apps for notifications and custom actions. It continuously scans your Azure environment for idle resources and sends notifications to help you take timely action. This solution empowers FinOps practitioners to better manage cloud spending while minimizing waste in the environment.
@@ -42,13 +41,17 @@ Deploying FinOps alerts requires access to create logic apps, assign access, and
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20alerts%3F/cvaQuestion/How%20valuable%20are%20FinOps%20alerts%3F/surveyId/FTK/bladeName/Alerts/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20alerts%22%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/bicep-registry/modules.md b/docs-mslearn/toolkit/bicep-registry/modules.md
index 3764325bd..124bdcd62 100644
--- a/docs-mslearn/toolkit/bicep-registry/modules.md
+++ b/docs-mslearn/toolkit/bicep-registry/modules.md
@@ -3,7 +3,7 @@ title: Bicep Registry modules for FinOps
description: This article summarizes the Bicep modules available from the FinOps toolkit and provides guidance on how to reference them in your templates.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what Bicep registry modules are available from the FinOps toolkit.
---
-
# Bicep Registry modules
Bicep modules developed within the toolkit are published to the [official Bicep Registry](https://azure.github.io/bicep-registry-modules). These modules aren't included directly in the toolkit release. To use a module, reference the desired module from your bicep code.
@@ -51,13 +50,17 @@ The FinOps toolkit maintains the following Bicep Registry modules:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20deploy%20Cost%20Management%20scheduled%20actions%20with%20the%20FinOps%20toolkit%20bicep%20modules%3F/cvaQuestion/How%20valuable%20are%20the%20Cost%20Management%20scheduled%20actions%20bicep%20modules%3F/surveyId/FTK/bladeName/BicepRegistry/featureName/Overview)
+
If you're looking for a specific module or template, vote for an existing or create a new idea. Share your ideas with others. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+label%3A%22Tool%3A+Bicep+Registry%22+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/bicep-registry/scheduled-actions.md b/docs-mslearn/toolkit/bicep-registry/scheduled-actions.md
index 6c0f67172..c7ae28019 100644
--- a/docs-mslearn/toolkit/bicep-registry/scheduled-actions.md
+++ b/docs-mslearn/toolkit/bicep-registry/scheduled-actions.md
@@ -3,7 +3,7 @@ title: Cost Management scheduled action bicep modules
description: This article describes the Cost Management scheduled actions Bicep Registry modules that help you send an email on a schedule or when an anomaly is detected.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what Cost Management scheduled action bicep modules can help me accomplish.
---
-
# Cost Management scheduled action bicep modules
This article describes the Cost Management scheduled actions Bicep Registry modules that help you send an email on a schedule or when an anomaly is detected.
@@ -159,13 +158,17 @@ module anomalyAlert 'br/public:cost/subscription-scheduled-action:1.0.2' = {
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20deploy%20Cost%20Management%20scheduled%20actions%20with%20the%20FinOps%20toolkit%20bicep%20modules%3F/cvaQuestion/How%20valuable%20are%20the%20Cost%20Management%20scheduled%20actions%20bicep%20modules%3F/surveyId/FTK/bladeName/BicepRegistry/featureName/CostManagement.ScheduledActions)
+
If you're looking for a specific module or template, vote for an existing or create a new idea. Share your ideas with others. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+label%3A%22Tool%3A+Bicep+Registry%22+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/data-lake-storage-connectivity.md b/docs-mslearn/toolkit/data-lake-storage-connectivity.md
index 0740f22f7..106ab5dd2 100644
--- a/docs-mslearn/toolkit/data-lake-storage-connectivity.md
+++ b/docs-mslearn/toolkit/data-lake-storage-connectivity.md
@@ -3,7 +3,7 @@ title: Data Lake Storage connectivity options
description: Learn about tools and services that can connect to Data Lake Storage for FinOps analytics beyond Power BI, including Azure Data Explorer, Microsoft Fabric, and Azure Synapse Analytics.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps practitioner, I want to understand Data Lake Storage connectivity options outside of Power BI so that I can build custom reports that meet my organizational needs.
---
-
# Data Lake Storage connectivity options
As a FinOps practitioner, you may need to build custom reports and analytics solutions outside of Power BI to meet specific organizational requirements. Azure Data Lake Storage provides a central repository for your FinOps data that can be accessed by multiple tools and services for advanced analytics, custom applications, and integration scenarios.
@@ -26,8 +25,10 @@ Azure Data Explorer is a fast, highly scalable data exploration service for log
If you're using [FinOps hubs](hubs/finops-hubs-overview.md), Azure Data Explorer is automatically configured with pre-built data ingestion pipelines, optimized data models, sample dashboards and queries, and automated data processing.
+
> [!div class="nextstepaction"]
> [Configure Data Explorer dashboards](hubs/configure-dashboards.md)
+
@@ -37,8 +38,10 @@ Microsoft Fabric is an all-in-one analytics solution that combines data integrat
Fabric provides a unified analytics platform with OneLake storage, AI and machine learning capabilities, seamless Power BI integration, and support for real-time insights.
+
> [!div class="nextstepaction"]
> [Create a Fabric workspace for FinOps](../fabric/create-fabric-workspace-finops.md)
+
@@ -58,11 +61,13 @@ Azure Synapse Analytics is an enterprise data warehouse solution that combines b
Azure Synapse Analytics provides comprehensive documentation for connecting to and querying data in Data Lake Storage.
+
> [!div class="nextstepaction"]
-> [Query data in Azure Data Lake Storage with Synapse SQL](https://learn.microsoft.com/azure/synapse-analytics/sql/query-data-storage)
+> [Query data in Azure Data Lake Storage with Synapse SQL](/azure/synapse-analytics/sql/query-data-storage)
> [!div class="nextstepaction"]
-> [Create external tables in Synapse SQL](https://learn.microsoft.com/azure/synapse-analytics/sql/create-external-table-as-select)
+> [Create external tables in Synapse SQL](/azure/synapse-analytics/sql/create-external-table-as-select)
+
@@ -82,11 +87,13 @@ Azure Databricks is a unified analytics platform that provides collaborative Apa
Azure Databricks provides comprehensive documentation for connecting to and analyzing data in Data Lake Storage.
+
> [!div class="nextstepaction"]
-> [Connect to Azure Data Lake Storage from Databricks](https://learn.microsoft.com/azure/databricks/storage/azure-storage)
+> [Connect to Azure Data Lake Storage from Databricks](/azure/databricks/storage/azure-storage)
> [!div class="nextstepaction"]
-> [Machine learning with Databricks](https://learn.microsoft.com/azure/databricks/machine-learning/)
+> [Machine learning with Databricks](/azure/databricks/machine-learning/)
+
@@ -126,11 +133,13 @@ Data Lake Storage provides REST APIs and SDKs that enable you to build custom ap
Azure Data Lake Storage provides comprehensive SDKs and REST APIs for building custom applications.
+
> [!div class="nextstepaction"]
-> [Azure Data Lake Storage REST API](https://learn.microsoft.com/rest/api/storageservices/data-lake-storage-gen2)
+> [Azure Data Lake Storage REST API](/rest/api/storageservices/data-lake-storage-gen2)
> [!div class="nextstepaction"]
-> [Azure Data Lake Storage client libraries](https://learn.microsoft.com/azure/storage/blobs/data-lake-storage-directory-file-acl-dotnet)
+> [Azure Data Lake Storage client libraries](/azure/storage/blobs/data-lake-storage-directory-file-acl-dotnet)
+
@@ -138,14 +147,14 @@ Azure Data Lake Storage provides comprehensive SDKs and REST APIs for building c
The choice of tool depends on your specific requirements:
-| Tool | Best for | Complexity | Cost model |
-|------|----------|------------|------------|
-| **Azure Data Explorer** | Real-time analytics, KQL queries, built-in dashboards | Medium | Pay-per-use |
-| **Microsoft Fabric** | Unified analytics platform, AI/ML integration | Medium-High | Capacity-based |
-| **Azure Synapse** | Data warehousing, large-scale ETL, enterprise scenarios | High | Pay-per-use or dedicated |
-| **Azure Databricks** | Advanced analytics, machine learning, data science | High | Pay-per-use |
-| **Azure Machine Learning** | MLOps, automated ML, model deployment | High | Pay-per-use |
-| **Custom applications** | Specific integrations, custom workflows | Variable | Development cost |
+| Tool | Best for | Complexity | Cost model |
+| -------------------------- | ------------------------------------------------------- | ----------- | ------------------------ |
+| **Azure Data Explorer** | Real-time analytics, KQL queries, built-in dashboards | Medium | Pay-per-use |
+| **Microsoft Fabric** | Unified analytics platform, AI/ML integration | Medium-High | Capacity-based |
+| **Azure Synapse** | Data warehousing, large-scale ETL, enterprise scenarios | High | Pay-per-use or dedicated |
+| **Azure Databricks** | Advanced analytics, machine learning, data science | High | Pay-per-use |
+| **Azure Machine Learning** | MLOps, automated ML, model deployment | High | Pay-per-use |
+| **Custom applications** | Specific integrations, custom workflows | Variable | Development cost |
@@ -165,13 +174,17 @@ When connecting to Data Lake Storage, ensure proper security and governance:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20Data%20Lake%20Storage%20connectivity%20options%3F/cvaQuestion/How%20valuable%20are%20the%20Data%20Lake%20Storage%20connectivity%20options%3F/surveyId/FTK/bladeName/DataLakeConnectivity/featureName/Documentation)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
@@ -201,4 +214,4 @@ Related solutions:
- [FinOps toolkit Power BI reports](power-bi/reports.md)
- [FinOps toolkit open data](open-data.md)
-
\ No newline at end of file
+
diff --git a/docs-mslearn/toolkit/finops-toolkit-overview.md b/docs-mslearn/toolkit/finops-toolkit-overview.md
index 32ee19acc..0aa99155e 100644
--- a/docs-mslearn/toolkit/finops-toolkit-overview.md
+++ b/docs-mslearn/toolkit/finops-toolkit-overview.md
@@ -3,7 +3,7 @@ title: FinOps toolkit overview
description: Learn how the FinOps toolkit helps you automate and extend the Microsoft Cloud with starter kits, scripts, and advanced solutions to improve FinOps practices.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what the FinOps toolkit is and how it help me automate and extend the Microsoft Cloud.
---
-
# FinOps toolkit overview
The Microsoft FinOps toolkit is an open-source collection of learning resources and customizable tools to help you adopt and implement FinOps capabilities that automate and extend the Microsoft Cloud. It includes:
@@ -42,8 +41,10 @@ The FinOps toolkit is an ever-evolving collection of tools and resources. The fo
- [Services](open-data.md#services) – Microsoft consumed services, resource types, and FOCUS service categories.
- [Sample exports](open-data.md#dataset-examples) – Sample files from Cost Management exports.
+
> [!div class="nextstepaction"]
> [Download](https://aka.ms/ftk/latest)
+
@@ -63,8 +64,10 @@ The FinOps toolkit is an open source project. We have many ideas on the long-ter
Join our [biweekly office hours](https://aka.ms/ftk/office-hours) to ask questions and get live help from the team. Contributors can also join the [weekly contributor sync](https://aka.ms/ftk/contrib-sync) on Wednesdays at 8 AM Pacific / 4 PM UTC.
+
> [!div class="nextstepaction"]
> [How to contribute](https://github.com/microsoft/finops-toolkit/blob/main/CONTRIBUTING.md)
+
@@ -72,8 +75,10 @@ Join our [biweekly office hours](https://aka.ms/ftk/office-hours) to ask questio
All the main changes are tracked in the changelog. For more information, see the commit history.
+
> [!div class="nextstepaction"]
> [Explore the changelog](changelog.md)
+
@@ -81,13 +86,17 @@ All the main changes are tracked in the changelog. For more information, see the
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Toolkit/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/help/data-dictionary.md b/docs-mslearn/toolkit/help/data-dictionary.md
index 14ad93957..5f6a09a3f 100644
--- a/docs-mslearn/toolkit/help/data-dictionary.md
+++ b/docs-mslearn/toolkit/help/data-dictionary.md
@@ -3,7 +3,7 @@ title: FinOps toolkit data dictionary
description: This article describes the column names found in FinOps toolkit solutions, including columns from Cost Management and FOCUS.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand the columns included in FinOps toolkit solutions.
---
-
# FinOps toolkit data dictionary
This article describes column names found in FinOps toolkit solutions. Most of the columns in FinOps toolkit solutions originate in Cost Management or the FinOps Open Cost and Usage Specification (FOCUS).
@@ -256,13 +255,17 @@ If you have feedback about FOCUS, [create an issue in the FOCUS repository](http
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Toolkit/featureName/Help.DataDictionary)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/help/deploy.md b/docs-mslearn/toolkit/help/deploy.md
index 03c896cee..360a702bd 100644
--- a/docs-mslearn/toolkit/help/deploy.md
+++ b/docs-mslearn/toolkit/help/deploy.md
@@ -3,7 +3,7 @@ title: Deployment options
description: Learn how to use various options to deploy FinOps toolkit solutions, including ARM templates, Bicep modules, and quickstart templates.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what options I have to deploy FinOps toolkit tools.
---
-
# FinOps toolkit deployment options
The FinOps toolkit includes multiple ARM templates. Prerequisites, parameters, and post-deployment setup steps differ per template. For more information, see the following template details:
@@ -83,13 +82,17 @@ If you received any validation errors, fix them and attempt to create the resour
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Toolkit/featureName/Help.Deploy)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/help/errors.md b/docs-mslearn/toolkit/help/errors.md
index 77c4ff49f..c8bc43d5a 100644
--- a/docs-mslearn/toolkit/help/errors.md
+++ b/docs-mslearn/toolkit/help/errors.md
@@ -3,7 +3,7 @@ title: Troubleshoot common FinOps toolkit errors
description: This article describes common FinOps toolkit errors and provides solutions to help you resolve issues you might encounter.
author: flanakin
ms.author: micflan
-ms.date: 05/02/2025
+ms.date: 02/24/2026
ms.topic: troubleshooting
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand and resolve common errors I might experience with the FinOps toolkit.
---
-
# Troubleshoot common FinOps toolkit errors
This article describes common FinOps toolkit errors and provides information about solutions. If you get an error when using FinOps toolkit solutions that you don't understand or can't resolve, find the following corresponding error code with mitigation steps to resolve the problem.
@@ -78,7 +77,7 @@ If you experience the following error, it means that Azure Resource Graph is ret
There may be multiple instances of this error. The one known instance is when Key Vault returns the following error:
-> _A vault with the same name already exists in deleted state. You need to either recover or purge existing key vault. Follow this link https://go.microsoft.com/fwlink/?linkid=2149745 for more information on soft delete._
+> _A vault with the same name already exists in deleted state. You need to either recover or purge existing key vault. Follow this link for more information on soft delete._
This generally means you're deploying on top of an old deployment that was deleted, but Key Vault kept the old vault instance in a recoverable delete state.
@@ -156,17 +155,21 @@ This error indicates that the Data Explorer `.ingest` command detected errors du
**Mitigation steps**:
1. **Check ingestion failures in Data Explorer**:
+
- Connect to your Data Explorer cluster/database
- Run the following query to see detailed error information:
+
```kusto
.show ingestion failures
| where FailedOn > ago(4h) and Database == ""
| project FailedOn, Table, IngestionSourcePath, ErrorCode, Details
```
+
- Review the `Details` column for specific error messages about empty files, schema mismatches, or data issues
- Look for error codes like `BadRequest_NoRecordsOrWrongFormat` which indicates an empty file
2. **Check if the parquet file is empty**:
+
- Download the problematic parquet file from the ingestion container (path is in the error message)
- Use a parquet viewer tool or Azure Storage Explorer to inspect the file
- Check the file size - if it's very small (< 1KB), it's likely empty
@@ -174,32 +177,39 @@ This error indicates that the Data Explorer `.ingest` command detected errors du
- **If empty**: This is expected behavior when there's no data for the time period. The file can be safely deleted from the ingestion container. Cost Management may export empty files for months with no usage.
3. **Verify the ingestion mapping exists and is correct**:
+
- Run this query in Data Explorer to check if the mapping exists:
+
```kusto
.show table ingestion mappings
```
+
- If the mapping is missing, it needs to be recreated. Check the FinOps hub deployment logs for mapping creation errors.
- If the mapping exists, verify it matches the expected schema for your data source
4. **Check for schema changes**:
+
- If you recently updated Cost Management exports or changed export versions (e.g., from FOCUS 1.0 to 1.2), the schema may have changed
- Verify the export dataset version in the manifest.json file in the msexports container
- Confirm FinOps hubs supports the dataset version - see [supported datasets](../hubs/data-processing.md#datasets)
5. **Check Data Explorer diagnostics**:
+
- In the Azure portal, navigate to your Data Explorer cluster
- Go to **Monitoring** > **Diagnostic settings**
- Enable `FailedIngestion` diagnostic logs if not already enabled
- Review logs in Log Analytics for detailed error information
6. **Redeploy FinOps hubs if mappings are missing**:
+
- If ingestion mappings are missing or corrupted, redeploy FinOps hubs to recreate them
- This will recreate all tables, mappings, and functions without data loss
7. **Review Azure Data Explorer metrics**:
+
- Check the **Ingestion result** metric in Azure Monitor
- Filter by status to see success vs failure rates
- - See [Monitor queued ingestion](https://learn.microsoft.com/azure/data-explorer/monitor-queued-ingestion) for more details
+ - See [Monitor queued ingestion](/azure/data-explorer/monitor-queued-ingestion) for more details
8. **Rerun ingestion after fixing the issue**:
- After resolving the root cause, rerun the `ingestion_ExecuteETL` pipeline
@@ -209,12 +219,13 @@ This error indicates that the Data Explorer `.ingest` command detected errors du
**Additional resources**:
-- [Azure Data Explorer ingestion error codes](https://learn.microsoft.com/azure/data-explorer/error-codes)
-- [Ingestion behavior of invalid data](https://learn.microsoft.com/azure/data-explorer/ingest-invalid-data)
-- [Data Explorer ingestion overview](https://learn.microsoft.com/azure/data-explorer/ingest-data-overview)
-- [Kusto ingestion failures command](https://learn.microsoft.com/kusto/management/ingestion-failures)
+- [Azure Data Explorer ingestion error codes](/azure/data-explorer/error-codes)
+- [Ingestion behavior of invalid data](/azure/data-explorer/ingest-invalid-data)
+- [Data Explorer ingestion overview](/azure/data-explorer/ingest-data-overview)
+- [Kusto ingestion failures command](/kusto/management/ingestion-failures)
If you continue to experience this error after following these steps, please [report the issue](https://aka.ms/ftk/ideas) with the following information:
+
- Complete error message from the ADF pipeline
- Output from the `.show ingestion failures` query
- Dataset type and version from the manifest.json file
@@ -228,7 +239,7 @@ If you continue to experience this error after following these steps, please [re
Data Explorer ingestion mapping could not be created for the specified table.
-**Mitigation**: Please fix the error and rerun ingestion for the specified folder path. If you continue to see this error, please report an issue at https://aka.ms/ftk/ideas.
+**Mitigation**: Please fix the error and rerun ingestion for the specified folder path. If you continue to see this error, please report an issue at .
@@ -238,7 +249,7 @@ Data Explorer ingestion mapping could not be created for the specified table.
Data Explorer ingestion timed out after 2 hours while waiting for available capacity.
-**Mitigation**: Please re-run this pipeline to re-attempt ingestion. If you continue to see this error, please report an issue at https://aka.ms/ftk/ideas.
+**Mitigation**: Please re-run this pipeline to re-attempt ingestion. If you continue to see this error, please report an issue at .
@@ -249,30 +260,35 @@ Data Explorer ingestion timed out after 2 hours while waiting for available capa
Data Explorer post-ingestion cleanup (drop extents from the final table) failed. Data from a previous ingestion may be present in reporting, which could result in duplicated and inaccurate costs.
This error can occur when:
+
- The Data Explorer cluster is experiencing capacity issues or high resource utilization
- The drop extents command encounters an invalid expression or syntax error
- There are permission issues accessing the Data Explorer database
- Network connectivity issues between Data Factory and Data Explorer
-**Mitigation**:
+**Mitigation**:
1. **Review the detailed error message**: Navigate to Azure Data Factory > Monitor > Pipeline runs > Click on the failed run > View the "Post-Ingest Drop Failed Error" activity to see the specific Data Explorer error code and message.
2. **Common solutions based on error type**:
+
- **If you see "Failed to interpret Post-Ingest Drop Failed Error fail message or error code"**: This indicates the dynamic expression in the Fail activity couldn't be evaluated. This typically means:
+
- The `Post-Ingest Cleanup` activity failed but didn't return error details in the expected format
- Check the `Post-Ingest Cleanup` activity output for the actual Data Explorer error
- See [ErrorCodeNotString](#errorcodenotstring) for more details on this specific error pattern
-
- - **For capacity/resource issues**:
+
+ - **For capacity/resource issues**:
+
- Wait a few minutes and rerun the pipeline
- Check Data Explorer cluster metrics in Azure Monitor
- Consider scaling up the cluster if consistently hitting capacity limits
-
- - **For permission issues**:
+
+ - **For permission issues**:
+
- Verify the Data Factory managed identity has proper permissions on the Data Explorer database
- Ensure the managed identity has at least "Database Ingestor" and "Database Admin" roles
-
+
- **For syntax/expression errors**:
- Review the Data Explorer command logs using `.show commands` in the Data Explorer query editor
- Check for recent schema changes that might affect the drop extents query
@@ -282,11 +298,12 @@ This error can occur when:
4. **Prevent data duplication**: If the error persists, you may need to manually clean up duplicate extents using Data Explorer commands before rerunning ingestion. Contact support for assistance.
For more information, see:
-- [Azure Data Factory Fail activity error codes](https://learn.microsoft.com/azure/data-factory/control-flow-fail-activity#understand-the-fail-activity-error-code)
-- [Troubleshoot Azure Data Explorer connector](https://learn.microsoft.com/azure/data-factory/connector-troubleshoot-azure-data-explorer)
-- [Monitor Azure Data Explorer ingestion](https://learn.microsoft.com/azure/data-explorer/monitor-data-explorer)
-Report unresolved issues at https://aka.ms/ftk/ideas.
+- [Azure Data Factory Fail activity error codes](/azure/data-factory/control-flow-fail-activity#understand-the-fail-activity-error-code)
+- [Troubleshoot Azure Data Explorer connector](/azure/data-factory/connector-troubleshoot-azure-data-explorer)
+- [Monitor Azure Data Explorer ingestion](/azure/data-explorer/monitor-data-explorer)
+
+Report unresolved issues at .
@@ -298,20 +315,23 @@ Data Explorer pre-ingestion cleanup (drop extents from the raw table) failed. In
This error occurs when the Data Explorer cleanup step that runs before ingesting new data fails. This cleanup is necessary to prevent duplicate data in the raw tables.
-**Mitigation**:
+**Mitigation**:
1. **Review the detailed error message**: Navigate to Azure Data Factory > Monitor > Pipeline runs > Click on the failed run > View the "Pre-Ingest Drop Failed Error" activity to see the specific Data Explorer error code and message.
2. **Common solutions based on error type**:
+
- **If you see "Failed to interpret Pre-Ingest Drop Failed Error fail message or error code"**: See [ErrorCodeNotString](#errorcodenotstring) for troubleshooting steps.
-
- - **For capacity/resource issues**:
+
+ - **For capacity/resource issues**:
+
- Wait a few minutes and rerun the pipeline
- Check Data Explorer cluster metrics in Azure Monitor
-
- - **For permission issues**:
+
+ - **For permission issues**:
+
- Verify the Data Factory managed identity has "Database Admin" role on the Data Explorer database
-
+
- **For syntax/expression errors**:
- Review the Data Explorer command logs using `.show commands` in the Data Explorer query editor
@@ -319,7 +339,7 @@ This error occurs when the Data Explorer cleanup step that runs before ingesting
For more information, see the mitigation steps for [DataExplorerPostIngestionDropFailed](#dataexplorerpostingestiondropfailed).
-Report unresolved issues at https://aka.ms/ftk/ideas.
+Report unresolved issues at .
@@ -371,9 +391,10 @@ Microsoft Customer Agreements are not supported for managed exports.
Severity: Critical
-This error occurs when an Azure Data Factory Fail activity cannot evaluate its dynamic error message or error code expression to a valid string. The error message typically appears as "Failed to interpret *[activity_name]* fail message or error code" with error code `ErrorCodeNotString`.
+This error occurs when an Azure Data Factory Fail activity cannot evaluate its dynamic error message or error code expression to a valid string. The error message typically appears as "Failed to interpret _[activity_name]_ fail message or error code" with error code `ErrorCodeNotString`.
**Common scenarios**:
+
- A parent activity (like `Post-Ingest Cleanup`, `Pre-Ingest Cleanup`, or `Ingest Data`) failed but didn't produce error output in the expected format
- The dynamic expression tries to access a property that doesn't exist in the activity output
- The activity output is null, empty, or not in the expected JSON structure
@@ -383,6 +404,7 @@ This error occurs when an Azure Data Factory Fail activity cannot evaluate its d
1. **Identify the root cause activity**: Look at which activity triggered the Fail activity (e.g., if you see "Post-Ingest Drop Failed Error", check the "Post-Ingest Cleanup" activity).
2. **Review the parent activity output**:
+
- Navigate to Azure Data Factory > Monitor > Pipeline runs
- Click on the failed pipeline run
- Find and click on the activity that ran just before the Fail activity
@@ -390,21 +412,23 @@ This error occurs when an Azure Data Factory Fail activity cannot evaluate its d
- Look for any error messages or codes that explain why the activity failed
3. **Check for Data Explorer-specific issues** (for ingestion pipeline errors):
+
- **Resource capacity**: The Data Explorer cluster might be at capacity. Check cluster metrics in Azure Monitor.
- **Command syntax errors**: Review Data Explorer command history using `.show commands` in the query editor.
- **Permission issues**: Verify the managed identity has proper database permissions.
- **Network connectivity**: Ensure Data Factory can reach the Data Explorer cluster.
4. **Common Data Explorer troubleshooting commands**:
+
```kusto
// Check recent failed operations
.show operations
| where StartedOn > ago(4h) and State == "Failed"
-
+
// Check ingestion failures
.show ingestion failures
| where FailedOn > ago(4h)
-
+
// Check command history
.show commands
| where StartedOn > ago(4h)
@@ -413,16 +437,18 @@ This error occurs when an Azure Data Factory Fail activity cannot evaluate its d
5. **After resolving the underlying issue**: Rerun the failed pipeline from Azure Data Factory.
**Related errors**: This error is often seen in conjunction with:
+
- [DataExplorerPostIngestionDropFailed](#dataexplorerpostingestiondropfailed)
- [DataExplorerPreIngestionDropFailed](#dataexplorerpreingestiondropfailed)
- [DataExplorerIngestionFailed](#dataexploreringestionfailed)
For more information, see:
-- [Azure Data Factory Fail activity documentation](https://learn.microsoft.com/azure/data-factory/control-flow-fail-activity#understand-the-fail-activity-error-code)
-- [Troubleshoot Azure Data Factory pipelines](https://learn.microsoft.com/azure/data-factory/data-factory-troubleshoot-guide)
-- [Azure Data Explorer troubleshooting guide](https://learn.microsoft.com/azure/data-explorer/troubleshoot-database-table)
-Report unresolved issues at https://aka.ms/ftk/ideas.
+- [Azure Data Factory Fail activity documentation](/azure/data-factory/control-flow-fail-activity#understand-the-fail-activity-error-code)
+- [Troubleshoot Azure Data Factory pipelines](/azure/data-factory/data-factory-troubleshoot-guide)
+- [Azure Data Explorer troubleshooting guide](/azure/data-explorer/troubleshoot-database-table)
+
+Report unresolved issues at .
@@ -463,6 +489,7 @@ Microsoft Fabric Real-Time Intelligence may return an "InternalServiceError (520
The exact reason for this error is unknown. If you experience it, please file a support request with Microsoft Fabric to investigate further.
+
**Mitigation**: As a workaround, change the minimum consumption for the Fabric eventhouse to **Medium (18 CUs)**, wait 30 minutes, and rerun the **ingestion_ExecuteETL** pipeline for that dataset and month. To learn more minimum consumption, see [Minimum consumption](/fabric/real-time-intelligence/manage-monitor-eventhouse#enable-minimum-consumption) in the eventhouse overview.
@@ -561,12 +588,14 @@ FinOps hub **msexports_ExecuteETL** pipeline failed to read the Cost Management
To confirm the manifest schema (\#1) or API version (\#2):
+
1. Open the hub storage account in the Azure portal or storage explorer.
2. If in the Azure portal, go to **Storage browser** in the menu.
3. Select the **msexports** container.
4. Navigate down the file hierarchy for the export with the issue (see the manifest location in the error message).
5. Find the **manifest.json** file and select the menu (**⋯**), then select **View/edit**.
6. Identify the following properties:
+
```json
{
"exportConfig": {
@@ -579,6 +608,7 @@ To confirm the manifest schema (\#1) or API version (\#2):
...
}
```
+
7. Confirm they're set to the following supported values:
- **resourceId** can be any scope ID and any export name, but it must exist with the "Microsoft.CostManagement/exports" resource type. It's case-insensitive.
- **type** must exist, but shouldn't fail with this error for any non-null value.
@@ -588,14 +618,15 @@ To confirm the manifest schema (\#1) or API version (\#2):
1. To track adding support for the new API version, [create a change request issue in GitHub](https://aka.ms/ftk/ideas).
2. Delete the export in Cost Management.
3. Create an export using the [New-FinOpsCostExport PowerShell command](../powershell/cost/New-FinOpsCostExport.md) using a supported API version.
- >[!TIP]
- >If you consider yourself a power user, you may want to try updating the pipeline yourself for the quickest resolution. To do that, open Data Factory, navigate to Author > Pipelines > msexports_ExecuteETL, and select the applicable "Set" activities and update the **Settings** > **Value** property as needed. If you do this, you do not need to re-create the export with an older version. Please still report the issue and consider sharing the new JSON from the `{}` icon at the top-right of the pipeline designer._
+ > [!TIP]
+ > If you consider yourself a power user, you may want to try updating the pipeline yourself for the quickest resolution. To do that, open Data Factory, navigate to Author > Pipelines > msexports*ExecuteETL, and select the applicable "Set" activities and update the **Settings** > **Value** property as needed. If you do this, you do not need to re-create the export with an older version. Please still report the issue and consider sharing the new JSON from the `{}` icon at the top-right of the pipeline designer.*
9. If you notice the properties changed for a supported API version:
1. To track the breaking change, [create a change request issue in GitHub](https://aka.ms/ftk/ideas). Include the **type**, **dataVersion**, and **apiVersion** from your manifest.json file.
2. File a support request with Cost Management to request their change be reverted as it breaks everyone using FinOps hubs or other custom solutions. Include the following details to help the Cost Management support team identify the issue within their system. Cost Management doesn't have context about FinOps hubs, so you should keep the details focused on Cost Management functionality. Here's an example:
> I am using Cost Management exports to pull my cost data into ADLS. I have an ADF pipeline that is processing the data when manifest files are written. My pipeline was built on API version `` which expects `exportConfig.resourceId`, `exportConfig.type`, and `exportConfig.dataVersion` properties to be delivered consistently. I noticed these files are not being included in the manifest file for this API version for my export that ran on ``. My expectation is that the manifest file should never change for an existing API version. Can you please revert these changes?
>
> To help you troubleshoot, here is my manifest file: {your-manifest-json}
+
If the manifest properties look good and it was a new or upgraded FinOps hub instance, confirm the deployment:
@@ -815,7 +846,7 @@ The file in hub storage doesn't look like it was exported from Cost Management.
This error code is shown in the `x_SourceChanges` column when a FOCUS version could not be identified.
-**Mitigation**: Validate that the FOCUS dataset is using a supported FOCUS version. Report this issue with an anonymized sample of the data at https://aka.ms/ftk/ideas to investigate further.
+**Mitigation**: Validate that the FOCUS dataset is using a supported FOCUS version. Report this issue with an anonymized sample of the data at to investigate further.
@@ -870,9 +901,9 @@ If you see these values, re-export the cost data for that month. If you need to
## Power BI: Reports are missing data for specific dates
-If your report is missing all data for one or more months, check the **Number of Months**, **RangeStart**, and **RangeEnd** parameters to ensure the data isn't being filtered out.
+If your report is missing all data for one or more months, check the **Number of Months**, **RangeStart**, and **RangeEnd** parameters to ensure the data isn't being filtered out.
-To check parameters, select **Transform data** > **Edit parameters** in the ribbon or select the individual parameters in the **🛠️ Setup** folder from the query editor window.
+To check parameters, select **Transform data** > **Edit parameters** in the ribbon or select the individual parameters in the **🛠️ Setup** folder from the query editor window.
- If you want to always show a specific number of recent months, set **Number of Months** to the number of closed (completed) months. The current month is an extra month in addition to the closed number of months.
- If you want a fixed date range that doesn't change over time (for example, fiscal year reporting), set **RangeStart** and **RangeEnd**.
@@ -942,6 +973,7 @@ This error can occur when connecting Power BI storage reports to a storage accou
- Copy the **Data Lake Storage** URL (not the Blob service URL)
For example:
+
- ❌ Incorrect: `https://mystorageaccount.blob.core.windows.net/container`
- ✅ Correct: `https://mystorageaccount.dfs.core.windows.net/container`
@@ -971,13 +1003,17 @@ If you're facing an error not listed above or need more help, file a [support re
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Toolkit/featureName/Help.DataDictionary)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/help/help-options.md b/docs-mslearn/toolkit/help/help-options.md
index 2352c32ff..645b592de 100644
--- a/docs-mslearn/toolkit/help/help-options.md
+++ b/docs-mslearn/toolkit/help/help-options.md
@@ -3,7 +3,7 @@ title: Help and support options
description: This article summarizes the options for getting help and support for common issues you might experience in the FinOps toolkit.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how I can get help and support for the FinOps toolkit.
---
-
# Help + support
Have questions about implementing FinOps within your org? Start with [FinOps discussions](https://techcommunity.microsoft.com/category/azure/discussions/finops).
diff --git a/docs-mslearn/toolkit/help/support.md b/docs-mslearn/toolkit/help/support.md
index b96a10535..97164795a 100644
--- a/docs-mslearn/toolkit/help/support.md
+++ b/docs-mslearn/toolkit/help/support.md
@@ -3,7 +3,7 @@ title: Get support for FinOps toolkit issues
description: This article explains how to get support for issues with FinOps toolkit solutions, including reporting security issues and troubleshooting.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,8 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what the support options I have for FinOps toolkit solutions.
---
-
-
# How to get support for the FinOps toolkit
Tools and resources within the FinOps toolkit are provided as-is without any express or implied warranties. Microsoft Support doesn't handle support requests for the FinOps toolkit. However, the underlying products used by tools in the toolkit are officially supported.
diff --git a/docs-mslearn/toolkit/help/terms.md b/docs-mslearn/toolkit/help/terms.md
index f9ee452be..86786cad8 100644
--- a/docs-mslearn/toolkit/help/terms.md
+++ b/docs-mslearn/toolkit/help/terms.md
@@ -3,7 +3,7 @@ title: Common terms
description: This article defines common terms used in the FinOps toolkit to help users understand the data and insights provided.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand common terms used in the FinOps toolkit.
---
-
# Common terms
This article describes common terms and definitions used throughout the FinOps toolkit. These terms are used to help you understand the data and insights provided by the toolkit.
@@ -108,13 +107,17 @@ See also: [Microsoft Partner Agreement](#microsoft-partner-agreement-mpa)
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Toolkit/featureName/Help.CommonTerms)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/help/troubleshooting.md b/docs-mslearn/toolkit/help/troubleshooting.md
index 8fb9041a8..f57b68858 100644
--- a/docs-mslearn/toolkit/help/troubleshooting.md
+++ b/docs-mslearn/toolkit/help/troubleshooting.md
@@ -3,7 +3,7 @@ title: Troubleshooting FinOps toolkit issues
description: This article describes how to validate that FinOps toolkit solutions are deployed and configured correctly, including troubleshooting common errors.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: troubleshooting
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,8 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to validate FinOps toolkit solutions are deployed and configured correctly.
---
-
-
# FinOps toolkit troubleshooting guide
This article describes how to validate FinOps toolkit solutions were deployed and configured correctly. If you have a specific error code, review [common errors](errors.md) for details and mitigation steps. If you need a more thorough walkthrough to validate your configuration, use the following steps that apply to you.
@@ -228,13 +226,17 @@ If you've followed the troubleshooting steps and still need assistance, join our
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Toolkit/featureName/Help.Troubleshooting)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/compatibility.md b/docs-mslearn/toolkit/hubs/compatibility.md
index 58d2232d9..9aa3b3493 100644
--- a/docs-mslearn/toolkit/hubs/compatibility.md
+++ b/docs-mslearn/toolkit/hubs/compatibility.md
@@ -3,7 +3,7 @@ title: Compatibility guide
description: Learn which Power BI report versions are compatible with each FinOps hubs version to ensure seamless upgrades and data integrity.
author: flanakin
ms.author: micflan
-ms.date: 01/29/2026
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps toolkit user, I want to learn about which versions of Power BI reports work with each version of FinOps hubs so that I can use them.
---
-
# FinOps hubs compatibility guide
FinOps hubs support in-place upgrades by redeploying the template. But what happens with the data? Might it break Power BI reports? What about my customized reports? This guide helps you identify what dependencies need to change when moving from one version of FinOps hubs to another. If you have any questions, [start a discussion](https://aka.ms/ftk/discuss).
@@ -56,8 +55,10 @@ The Power BI version refers to the Power BI reports made available within that s
Did this guide give you the answers you needed? If not, ask a question in the discussion forums. We're here to help!
+
> [!div class="nextstepaction"]
> [Ask a question](https://aka.ms/ftk/discuss)
+
@@ -65,13 +66,17 @@ Did this guide give you the answers you needed? If not, ask a question in the di
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/Compatibility)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3Areactions-%2B1-desc%20)
+
diff --git a/docs-mslearn/toolkit/hubs/configure-ai.md b/docs-mslearn/toolkit/hubs/configure-ai.md
index 8e29c0377..15b43e8d4 100644
--- a/docs-mslearn/toolkit/hubs/configure-ai.md
+++ b/docs-mslearn/toolkit/hubs/configure-ai.md
@@ -3,7 +3,7 @@ title: Configure AI agents for FinOps hubs
description: Learn how to configure an AI agent to connect to your FinOps hub instance.
author: flanakin
ms.author: micflan
-ms.date: 06/05/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps hub admin, I want to connect an AI agent to my FinOps hub instance so that I can analyze my costs.
---
-
# Configure and use AI agents
Artificial Intelligence (AI) agents are revolutionizing the way people and applications engage with data by integrating large language models (LLMs) with external tools and databases. Agents streamline complex workflows, improve the accuracy of information retrieval, and provide an intuitive, natural language interface to your data. This article describes how to train an AI agent to understand [FinOps](../../overview.md), the [FinOps Open Cost and Usage Specification (FOCUS)](../../focus/what-is-focus.md), and connect to data in a FinOps hub instance.
@@ -174,13 +173,17 @@ These are just a few examples of the types of requests you can get answers to to
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/ConfigureAI)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/configure-dashboards.md b/docs-mslearn/toolkit/hubs/configure-dashboards.md
index a40b8213a..3eb9784e5 100644
--- a/docs-mslearn/toolkit/hubs/configure-dashboards.md
+++ b/docs-mslearn/toolkit/hubs/configure-dashboards.md
@@ -3,7 +3,7 @@ title: Configure Data Explorer dashboards for FinOps hubs
description: Deploy a pre-built Azure Data Explorer dashboard for FinOps hubs to start analyzing cost and usage for your accounts.
author: flanakin
ms.author: micflan
-ms.date: 04/29/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,7 @@ ms.reviewer: micflan
# customer intent: As a FinOps hub admin, I want to deploy an Azure Data Explorer dashboard so that I can analyze my costs.
---
-
+
# Configure Data Explorer dashboards
Azure Data Explorer and Microsoft Fabric eventhouses are fast and highly scalable data exploration services. You can explore data in Microsoft Fabric or the [Azure Data Explorer web application](https://dataexplorer.azure.com) by running queries or building dashboards. A dashboard is a collection of queries visualized as tiles and organized into pages. The FinOps toolkit provides a custom dashboard with pages design to facilitate FinOps capabilities. This article walks you through the process of deploying and configuring this dashboard.
@@ -31,7 +31,6 @@ This walkthrough does not incur any cost; however, maintaining an active Data Ex
## Deploy the dashboard
-
### [Data Explorer](#tab/data-explorer)
1. Download the [latest dashboard template](https://github.com/microsoft/finops-toolkit/releases/latest/download/finops-hub-dashboard.json).
@@ -56,7 +55,6 @@ This walkthrough does not incur any cost; however, maintaining an active Data Ex
Note that Data Explorer dashboards are only accessible to the person who creates them by default. Access to the data is controlled at the database level, so access to a dashboard does not grant access to the underlying data. Be sure to share access to the dashboard and the **Hub** and **Ingestion** databases in order for people to see the functional dashboard.
-
### [Fabric](#tab/fabric)
1. [Download the dashboard template](https://github.com/microsoft/finops-toolkit/releases/latest/download/finops-hub-dashboard.json).
@@ -86,14 +84,12 @@ You can now explore the FinOps hub dashboard.
The FinOps hub dashboard is a sample dashboard that is intended to be customized. We encourage you to customize the dashboard to meet specific stakeholder needs and copy queries to other dashboards. To learn more about creating and customizing dashboards, refer to the following articles:
-
### [Data Explorer](#tab/data-explorer)
- [Visualize data with Azure Data Explorer dashboards](/azure/data-explorer/azure-data-explorer-dashboards)
- [Customize dashboard visuals](/azure/data-explorer/dashboard-customize-visuals)
- [Apply conditional formatting](/azure/data-explorer/dashboard-conditional-formatting)
-
### [Fabric](#tab/fabric)
- [Create a real-time dashboard](/fabric/real-time-intelligence/dashboard-real-time-create)
@@ -159,13 +155,17 @@ You may also consider using [Azure workbooks](/azure/azure-monitor/visualize/wor
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/ConfigureScopes)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/configure-scopes.md b/docs-mslearn/toolkit/hubs/configure-scopes.md
index 0ba104178..9c3b1f10d 100644
--- a/docs-mslearn/toolkit/hubs/configure-scopes.md
+++ b/docs-mslearn/toolkit/hubs/configure-scopes.md
@@ -3,7 +3,7 @@ title: Configure scopes for FinOps hubs
description: Connect FinOps hubs to billing accounts and subscriptions by configuring Cost Management exports manually or give FinOps hubs access to manage exports for you.
author: flanakin
ms.author: micflan
-ms.date: 04/29/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,8 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps toolkit user, I want to learn about how to connect FinOps hubs to billing accounts and subscriptions so that I can do it.
---
-
-
# Configure scopes
Connect FinOps hubs to your billing accounts and subscriptions by configuring Cost Management exports manually or granting FinOps hubs access to manage exports for you.
@@ -117,7 +115,7 @@ Cost Management provides the following 5 types of exports:
FinOps hubs support the following dataset types, versions, and API versions:
-- FocusCost: 1.0r2, 1.0, 1.0-preview(v1)
+- FocusCost: 1.2-preview, 1.0r2, 1.0, 1.0-preview(v1)
- PriceSheet: 2023-05-01
- ReservationDetails: 2023-03-01
- ReservationRecommendations: 2023-05-01
@@ -132,7 +130,10 @@ For the most seamless experience, we recommend [allowing FinOps hubs to manage e
If you can't grant permissions for your scope, you can create Cost Management exports manually to accomplish the same goal.
+
+
1. Determine the scope for your data export.
+
- For information about finding your billing account and scope IDs, see [Find your billing account and scope IDs](#find-your-billing-account-and-scope-ids).
- We recommend exporting from either an **EA billing account** or **MCA billing profile** scope to access additional datasets, including price sheets and reservation recommendations.
- Price sheet exports are required to populate missing prices and costs.
@@ -148,6 +149,7 @@ If you can't grant permissions for your scope, you can create Cost Management ex
> - Reservation details
>
> You must use the billing profile scope (`/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###`) for these exports. This is a Cost Management limitation.
+
- We recommend creating daily exports for each export type supported at your chosen billing scope:
- Enterprise Agreement billing account: FocusCosts, Pricesheet, ReservationTransactions, ReservationDetails, ReservationRecommendations
- Microsoft Customer Agreement billing profile: FocusCosts, Pricesheet, ReservationTransactions, ReservationDetails, ReservationRecommendations
@@ -155,7 +157,7 @@ If you can't grant permissions for your scope, you can create Cost Management ex
2. [Create a new FOCUS cost export](/azure/cost-management-billing/costs/tutorial-export-acm-data) using the following settings:
- **Type of data** = `Cost and usage details (FOCUS)`¹
- - **Dataset version** = `1.0` or `1.0r2`²
+ - **Dataset version** = `1.0`, `1.0r2`, or `1.2-preview`²
- **Frequency** = `Daily export of month-to-date costs`³
- **Storage account** = (Use subscription/resource deployed with your hub)
- **Container** = `msexports`
@@ -186,8 +188,12 @@ If you can't grant permissions for your scope, you can create Cost Management ex
- If you want to backfill data, open the export details and select the **Export selected dates** command to export one month at a time or use the [Start-FinOpsCostExport PowerShell command](../powershell/cost/Start-FinOpsCostExport.md) to export a larger date range with either the `-Backfill` parameter or specific start and end dates.
6. **Repeat steps 1-5 for each additional scope you want to monitor** (multiple billing accounts, subscriptions, etc.).
+
+
+
> [!IMPORTANT]
> **Configuring multiple scopes**: When setting up multiple scopes, ensure each has a unique directory path to prevent data conflicts. You can monitor multiple EA billing accounts, MCA billing profiles, subscriptions, and resource groups within a single FinOps hub instance.
+
_¹ FinOps hubs 0.2 and later requires FOCUS cost data. As of July 2024, the option to export FOCUS cost data is only accessible from the central Cost Management experience in the Azure portal. If you don't see this option, search for or navigate to [Cost Management Exports](https://portal.azure.com/#blade/Microsoft_Azure_CostManagement/Menu/open/exports)._
@@ -213,6 +219,7 @@ Managed exports allow FinOps hubs to set up and maintain Cost Management exports
Managed exports use a managed identity (MI) to configure the exports automatically. To set it up, use the following steps:
1. **Grant access to Azure Data Factory.**
+
- From the FinOps hub resource group, navigate to **Deployments** > **hub** > **Outputs**, and make note of the values for **managedIdentityId** and **managedIdentityTenantId**. You'll use them in the next step.
- Use the following guides to assign access to each scope you want to monitor:
- EA enrollments – [Assign enrollment reader role permission](/azure/cost-management-billing/manage/assign-roles-azure-service-principals#assign-enrollment-account-role-permission-to-the-spn).
@@ -243,6 +250,7 @@ Managed exports use a managed identity (MI) to configure the exports automatical
-->
2. **Add the desired scopes.**
+
1. From the FinOps hub resource group, open the storage account and navigate to **Storage browser** > **Blob containers** > **config**.
2. Select the **settings.json** file, then select **⋯** > **View/edit** to open the file.
3. Update the **scopes** property to include the scopes you want to monitor. For more information, see [Settings.json scope examples](#settingsjson-scope-examples).
@@ -260,6 +268,7 @@ Managed exports use a managed identity (MI) to configure the exports automatical
Use the **config_RunBackfillJob** pipeline to process historical data after it's been exported. For more information about running Azure Data Factory pipelines, see [Azure Data Factory pipelines](/azure/data-factory/concepts-pipelines-activities).
To run the pipeline from the Azure portal:
+
1. From the FinOps hub resource group, open the Data Factory instance, select **Launch Studio**, and navigate to **Author** > **Pipelines** > **config_RunBackfillJob**.
2. Select **Debug** in the command bar to run the pipeline. The total run time varies depending on the retention period and number of scopes you're monitoring.
@@ -280,6 +289,7 @@ Managed exports use a managed identity (MI) to configure the exports automatical
#### Option 2: Using Cost Management exports
You can backfill multiple months of data directly using the Cost Management UI. Learn more about exports in the [Cost Management exports documentation](/azure/cost-management-billing/costs/tutorial-export-acm-data).
+
1. Open the Azure portal and navigate to **Cost Management** > **Exports**.
2. Select the managed export created by your FinOps hub.
3. Select **Export selected dates** from the top menu.
@@ -416,13 +426,17 @@ If it's the first time you're using the FinOps toolkit PowerShell module, refer
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/ConfigureScopes)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/data-model.md b/docs-mslearn/toolkit/hubs/data-model.md
index b8a030519..1f3818b2f 100644
--- a/docs-mslearn/toolkit/hubs/data-model.md
+++ b/docs-mslearn/toolkit/hubs/data-model.md
@@ -3,7 +3,7 @@ title: FinOps hubs data model
description: Learn about the tables and functions available in FinOps hubs to build your own queries, reports, and dashboards.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps hub user, I want to learn about the data model so that I can build custom queries, reports, and dashboards.
---
-
# FinOps hub data model
FinOps hubs are a platform for cost analytics, insights, and optimization. While the core of FinOps hubs is a data pipeline that ingests, cleans, and normalizes data, the power of FinOps hubs comes from the standardized data model built on the FinOps Open Cost and Usage Specification (FOCUS).
@@ -719,26 +718,30 @@ The **Recommendations_raw** table supports Microsoft Cost Management reservation
Columns in the **Recommendations** managed dataset include:
-| Column | Type | Notes |
-| --------------------------- | -------- | ------------------------------------ |
-| ProviderName | String | Source: Microsoft EA+MCA 2023-05-01. |
-| ResourceId | String | |
-| ResourceName | String | |
-| ResourceType | String | |
-| SubAccountId | String | Source: Microsoft EA+MCA 2023-05-01. |
-| SubAccountName | String | |
-| x_EffectiveCostAfter | Real | Source: Microsoft EA+MCA 2023-05-01. |
-| x_EffectiveCostBefore | Real | Source: Microsoft EA+MCA 2023-05-01. |
-| x_EffectiveCostSavings | Real | Source: Microsoft EA+MCA 2023-05-01. |
-| x_IngestionTime | Datetime | Source: Hubs add-on. |
-| x_RecommendationDate | Datetime | Source: Microsoft EA+MCA 2023-05-01. |
-| x_RecommendationDescription | String | Source: Hubs add-on. |
-| x_RecommendationDetails | Dynamic | Source: Microsoft EA+MCA 2023-05-01. |
-| x_ResourceGroupName | String | |
-| x_SourceName | String | Source: Hubs add-on. |
-| x_SourceProvider | String | Source: Hubs add-on. |
-| x_SourceType | String | Source: Hubs add-on. |
-| x_SourceVersion | String | Source: Hubs add-on. |
+| Column | Type | Notes |
+| --------------------------- | -------- | ------------------------------------------------------------- |
+| ProviderName | String | Source: Microsoft EA+MCA 2023-05-01. |
+| ResourceId | String | |
+| ResourceName | String | |
+| ResourceType | String | |
+| SubAccountId | String | Source: Microsoft EA+MCA 2023-05-01. |
+| SubAccountName | String | |
+| x_EffectiveCostAfter | Real | Source: Microsoft EA+MCA 2023-05-01. |
+| x_EffectiveCostBefore | Real | Source: Microsoft EA+MCA 2023-05-01. |
+| x_EffectiveCostSavings | Real | Source: Microsoft EA+MCA 2023-05-01. |
+| x_IngestionTime | Datetime | Source: Hubs add-on. |
+| x_RecommendationCategory | String | Source: Hubs recommendations. |
+| x_RecommendationDate | Datetime | Source: Microsoft EA+MCA 2023-05-01. |
+| x_RecommendationDescription | String | Source: Hubs add-on. |
+| x_RecommendationDetails | Dynamic | Contains source-specific metadata. See notes below the table. |
+| x_RecommendationId | String | Source: Hubs recommendations. |
+| x_ResourceGroupName | String | |
+| x_SourceName | String | Source: Hubs add-on. |
+| x_SourceProvider | String | Source: Hubs add-on. |
+| x_SourceType | String | Source: Hubs add-on. |
+| x_SourceVersion | String | Source: Hubs add-on. |
+
+The **x_RecommendationDetails** column is a dynamic object that contains source-specific metadata. For Cost Management reservation recommendations, it includes commitment discount details like scope, term, SKU, and region. For hubs recommendations, it includes the recommendation provider, solution, type ID, resource type, and any additional properties from the query.
@@ -894,12 +897,16 @@ The **VirtualMachines** table in Power BI reports that queries Azure virtual mac
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/ConfigureScopes)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/data-processing.md b/docs-mslearn/toolkit/hubs/data-processing.md
index be6b6980b..e2f913ad3 100644
--- a/docs-mslearn/toolkit/hubs/data-processing.md
+++ b/docs-mslearn/toolkit/hubs/data-processing.md
@@ -3,7 +3,7 @@ title: FinOps hubs data processing
description: Learn how FinOps hubs process data, including scope setup, data normalization, and optimization, to enhance cost management and analysis.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how data is processed in FinOps hubs so that I can better understand how to use the tool.
---
-
# How data is processed in FinOps hubs
FinOps hubs perform many data processing activities to clean up, normalize, and optimize data. The following sections show how data flows from Cost Management into a hub instance.
@@ -55,7 +54,8 @@ The following diagram depicts the end-to-end data ingestion process within FinOp
4. After ingestion, the **ingestion_ETL_dataExplorer** pipeline performs some cleanup, including purging data in the final table that is past the data retention period.
- As of 0.7, Data Explorer applies data retention in raw tables while data retention in final tables is applied by the ingestion pipeline. If data ingestion stops, historical data isn't purged.
- Data retention can be configured during the template deployment or manually in the **config/settings.json** file in storage.
-6. Reports and other tools like Power BI read data from Data Explorer or the **ingestion** container.
+6. (Optional) The **queries_DailySchedule** trigger runs the **queries_ExecuteETL** pipeline once per day to query Azure Resource Graph for additional recommendations and saves results to the **ingestion/Recommendations** folder. [Learn more](configure-recommendations.md).
+7. Reports and other tools like Power BI read data from Data Explorer or the **ingestion** container.
- Data in Data Explorer can be read from the **Hub** database.
- Use the `{dataset}()` function to use the latest schema.
- This function is useful for quick exploration, but may introduce breaking changes as the FinOps hub instance is updated.
@@ -247,7 +247,7 @@ ingestion/{dataset}/{date-folder-path}/{scope-id-path}/{ingestion-id}__{original
```
- `ingestion` is the container where the data pipeline saves data.
-- `{dataset}` is the exported dataset type. If ingesting into Azure Data Explorer, the **Ingestion** database must have a matching, case-sensitive "_raw" table (for example, "Costs_raw"). FinOps hubs support the following datasets in this release:
+- `{dataset}` is the exported dataset type. If ingesting into Azure Data Explorer, the **Ingestion** database must have a matching, case-sensitive "\_raw" table (for example, "Costs_raw"). FinOps hubs support the following datasets in this release:
- **CommitmentDiscountUsage** - Cost Management reservation details export.
- **Costs** - FOCUS cost and usage data.
- **Prices** - Cost Management price sheet export.
@@ -319,7 +319,7 @@ To ingest CSV file from Cost Management exports, save files in a specific folder
FinOps hubs support the following dataset types, versions, and API versions:
-- FocusCost: `1.0r2`, `1.0`, `1.0-preview(v1)`
+- FocusCost: `1.2-preview`, `1.0r2`, `1.0`, `1.0-preview(v1)`
- PriceSheet: `2023-05-01`
- ReservationDetails: `2023-03-01`
- ReservationRecommendations: `2023-05-01`
@@ -335,6 +335,7 @@ The following sections explain data process in FinOps hubs 0.6.
### Scope setup in v0.6
The following steps happen when a new, managed scope is added to a hub instance. Unmanaged scopes (where Cost Management exports are manually configured) don't require any setup in hubs.
+
+
> [!WARNING]
- > - Don't export data to the **ingestion** container. Exported CSVs **must** be published to the **msexports** container to be processed by the hubs engine.
- > - To ingest custom data, save FOCUS-aligned parquet files in the **ingestion** container for the FinOps toolkit Power BI reports to work as expected.
-
+> - Don't export data to the **ingestion** container. Exported CSVs **must** be published to the **msexports** container to be processed by the hubs engine.
+> - To ingest custom data, save FOCUS-aligned parquet files in the **ingestion** container for the FinOps toolkit Power BI reports to work as expected.
+
Export manifests can change with API versions. Here's an example with API version `2023-07-01-preview`:
@@ -620,7 +623,6 @@ msexports/{scope-id}/{export-name}/{date-range}/{export-time}/{guid}/{file}
> | Resource group | `/subscriptions/###/resourceGroups/###` |
> | Billing account | `/providers/Microsoft.Billing/billingAccounts/###` |
> | Billing profile | `/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###` |
- >
- `{export-name}` is the name of the export.
> Hubs ignore this folder.
- `{date-range}` is the date range data being exported.
@@ -648,13 +650,17 @@ The following steps outline the process for exporting and processing cost data u
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/DataProcessing)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/deploy.md b/docs-mslearn/toolkit/hubs/deploy.md
index 1d488120e..950fcf5a8 100644
--- a/docs-mslearn/toolkit/hubs/deploy.md
+++ b/docs-mslearn/toolkit/hubs/deploy.md
@@ -3,7 +3,7 @@ title: How to create and update FinOps hubs
description: This tutorial helps you create a new or update an existing FinOps hubs instance in Azure or Microsoft Fabric.
author: flanakin
ms.author: micflan
-ms.date: 06/05/2025
+ms.date: 02/24/2026
ms.topic: tutorial
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,17 +11,20 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what FinOps hubs are so that I can use them in my organization.
---
-
+
+
# Tutorial: Create and update FinOps hubs
In this tutorial, you learn how to create a new or update an existing FinOps hub instance in Azure or Microsoft Fabric. The tutorial walks through deployment options and decisions that need to be made as you set up and configure FinOps hubs. This article helps you:
+
> [!div class="checklist"]
> - Apply FinOps hubs prerequisites.
> - Create a new or update an existing FinOps hub instance.
> - Ingest and backfill data in FinOps hubs.
> - Connect your hub to Microsoft Fabric.
> - Create reports and dashboards.
+
@@ -37,7 +40,7 @@ In this tutorial, you learn how to create a new or update an existing FinOps hub
- MCA billing scopes: Contributor on the billing account, billing profile, or invoice section.
- MPA billing scopes: Contributor on the billing account, billing profile, or customer.
- Optional: Access to Power BI or a Microsoft Fabric workspace with Contributor or Member permissions to create resources and publish reports.
-- Optional: PowerShell 7 or Azure Cloud Shell with the [FinOps toolkit PowerShell module](../powershell/powershell-commands.md) installed and imported, and Bicep CLI installed ([installation guide](https://learn.microsoft.com/azure/azure-resource-manager/bicep/install)).
+- Optional: PowerShell 7 or Azure Cloud Shell with the [FinOps toolkit PowerShell module](../powershell/powershell-commands.md) installed and imported, and Bicep CLI installed ([installation guide](/azure/azure-resource-manager/bicep/install)).
More permissions are covered as part of the tutorial.
@@ -47,7 +50,6 @@ More permissions are covered as part of the tutorial.
FinOps hubs use Cost Management to export data and Event Grid to know when data is added to your storage account. Before deploying the template, you need to register the **Microsoft.CostManagementExports** and **Microsoft.EventGrid** resource providers.
-
### [Azure portal](#tab/azure-portal)
1. From the Azure portal, open the [list of subscriptions](https://portal.azure.com/#view/Microsoft_Azure_Billing/SubscriptionsBladeV2).
@@ -57,7 +59,6 @@ FinOps hubs use Cost Management to export data and Event Grid to know when data
5. If the **Status** column shows Not Registered, select the context menu to the right of the provider name (⋅⋅⋅) and then select **Register**.
6. Repeat steps 4-5 for **Microsoft.CostManagementExports**.
-
### [PowerShell](#tab/powershell)
The following command is part of the FinOps toolkit PowerShell module. To install the module, see [Install the FinOps toolkit PowerShell module](../powershell/powershell-commands.md#install-the-module).
@@ -94,6 +95,7 @@ Public routing doesn't require configuration. If you opt for private routing, wo
FinOps hubs support remote hub functionality for collecting cost data across multiple Azure tenants and clouds. Remote hubs enable centralized cost management for organizations with distributed billing relationships while maintaining data sovereignty during processing.
Remote hubs can be used for multiple tenants in the same Azure cloud or tenants in different Azure clouds. Supported clouds are:
+
- Azure Commercial
- Azure Government
- Azure China
@@ -119,7 +121,7 @@ Configuring Microsoft Fabric is a manual process and requires explicit steps bef
3. Delete all text in the file.
4. Download and open the [finops-hub-fabric-setup-Ingestion.kql file](https://github.com/microsoft/finops-toolkit/releases/latest/download/finops-hub-fabric-setup-Ingestion.kql) in a text editor.
5. Copy the entire text from this file into the Fabric queryset editor.
- 6. Press Ctrl+H to trigger the find and replace dialog, set the find text to `$$rawRetentionInDays$$`, and replace it with `0` or desired number of days to keep data in **_raw** tables, then press Ctrl+Alt+Enter to replace all instances.
+ 6. Press Ctrl+H to trigger the find and replace dialog, set the find text to `$$rawRetentionInDays$$`, and replace it with `0` or desired number of days to keep data in **\_raw** tables, then press Ctrl+Alt+Enter to replace all instances.
7. Press Ctrl+Home to bring the cursor to the beginning of the file and press Shift+Enter or select the **Run** command at the top of the page.
8. Wait for the script to complete and then review the **Result** column to confirm all commands completed successfully.
- If you see an error for a line that has **$$rawRetentionInDays$$**, repeat steps 2.6 and 2.7.
@@ -134,7 +136,6 @@ Configuring Microsoft Fabric is a manual process and requires explicit steps bef
The core engine for FinOps hubs is deployed via an Azure Resource Manager deployment template. The template is available in [bicep](/azure/azure-resource-manager/bicep/overview). The template includes a storage account, Azure Data Factory, Azure Data Explorer, and other supporting resources. To learn more about the template and least-privileged access requirements, refer to the [FinOps hub template details](template.md).
-
### [Azure portal](#tab/azure-portal)
1. Open the desired template in the Azure portal:
@@ -175,13 +176,12 @@ The core engine for FinOps hubs is deployed via an Azure Resource Manager deploy
16. Select the **Next** button at the bottom of the form.
17. Review the configuration summary and select the **Create** button at the bottom of the form.
-
### [PowerShell](#tab/powershell)
The following command is part of the FinOps toolkit PowerShell module. To install the module, see [Install the FinOps toolkit PowerShell module](../powershell/powershell-commands.md#install-the-module).
> [!IMPORTANT]
-> PowerShell deployment requires Bicep CLI to be installed and available in PATH. See [Install Azure Bicep](https://learn.microsoft.com/azure/azure-resource-manager/bicep/install) for installation instructions.
+> PowerShell deployment requires Bicep CLI to be installed and available in PATH. See [Install Azure Bicep](/azure/azure-resource-manager/bicep/install) for installation instructions.
```powershell
# Deploying to Azure Data Explorer
@@ -214,31 +214,34 @@ If you set up Microsoft Fabric as a primary data store, configure access for Dat
2. In the list of resources, select the Data Factory instance.
3. In the menu on the left, select **Settings** > **Managed identities** and copy the **Object (principal) ID**.
2. Give Data Factory access to the Hub and Ingestion databases:
+
1. From Microsoft Fabric, open the desired workspace and select the target eventhouse.
2. Select the **Ingestion** database in the left pane.
3. Select **Ingestion_queryset** in the left pane.
4. Run the following commands separately, replacing `` with the Data Factory managed identity object ID from step 1:
+
```kusto
.add database Ingestion admins ('aadapp=')
.add database Hub admins ('aadapp=')
```
+
@@ -249,7 +252,6 @@ FinOps hubs can monitor any cost and usage dataset that aligns to the [FinOps Op
You can ingest data from Microsoft Cost Management by creating exports manually or granting access to FinOps hubs to create and manage exports for you. The following steps must be repeated for each scope you need to monitor. We recommend using EA billing accounts and MCA billing profiles for the best coverage and broadest available datasets. To learn more about the difference between manual and managed exports, see [Configure scopes](configure-scopes.md).
-
### [Azure portal](#tab/azure-portal)
1. From the Azure portal, open [Cost Management](https://aka.ms/costmgmt).
@@ -268,7 +270,6 @@ You can ingest data from Microsoft Cost Management by creating exports manually
13. Repeat steps 4-12 for any more datasets.
- Reservation recommendations are required for the Rate optimization report's Reservation recommendations page to load.
-
### [PowerShell](#tab/powershell)
The following command is part of the FinOps toolkit PowerShell module. To install the module, see [Install the FinOps toolkit PowerShell module](../powershell/powershell-commands.md#install-the-module).
@@ -364,21 +365,24 @@ To ingest data from other data providers that support FOCUS, such as Amazon Web
FinOps hubs don't automatically backfill data. To populate historical data, run historical data exports from the original data provider, including any custom data pipelines used to publish data into the **ingestion** storage container.
+
> [!IMPORTANT]
> **Backfill order matters for accurate savings calculations**
->
+>
> Always export price data before cost data when backfilling historical information. This ensures that:
+>
> - Reserved Instance (RI) and savings plan benefits are correctly calculated in historical reports
> - Missing price information doesn't cause incomplete savings analysis
> - Data Explorer reports show accurate cost optimization opportunities across all time periods
>
> If you've already exported cost data before price data, rerun the **ingestion_ExecuteETL** pipeline for each affected month after price data is available.
+
For Microsoft Cost Management:
-
### [Azure portal](#tab/azure-portal)
+
1. From the Azure portal, open [Cost Management](https://aka.ms/costmgmt).
2. Select the desired scope from the scope picker towards the top of the page.
> [!NOTE]
@@ -391,57 +395,62 @@ For Microsoft Cost Management:
5. Select the desired export in the list of exports.
- Always export prices before costs to ensure they're available to populate missing prices in the cost and usage dataset.
- If costs are exported first, rerun the **ingestion_ExecuteETL** pipeline for the month's cost data to populate the missing prices.
-6. Select **Export selected dates** and specify the desired month. Always export the full month.
+6. Select **Export selected dates** and specify the desired month. Always export the full month.
7. Repeat step 6 for all desired months.
- Cost Management only supports exporting up to the last 12 months from the Azure portal.
- Consider using PowerShell to export beyond the last 12 months.
8. Repeat steps 5-7 for each export, maintaining the order specified in step 4.
9. Repeat steps 2-8 for each scope.
+
-
### [PowerShell](#tab/powershell)
The following command is part of the FinOps toolkit PowerShell module. To install the module, see [Install the FinOps toolkit PowerShell module](../powershell/powershell-commands.md#install-the-module).
+
> [!IMPORTANT]
> **For Microsoft Customer Agreement (MCA) contracts**: Use the billing profile scope (`/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###`) rather than the billing account scope for price sheet, reservation, and recommendation exports.
+
**Export data in the following order to ensure accurate savings calculations:**
1. **First - Price sheet data** (if available at your scope):
-```powershell
-Start-FinOpsCostExport `
- -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
- -Name 'finops-hub-prices' `
- -Dataset PriceSheet `
- -Backfill 13 # or desired number of months
-```
+
+ ```powershell
+ Start-FinOpsCostExport `
+ -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
+ -Name 'finops-hub-prices' `
+ -Dataset PriceSheet `
+ -Backfill 13 # or desired number of months
+ ```
2. **Second - Cost and usage data**:
-```powershell
-Start-FinOpsCostExport `
- -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
- -Name 'finops-hub-costs' `
- -Dataset FocusCost `
- -Backfill 13 # or desired number of months
-```
+
+ ```powershell
+ Start-FinOpsCostExport `
+ -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
+ -Name 'finops-hub-costs' `
+ -Dataset FocusCost `
+ -Backfill 13 # or desired number of months
+ ```
3. **Third - Reservation and recommendation data** (if needed):
-```powershell
-# Reservation recommendations
-Start-FinOpsCostExport `
- -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
- -Name 'finops-hub-reservations' `
- -Dataset ReservationRecommendations `
- -Backfill 13 # or desired number of months
-# Reservation details
-Start-FinOpsCostExport `
- -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
- -Name 'finops-hub-reservation-details' `
- -Dataset ReservationDetails `
- -Backfill 13 # or desired number of months
-```
+ ```powershell
+ # Reservation recommendations
+ Start-FinOpsCostExport `
+ -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
+ -Name 'finops-hub-reservations' `
+ -Dataset ReservationRecommendations `
+ -Backfill 13 # or desired number of months
+
+ # Reservation details
+ Start-FinOpsCostExport `
+ -Scope '/providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###' `
+ -Name 'finops-hub-reservation-details' `
+ -Dataset ReservationDetails `
+ -Backfill 13 # or desired number of months
+ ```
For other parameters, see [Start-FinOpsCostExport](../powershell/cost/Start-FinOpsCostExport.md).
@@ -456,6 +465,7 @@ If you've already exported cost data before price data and notice missing saving
2. **Export missing price data**: Run price sheet exports for the affected months using the methods above.
3. **Reprocess cost data**: After price data is available, manually trigger the **ingestion_ExecuteETL** pipeline for each affected month:
+
- Navigate to your FinOps hub Data Factory instance in the Azure portal
- Go to **Author & Monitor** > **Pipelines**
- Find and run the **ingestion_ExecuteETL** pipeline
@@ -471,6 +481,7 @@ If you've already exported cost data before price data and notice missing saving
## Optional: Connect to Microsoft Fabric as a follower
+
If you chose to configure FinOps hubs with Data Explorer, but are still interested in making data available in Microsoft Fabric, create a shortcut (follower) database using Fabric eventhouses. Shortcut databases are not necessary if you ingested directly into a Fabric eventhouse.
1. From your Fabric workspace, select the **+ New item** command at the top of the page.
@@ -489,7 +500,6 @@ FinOps hubs come with a Data Explorer dashboard and Power BI reports that can co
We recommend setting up the Data Explorer dashboard even if you use Power BI due to the quick and easy setup and insights into ingested data.
-
### [Data Explorer dashboard](#tab/adx-dashboard)
1. [Download the dashboard template](https://github.com/microsoft/finops-toolkit/releases/latest/download/finops-hub-dashboard.json).
@@ -500,7 +510,6 @@ We recommend setting up the Data Explorer dashboard even if you use Power BI due
For more information, see [Configure Data Explorer dashboards](configure-dashboards.md).
-
### [Fabric real-time dashboard](#tab/fabric-real-time-dashboard)
1. [Download the dashboard template](https://github.com/microsoft/finops-toolkit/releases/latest/download/finops-hub-dashboard.json).
@@ -517,7 +526,6 @@ For more information, see [Configure Data Explorer dashboards](configure-dashboa
For more information, see [Configure Data Explorer dashboards](configure-dashboards.md).
-
### [Power BI reports](#tab/power-bi)
1. Download the Power BI reports for your backend:
@@ -531,8 +539,8 @@ For more information, see [Configure Data Explorer dashboards](configure-dashboa
- **Azure Data Explorer (Kusto)** – Use an account that has at least viewer access to the Hub and Ingestion databases.
- **Azure Resource Graph** – Use an account that has direct access to any subscriptions you would like to report on.
- **(your storage account)** – Use a SAS token or an account that has Storage Blob Data Reader or greater access.
- - **https://ccmstorageprod...** – Anonymous access. This URL is used for reservation size flexibility data.
- - **https://github.com/...** – Anonymous access. This URL is used for FinOps toolkit open data files.
+ - **...** – Anonymous access. This URL is used for reservation size flexibility data.
+ - **...** – Anonymous access. This URL is used for FinOps toolkit open data files.
For more information, see [Set up Power BI reports](../power-bi/setup.md).
@@ -554,13 +562,17 @@ If your issue isn't resolved with the troubleshooting guide, see [Get support fo
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/Deploy)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/finops-hubs-overview.md b/docs-mslearn/toolkit/hubs/finops-hubs-overview.md
index e620bd253..d6404479e 100644
--- a/docs-mslearn/toolkit/hubs/finops-hubs-overview.md
+++ b/docs-mslearn/toolkit/hubs/finops-hubs-overview.md
@@ -3,7 +3,7 @@ title: FinOps hubs overview
description: FinOps hubs provide a reliable platform for cost analytics, insights, and optimization, supporting large accounts and organizations.
author: flanakin
ms.author: micflan
-ms.date: 05/17/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what FinOps hubs are so that I can use them in my organization.
---
-
# FinOps hubs
FinOps hubs are a reliable, trustworthy platform for cost analytics, insights, and optimization – virtual command centers for leaders throughout the organization to report on, monitor, and optimize cost based on their organizational needs. FinOps hubs focus on three core design principles:
@@ -24,15 +23,19 @@ FinOps hubs extend Cost Management to provide a scalable platform for advanced d
:::image type="content" source="media/finops-hubs-overview/architecture.png" border="true" alt-text="FinOps hubs diagram with Cost Management exports, Data Factory ingestion into Data Explorer or Fabric, and AI, reports, and dashboards querying data." lightbox="media/finops-hubs-overview/architecture.png" :::
+
> [!NOTE]
> Estimated cost: Starts at $120/mo + $10/mo per $1M in cost being monitored.
>
> Estimated monthly cost includes $120 for a single-node Azure Data Explorer cluster or $300 for F2 Fabric capacity, plus $10 in Azure storage and processing cost per $1M being monitored. Exact cost will vary based on discounts, data size (we estimate ~20GB per $1M), and Fabric or Power BI license requirements. Cost without Data Explorer or Fabric is $5 per $1M. For details, refer to the [FinOps hub cost estimate](https://aka.ms/finops/hubs/calculator) in the Azure Pricing Calculator.
+
+
> [!div class="nextstepaction"]
> [Create a hub](#create-a-new-hub)
+
@@ -42,8 +45,10 @@ Many organizations that use Microsoft Cost Management eventually hit a wall wher
FinOps hubs streamline implementing the FinOps Framework. They're being designed to scale to meet the largest enterprise needs. And, they're open and extensible to support building custom solutions without the hassle of building the backend data store. FinOps hubs are designed for and by the community. Join the discussion and let us know what you'd like to see next or learn how to contribute and be a part of the team.
+
> [!div class="nextstepaction"]
> [Join the conversation](https://aka.ms/ftk/discuss)
+
[Learn how to contribute](https://github.com/microsoft/finops-toolkit/blob/dev/CONTRIBUTING.md)
@@ -83,8 +88,10 @@ The FinOps hub template includes the following resources:
Once deployed, you can query data directly using KQL queries, visualize data using the available Data Explorer dashboards, Fabric Real-Time dashboards, or Power BI reports; or connect to the database or storage account directly from your own tools.
+
> [!div class="nextstepaction"]
> [See the template](template.md)
+
@@ -107,8 +114,10 @@ The FinOps toolkit includes five Power BI reports that are available in three se
:::image type="content" source="../power-bi/media/governance/summary.png" border="true" alt-text="Screenshot of the Governance report Summary page that shows a summary of subscriptions, resource types, and other information." lightbox="../power-bi/media/governance/summary.png" :::
+
> [!div class="nextstepaction"]
> [Browse reports](../power-bi/reports.md)
+
@@ -150,8 +159,8 @@ After you deploy a hub instance, there are several ways for you to get started:
[Data Factory](/azure/data-factory/introduction) is used to ingest and transform data. We recommend using Data Factory as a cost-efficient solution to apply custom logic to your cost data. Don't modify built-in pipelines or data in the **msexports** container. If you create custom pipelines, monitor new data in the **ingestion** container and use a consistent prefix to ensure they don't overlap with new pipelines. Refer to [data processing](./data-processing.md) for details about how data is processed.
- > [!IMPORTANT]
- > Keep in mind this is the primary area we are planning to evolve in [upcoming FinOps toolkit releases](../roadmap.md). Get familiar the roadmap to avoid conflicts with future updates. Consider [contributing to the project](https://github.com/microsoft/finops-toolkit/blob/dev/CONTRIBUTING.md) to add support for new scenarios to avoid conflicts.
+ > [!IMPORTANT]
+ > Keep in mind this is the primary area we are planning to evolve in [upcoming FinOps toolkit releases](../roadmap.md). Get familiar the roadmap to avoid conflicts with future updates. Consider [contributing to the project](https://github.com/microsoft/finops-toolkit/blob/dev/CONTRIBUTING.md) to add support for new scenarios to avoid conflicts.
- Generate custom alerts using Power Automate.
@@ -179,7 +188,7 @@ Configuring and managing FinOps hubs requires the following permissions:
- Deploying the FinOps hubs template requires one of the following:
- [Contributor](/azure/role-based-access-control/built-in-roles#contributor) and [Role Based Access Control Administrator](/azure/role-based-access-control/built-in-roles#role-based-access-control-administrator)
- [Owner](/azure/role-based-access-control/built-in-roles#owner)
- - For least-privileged access, see [template details](template.md#prerequisites).
+ - For least-privileged access, see [template details](template.md#prerequisites).
- Configuring Power BI requires one of the following
- Storage reports: [Storage Blob Data Reader](/azure/role-based-access-control/built-in-roles/storage#storage-blob-data-reader) or SAS token
- KQL reports: Viewer on the Hub and Ingestion databases.
@@ -194,13 +203,17 @@ For for information, see [Cost Management documentation](/azure/cost-management-
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/hubs/private-networking.md b/docs-mslearn/toolkit/hubs/private-networking.md
index 300ecc0d0..313b52e03 100644
--- a/docs-mslearn/toolkit/hubs/private-networking.md
+++ b/docs-mslearn/toolkit/hubs/private-networking.md
@@ -3,14 +3,13 @@ title: Configure private networking in FinOps hubs
description: Learn about data access options with FinOps hubs and how to configure secure access to your data with private endpoints.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.reviewer: micflan
# customer intent: As a FinOps toolkit user, I want to learn about how to configure private access to my data so that I can secure it.
---
-
# Configure private networking in FinOps hubs
As organizations increasingly adopt cloud services, ensuring secure and efficient access to these resources becomes paramount. FinOps hubs offer flexible options to support public or private access to data networking, depending on your needs. This guide explains how each data access option works and how to configure private networking to securely access data in FinOps hubs.
@@ -39,7 +38,7 @@ Private access is a more secure option that places FinOps hubs resources on an i
- Storage is accessible via private IP address and trusted Azure services - firewall is set to default deny with bypass for services on trusted list.
- Data Explorer (if deployed) is accessible via private IP address - firewall is set to default deny with no exceptions.
- Key vault is accessible via private IP address and trusted Azure services - firewall is set to default deny with bypass for services on trusted list.
-- Azure Data Factory is configured to use the public integration runtime, which helps reduce costs.
+- Azure Data Factory is configured to use the public integration runtime, which helps reduce costs.
- A virtual network is deployed to ensure communication between all components during deployment and at runtime remains private.
:::image type="content" source="./media/private-networking/finops-hubs-private-network.png" border="false" alt-text="Screenshot of privately accessible deployments." lightbox="./media/private-networking/finops-hubs-private-network.png" :::
@@ -89,15 +88,17 @@ If you need to reduce costs or simplify your FinOps hub deployment, you can remo
### Steps to remove private networking
1. **Plan the transition**:
+
- Identify all users and systems currently accessing the hub via private networking
- Coordinate with your network administrators about the change
- Schedule maintenance window as the hub will be temporarily inaccessible during the transition
2. **Update the FinOps hub deployment**:
-
+
You have two options to redeploy your FinOps hub with public access:
-
+
**Option 1: Redeploy from existing deployment**
+
- Navigate to your FinOps hub resource group in the Azure portal
- Go to the **Deployments** tab on the resource group
- Find and open the original FinOps hub deployment
@@ -105,8 +106,9 @@ If you need to reduce costs or simplify your FinOps hub deployment, you can remo
- On the **Advanced** tab, set **Access** to **Public**
- Review all other settings to ensure they remain as desired
- Deploy the updated configuration
-
+
**Option 2: Deploy latest toolkit version**
+
- Install the latest current version of the FinOps toolkit
- Use the same resource group name, hub name, and Data Explorer cluster name as your existing deployment
- These values can be obtained from the original deployment template or the config.json file in your hub storage account
@@ -114,11 +116,13 @@ If you need to reduce costs or simplify your FinOps hub deployment, you can remo
- Deploy with the same configuration to update your existing hub
3. **Verify the changes**:
+
- Confirm that storage accounts, Data Explorer, and Key Vault are accessible via public endpoints
- Test data access from Power BI and other connected systems
- Verify that Azure Data Factory pipelines continue to run successfully
4. **Clean up networking resources** (optional):
+
- Once you've confirmed the hub is working correctly with public access, you can delete the networking resources to stop incurring networking costs
- Delete resources in the following order to avoid dependency conflicts:
1. Private endpoints
@@ -141,6 +145,7 @@ If you need to reduce costs or simplify your FinOps hub deployment, you can remo
> After removing private networking, your FinOps hub data will be accessible over the internet, though still protected by role-based access control (RBAC) and transport layer security (TLS). Review your organization's security policies to ensure this meets your requirements.
>
> **Security recommendations:**
+>
> - Check the security settings on storage accounts and Azure Data Explorer clusters to ensure they align with your security requirements
> - Consider using network security groups (NSGs) or firewall rules to restrict access to well-known IP addresses such as your corporate firewall, VPN endpoints, or specific office locations
> - Review and configure storage account network access rules to limit access from trusted networks if needed
@@ -171,6 +176,7 @@ If necessary, you can create the virtual network, subnets, and optionally peer i
Communication between the various FinOps hub components is encrypted using TLS. For TLS certificate validation to succeed when using private networking, reliable domain name system (DNS) name resolution is required. DNS zones, private endpoints, and DNS entries guarantee name resolution between FinOps hub components.
+
- **privatelink.blob.core.windows.net** – for Data Explorer and storage used by deployment scripts
- **privatelink.dfs.core.windows.net** – for Data Explorer and the data lake hosting the FinOps data and pipeline configuration
- **privatelink.table.core.windows.net** – for Data Explorer
@@ -226,13 +232,17 @@ This network topology follows the Hub-Spoke network architecture guidance outlin
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/PrivateNetworking)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/hubs/savings-calculations.md b/docs-mslearn/toolkit/hubs/savings-calculations.md
index 89ee6ef77..e10eff146 100644
--- a/docs-mslearn/toolkit/hubs/savings-calculations.md
+++ b/docs-mslearn/toolkit/hubs/savings-calculations.md
@@ -3,7 +3,7 @@ title: Understanding savings calculations in FinOps toolkit
description: Learn how savings values are calculated and displayed in FinOps toolkit reports, including negative savings and missing price scenarios.
author: flanakin
ms.author: micflan
-ms.date: 12/02/2024
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,7 +12,6 @@ ms.reviewer: micflan
---
-
# Understanding savings calculations in FinOps toolkit
FinOps toolkit reports calculate savings by comparing different cost values to help you understand your optimization opportunities and actual savings achieved. This article explains how savings values are calculated and displayed, particularly for scenarios involving negative savings or missing price data.
@@ -150,8 +149,10 @@ If you see many zero savings values:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20savings%20calculations%20in%20FinOps%20toolkit%20reports%3F/cvaQuestion/How%20valuable%20is%20the%20savings%20calculations%20documentation%3F/surveyId/FTK/bladeName/Hubs/featureName/SavingsCalculations)
+
diff --git a/docs-mslearn/toolkit/hubs/template.md b/docs-mslearn/toolkit/hubs/template.md
index db0ea830c..027d7a8f1 100644
--- a/docs-mslearn/toolkit/hubs/template.md
+++ b/docs-mslearn/toolkit/hubs/template.md
@@ -3,7 +3,7 @@ title: FinOps hub template
description: Learn about what's included in the FinOps hub template including parameters, resources, and outputs.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -77,7 +77,7 @@ Here are the parameters you can use to customize the deployment:
| Parameter | Type | Description | Default value |
| -------------------------------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ |
| **hubName** | String | Optional. Name of the hub. Used to ensure unique resource names. | "finops-hub" |
-| **location** | String | Optional. Azure location where all resources should be created. See https://aka.ms/azureregions. | Same as deployment |
+| **location** | String | Optional. Azure location where all resources should be created. See . | Same as deployment |
| **storageSku** | String | Optional. Storage SKU to use. LRS = Lowest cost, ZRS = High availability. Note Standard SKUs are not available for Data Lake gen2 storage. Allowed: `Premium_LRS`, `Premium_ZRS`. | "Premium_LRS" |
| **dataExplorerName** | String | Optional. Name of the Azure Data Explorer cluster to use for advanced analytics. If empty, Azure Data Explorer will not be deployed. Required to use with Power BI if you have more than $2-5M/mo in costs being monitored. Default: "" (do not use). | |
| **dataExplorerSkuName** | String | Optional. Name of the Azure Data Explorer SKU. Default: "Dev(No SLA)_Standard_E2a_v4". | |
diff --git a/docs-mslearn/toolkit/hubs/upgrade.md b/docs-mslearn/toolkit/hubs/upgrade.md
index 1b6486453..e78f00ab2 100644
--- a/docs-mslearn/toolkit/hubs/upgrade.md
+++ b/docs-mslearn/toolkit/hubs/upgrade.md
@@ -3,7 +3,7 @@ title: Upgrade your FinOps hubs
description: Learn how to upgrade your existing FinOps hub instance to the latest version, including necessary steps and considerations.
author: flanakin
ms.author: micflan
-ms.date: 01/29/2026
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to upgrade my existing FinOps hub.
---
-
# Upgrade a FinOps hubs instance
This tutorial helps you upgrade an existing FinOps hub instance to the latest version to use new capabilities.
@@ -73,8 +72,10 @@ The Microsoft Fabric eventhouse database schema must be manually updated with ea
Upgrading a FinOps hub instance requires redeploying the latest version of the template. Deploying the template creates new resources and updates existing resources as needed. To ensure the existing instance is updated, make sure to specify the same hub name and Data Explorer cluster name or Fabric eventhouse query URI.
+
> [!div class="nextstepaction"]
> [Deploy](deploy.md#deploy-the-finops-hub-template)
+
@@ -132,12 +133,14 @@ The Data Explorer dashboard was introduced with Data Explorer support in 0.7 and
Each version of the dashboard is configured to work with a specific FinOps hub schema version (v1_0 or v1_2). Schema versions ensure backwards compatibility across FOCUS dataset versions from different providers. Older dashboard versions will continue to work after upgrading to the latest version of FinOps hubs, but newer dashboard versions may not work with older FinOps hub versions. The following table outlines the supported combinations.
| Dashboard version | FinOps hubs schema | FinOps hubs version |
-|-------------------|--------------------|---------------------|
+| ----------------- | ------------------ | ------------------- |
| 12+ | v1_2 | 12+ |
| 0.7-0.11 | v1_0 | 0.7+ |
+
> [!div class="nextstepaction"]
> [Download dashboard](https://github.com/microsoft/finops-toolkit/releases/latest/download/finops-hub-dashboard.json)
+
For more information, see [Configure Data Explorer dashboards](configure-dashboards.md).
@@ -198,13 +201,17 @@ If updating queries to use a newer schema version, use the following table to un
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20hubs%3F/cvaQuestion/How%20valuable%20are%20FinOps%20hubs%3F/surveyId/FTK/bladeName/Hubs/featureName/Upgrade)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20FinOps%20hubs%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/open-data.md b/docs-mslearn/toolkit/open-data.md
index c1fad7813..d3cf2081a 100644
--- a/docs-mslearn/toolkit/open-data.md
+++ b/docs-mslearn/toolkit/open-data.md
@@ -4,7 +4,7 @@ description: Use open data to normalize and enhance your FinOps reporting, ensur
ms.topic: concept-article
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.service: finops
ms.subservice: finops-toolkit
ms.reviewer: micflan
@@ -12,7 +12,6 @@ ms.custom: references_regions
# customer intent: As a FinOps practitioner, I want to understand FinOps reporting so that I can clean or normalize my data.
---
-
# Open data for FinOps
Reporting is the life-blood of any FinOps initiative. And your reports are only as good as your data. It's why [data ingestion](../framework/understand/ingestion.md) is such an important part of FinOps (and any big data effort). The following datasets can be used to clean and normalize your data as part of data ingestion, reporting, or other solutions.
@@ -44,10 +43,12 @@ A few important notes about the data:
In the Cost Management FOCUS dataset, `UnitOfMeasure` is renamed to `x_PricingUnitDescription`. Both `PricingUnit` and `ConsumedUnit` in FOCUS are set to the `DistinctUnits` column.
+
> [!div class="nextstepaction"]
> [Download](https://github.com/microsoft/finops-toolkit/releases/latest/download/PricingUnits.csv)
> [!div class="nextstepaction"]
> [See PowerShell](powershell/data/get-finopspricingunit.md)
+
@@ -73,10 +74,12 @@ Sample data:
Convert region values to lowercase before mapping. This helps reduce duplication and speed up the mapping process.
+
> [!div class="nextstepaction"]
> [Download](https://github.com/microsoft/finops-toolkit/releases/latest/download/Regions.csv)
> [!div class="nextstepaction"]
> [See PowerShell](powershell/data/get-finopsregion.md)
+
@@ -104,12 +107,14 @@ Sample data:
Convert resource type values to lowercase before mapping. This helps reduce duplication and speed up the mapping process.
+
> [!div class="nextstepaction"]
> [Download CSV](https://github.com/microsoft/finops-toolkit/releases/latest/download/ResourceTypes.csv)
> [!div class="nextstepaction"]
> [Download JSON](https://github.com/microsoft/finops-toolkit/releases/latest/download/ResourceTypes.json)
> [!div class="nextstepaction"]
> [See PowerShell](powershell/data/get-finopsresourcetype.md)
+
@@ -139,10 +144,12 @@ A few important notes about the data:
Most mappings can rely on resource type alone. In a future update, we will merge this list with [Resource types](#resource-types) to provide only a single dataset. Currently, the only known case where resource type is shared that ConsumedService can help identify is for Microsoft Defender for Cloud. To simplify your mapping, you can only map those 5 rows and rely on a resource type mapping for everything else.
+
> [!div class="nextstepaction"]
> [Download](https://github.com/microsoft/finops-toolkit/releases/latest/download/Services.csv)
> [!div class="nextstepaction"]
> [See PowerShell](powershell/data/get-finopsservice.md)
+
@@ -160,8 +167,10 @@ The following files are examples of what you see when you export data from Micro
- Reservation transactions (`2023-05-01`)
- Reservation recommendations (`2023-05-01`)
+
> [!div class="nextstepaction"]
> [Download all examples](https://github.com/microsoft/finops-toolkit/releases/latest/download/dataset-examples.zip)
+
@@ -186,8 +195,10 @@ Metadata is available for the following datasets:
- [FOCUS 1.0](../focus/metadata.md#focuscost-10)
- [FOCUS 1.0-preview(v1)](../focus/metadata.md#focuscost-10-previewv1)
+
> [!div class="nextstepaction"]
> [Download all metadata](https://github.com/microsoft/finops-toolkit/releases/latest/download/dataset-metadata.zip)
+
@@ -195,13 +206,17 @@ Metadata is available for the following datasets:
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/OpenData/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/optimization-engine/configure-workspaces.md b/docs-mslearn/toolkit/optimization-engine/configure-workspaces.md
index 1fe2af0c4..e54371904 100644
--- a/docs-mslearn/toolkit/optimization-engine/configure-workspaces.md
+++ b/docs-mslearn/toolkit/optimization-engine/configure-workspaces.md
@@ -3,7 +3,7 @@ title: Configure workspaces
description: Include the VM performance logs available in your Log Analytics workspaces to get deeper insights and more accurate results.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: hepint
#customer intent: As a FinOps user, I want to understand how to configure Log Analytics for Azure optimization engine.
---
-
# Configure workspaces for Azure optimization engine
This article explains how to configure Log Analytics workspaces for Azure optimization engine (AOE).
diff --git a/docs-mslearn/toolkit/optimization-engine/customize.md b/docs-mslearn/toolkit/optimization-engine/customize.md
index 659e148a1..5298abef8 100644
--- a/docs-mslearn/toolkit/optimization-engine/customize.md
+++ b/docs-mslearn/toolkit/optimization-engine/customize.md
@@ -3,7 +3,7 @@ title: Customize Azure optimization engine
description: This article describes how to customize the Azure optimization engine settings according to your organization requirements.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,7 +12,6 @@ ms.reviewer: hepint
---
-
# Customize Azure optimization engine
The Azure optimization engine (AOE) is a set of Azure Automation runbooks that collect, ingest, and analyze Azure consumption and performance data to provide cost optimization recommendations. The engine is designed to be flexible and customizable, allowing you to adjust its behavior to better fit your organization's needs. This article provides guidance on how to customize the engine's settings. It includes adjusting thresholds, changing schedules, and expanding the engine's scope.
@@ -82,6 +81,7 @@ The script also asks you to enter, **if needed**, the Hybrid Worker Group you wa
By default, AOE Automation runbooks are executed in the context of the Azure Automation sandbox. You might face performance issues due to the memory limits of the Automation sandbox. Or, you might decide to implement private endpoints for the Storage Account or SQL Database to harden AOE's security. In either case, you need to execute runbooks from a Hybrid Worker. It’s an Azure or on-premises Virtual Machine with the Automation Hybrid Worker extension. To change the execution context for the AOE runbooks, you must use the `Reset-AutomationSchedules.ps1` script. See how to use the script in the previous subsection. After setting the runbooks execution base time, enter the Hybrid Worker Group name you want the runbooks to run in.
+
> [!IMPORTANT]
> - The Hybrid Worker machine must have the required PowerShell modules installed. The `upgrade-manifest.json` file contains the list of required modules.
> - Once you change the runbook execution context to Hybrid Worker, you must always use the `DoPartialUpgrade` flag whenever you upgrade AOE, or else you lose the runbook schedule settings and revert to the default sandbox configuration.
@@ -89,6 +89,7 @@ By default, AOE Automation runbooks are executed in the context of the Azure Aut
> - The Automation Account doesn't have any associated Managed Identity, that is, only the Hybrid Worker machine can have a User-Assigned Managed Identity.
> - All runbooks run in the context of the Hybrid Worker. In this case, you must create an `AzureOptimization_UAMIClientID` Automation Variable with the User-Assigned Managed Identity Client ID as value.
> - The `AzureOptimization_AuthenticationOption` Automation variable value is updated to `UserAssignedManagedIdentity`.
+
diff --git a/docs-mslearn/toolkit/optimization-engine/faq.md b/docs-mslearn/toolkit/optimization-engine/faq.md
index 62f20ed9f..4a0645be3 100644
--- a/docs-mslearn/toolkit/optimization-engine/faq.md
+++ b/docs-mslearn/toolkit/optimization-engine/faq.md
@@ -3,7 +3,7 @@ title: Azure optimization engine FAQ
description: This article covers frequently asked questions about the Azure Optimization Engine (AOE), including support, subscriptions, and currency.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: hepint
#customer intent: As a FinOps user, I want to answer frequently asked questions about Azure optimization engine.
---
-
# Azure optimization engine Frequently Asked Questions
This article summarizes frequently asked questions about Azure optimization engine (AOE). It covers support, subscriptions, currency, and other common questions.
diff --git a/docs-mslearn/toolkit/optimization-engine/overview.md b/docs-mslearn/toolkit/optimization-engine/overview.md
index 6ff906df1..ca31872fc 100644
--- a/docs-mslearn/toolkit/optimization-engine/overview.md
+++ b/docs-mslearn/toolkit/optimization-engine/overview.md
@@ -3,7 +3,7 @@ title: Get started with the Azure Optimization Engine
description: The Azure Optimization Engine (AOE) is an extensible solution designed to generate optimization recommendations for your Azure environment.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: hepint
#customer intent: As a FinOps user, I want to understand what the FinOps toolkit is and how it help me automate and extend the Microsoft Cloud.
---
-
# Get started with the Azure Optimization Engine
The Azure Optimization Engine (AOE) is an extensible solution designed to generate optimization recommendations for your Azure environment. See it like a fully customizable Azure Advisor.
@@ -25,15 +24,15 @@ Here are the requirements for deploying AOE:
- A supported Azure subscription (see the [FAQ](faq.md))
- A user account with Owner permissions over the chosen subscription, so that the Automation Managed Identity is granted the required privileges over the subscription (Reader) and deployment resource group (Storage Blob Data Contributor)
- Azure PowerShell 9.0.0+
-- Optional, for Identity and Azure role-based access control (RBAC) (RBAC_ governance) Microsoft.Graph.Authentication and Microsoft.Graph.Identity.DirectoryManagement PowerShell modules (version 2.4.0+).
+- Optional, for Identity and Azure role-based access control (RBAC) (RBAC\_ governance) Microsoft.Graph.Authentication and Microsoft.Graph.Identity.DirectoryManagement PowerShell modules (version 2.4.0+).
- Optional, for Identity and Azure RBAC governance. A user account is needed with at least Privileged Role Administrator permissions over the Microsoft Entra tenant, so that the Managed Identity is granted the required privileges over Microsoft Entra ID (Global Reader).
- Optional, for Azure commitments insights. A user account is needed with administrative privileges over the Enterprise Agreement (Enterprise Enrollment Administrator) or the Microsoft Customer Agreement (Billing Profile Owner). The account is needed so that the Managed Identity is granted the required privileges over your consumption agreement.
During deployment, you're asked several questions. You must plan for the following items:
- Determine whether you're going to reuse an existing Log Analytics Workspace or if you want to create a new one.
- >[!IMPORTANT]
- > You should ideally reuse a workspace where you have VMs already sending performance metrics (`Perf` table), otherwise you will not fully leverage the augmented right-size recommendations capability. If this is not possible/desired for some reason, you can still manage to use multiple workspaces (see [Configuring workspaces](configure-workspaces.md)).
+ > [!IMPORTANT]
+ > You should ideally reuse a workspace where you have VMs already sending performance metrics (`Perf` table), otherwise you will not fully leverage the augmented right-size recommendations capability. If this is not possible/desired for some reason, you can still manage to use multiple workspaces (see [Configuring workspaces](configure-workspaces.md)).
- An Azure subscription to deploy the solution is needed. If you're reusing a Log Analytics workspace, you must deploy into the same subscription the workspace is in.
- A unique name prefix is needed for the Azure resources that get created. If you have specific naming requirements, you can also choose resource names during deployment.
- Azure region
@@ -157,13 +156,17 @@ Every week at the same time, AOE recommendations are updated according to the cu
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20Azure%20Optimization%20Engine%3F/cvaQuestion/How%20valuable%20are%20Azure%20Optimization%20Engine%3F/surveyId/FTK/bladeName/AOE/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20Optimization%20Engine%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/optimization-engine/reports.md b/docs-mslearn/toolkit/optimization-engine/reports.md
index 63838fbb5..b64b8325e 100644
--- a/docs-mslearn/toolkit/optimization-engine/reports.md
+++ b/docs-mslearn/toolkit/optimization-engine/reports.md
@@ -3,7 +3,7 @@ title: Azure optimization engine reports
description: Visualize the Azure Optimization Engine's rich recommendations and insights through various reporting options, including Power BI reports.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: hepint
#customer intent: As a FinOps user, I want to understand what reports are available with Azure optimization engine (AOE).
---
-
# Azure optimization engine reports
This article explains reporting options available within Azure optimization engine (AOE). It includes Power BI reports and Log Analytics Workbooks that visualize the rich recommendations and insights generated by the AOE.
@@ -20,8 +19,10 @@ This article explains reporting options available within Azure optimization engi
## Power BI recommendations report
+
> [!div class="nextstepaction"]
> [Download](https://aka.ms/AzureOptimizationEngine/powerbi)
+
AOE includes a Power BI report for visualizing recommendations. To use it, you have first to change the data source connection to the SQL Database you deployed with the AOE. In the Power BI top menu, select **Transform Data** > **Data source settings**.
diff --git a/docs-mslearn/toolkit/optimization-engine/setup-options.md b/docs-mslearn/toolkit/optimization-engine/setup-options.md
index 4db490e2b..23cc756c2 100644
--- a/docs-mslearn/toolkit/optimization-engine/setup-options.md
+++ b/docs-mslearn/toolkit/optimization-engine/setup-options.md
@@ -3,7 +3,7 @@ title: Setup options
description: This article describes advance scenarios for setting up or upgrading Azure optimization engine (AOE).
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: hepint
#customer intent: As a FinOps user, I want to understand how to setup Azure optimization engine (AOE).
---
-
# Azure optimization engine setup options
This article describes advance scenarios for setting up or upgrading Azure optimization engine (AOE).
@@ -37,32 +36,32 @@ $tags = @{"CostCenter"="FinOps";"Environment"="Production"}
## Silent deployment
-Optionally, you can also use the `SilentDeploymentSettingsPath` input parameter to deploy AOE in a more automated way.
+Optionally, you can also use the `SilentDeploymentSettingsPath` input parameter to deploy AOE in a more automated way.
-The file referencing should be a JSON file with the needed attributes defined (**all mandatory** unless specified).
+The file referencing should be a JSON file with the needed attributes defined (**all mandatory** unless specified).
An example of the content of such silent deployment file is:
```json
{
- "SubscriptionId": "<>",
- "NamePrefix": "<>", // prefix for all resources. Fill in 'EmptyNamePrefix' to specify the resource names
- "WorkspaceReuse": "n", // y = reuse existing workspace, n = create new workspace
- "ResourceGroupName": "<>-rg", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
- "StorageAccountName": "<>sa", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
- "AutomationAccountName": "<>-auto", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
- "SqlServerName": "<>-sql", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
- "SqlDatabaseName": "<>-db", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
- "WorkspaceName": "<>", // mandatory if WorkspaceReuse is set to 'n'
- "WorkspaceResourceGroupName": "<>", // mandatory if workspaceReuse is set to 'n'
- "DeployWorkbooks": "y", // y = deploy the workbooks, n = don't deploy the workbooks
- "TargetLocation": "westeurope",
- "DeployBenefitsUsageDependencies": "y", // deploy the dependencies for the Azure commitments workbooks (EA/MCA customers only + agreement administrator role required)
- "CustomerType": "MCA", // mandatory if DeployBenefitsUsageDependencies is set to 'y', MCA/EA
- "BillingAccountId": ":_YYYY-MM-DD", // mandatory if DeployBenefitsUsageDependencies is set to 'y', MCA or EA Billing Account ID
- "BillingProfileId": "ABCD-DEF-GHI-JKL", // mandatory if CustomerType is set to 'MCA"
- "CurrencyCode": "EUR" // mandatory if DeployBenefitsUsageDependencies is set to 'y'
- }
+ "SubscriptionId": "<>",
+ "NamePrefix": "<>", // prefix for all resources. Fill in 'EmptyNamePrefix' to specify the resource names
+ "WorkspaceReuse": "n", // y = reuse existing workspace, n = create new workspace
+ "ResourceGroupName": "<>-rg", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
+ "StorageAccountName": "<>sa", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
+ "AutomationAccountName": "<>-auto", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
+ "SqlServerName": "<>-sql", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
+ "SqlDatabaseName": "<>-db", // mandatory if NamePrefix is set to 'EmptyNamePrefix'
+ "WorkspaceName": "<>", // mandatory if WorkspaceReuse is set to 'n'
+ "WorkspaceResourceGroupName": "<>", // mandatory if workspaceReuse is set to 'n'
+ "DeployWorkbooks": "y", // y = deploy the workbooks, n = don't deploy the workbooks
+ "TargetLocation": "westeurope",
+ "DeployBenefitsUsageDependencies": "y", // deploy the dependencies for the Azure commitments workbooks (EA/MCA customers only + agreement administrator role required)
+ "CustomerType": "MCA", // mandatory if DeployBenefitsUsageDependencies is set to 'y', MCA/EA
+ "BillingAccountId": ":_YYYY-MM-DD", // mandatory if DeployBenefitsUsageDependencies is set to 'y', MCA or EA Billing Account ID
+ "BillingProfileId": "ABCD-DEF-GHI-JKL", // mandatory if CustomerType is set to 'MCA"
+ "CurrencyCode": "EUR" // mandatory if DeployBenefitsUsageDependencies is set to 'y'
+}
```
When silently deploying AOE, which typically happens in automated continuous deployment workflows, you might want to use Microsoft Entra authentication for Azure SQL parameters. For example, to grant the SQL administrator role to a Microsoft Entra ID group having the workflow automation service principal as member. Here's an example:
@@ -71,8 +70,8 @@ When silently deploying AOE, which typically happens in automated continuous dep
.\Deploy-AzureOptimizationEngine.ps1 -SilentDeploymentSettingsPath "" -SqlAdminPrincipalType Group -SqlAdminPrincipalName "" -SqlAdminPrincipalObjectId ""
```
->[!NOTE]
-> When you deploy AOE with non-user identities (service principals), you must ensure you assign a system identity to the AOE SQL Server and grant it the `Directory Readers` role in Microsoft Entra ID. Follow the steps at [Microsoft Entra service principals with Azure SQL](https://aka.ms/sqlaadsetup).
+> [!NOTE]
+> When you deploy AOE with non-user identities (service principals), you must ensure you assign a system identity to the AOE SQL Server and grant it the `Directory Readers` role in Microsoft Entra ID. Follow the steps at [Microsoft Entra service principals with Azure SQL](https://aka.ms/sqlaadsetup).
@@ -84,7 +83,7 @@ In order to use the Workbooks that allow you to analyze your Azure commitments u
./Setup-BenefitsUsageDependencies.ps1 -AutomationAccountName -ResourceGroupName [-AzureEnvironment ]
```
-If you run into issues with the Azure Price sheet ingestion (due to the large size of the CVS export), you can create the following Azure Automation variable, to filter in the Price Sheet regions: `AzureOptimization_PriceSheetMeterRegions` set to the comma-separated billing regions of your virtual machines. For example, *EU West, EU, and North*.
+If you run into issues with the Azure Price sheet ingestion (due to the large size of the CVS export), you can create the following Azure Automation variable, to filter in the Price Sheet regions: `AzureOptimization_PriceSheetMeterRegions` set to the comma-separated billing regions of your virtual machines. For example, _EU West, EU, and North_.
The Reservations Usage Workbook has a couple of "Unused Reservations" tiles that require AOE to export Consumption data at the EA/MCA scope (instead of the default Subscription scope). You can switch to EA/MCA scope consumption by creating/updating the `AzureOptimization_ConsumptionScope` Automation variable with `BillingAccount` (EA/MCA, requiring another Billing Account Reader role manually granted to the AOE managed identity) or `BillingProfile` (MCA only) as value. This option can generate a large single consumption export which might lead to errors due to lack of memory (it would in turn require [deploying AOE with a Hybrid Worker](./customize.md#scale-aoe-runbooks-with-hybrid-worker)).
@@ -100,13 +99,13 @@ However, if you previously customized components such as Automation variables or
With the `DoPartialUpgrade` switch, the deployment will only:
-* Add new storage containers
-* Update/add Automation runbooks
-* Update/add Automation modules
-* Add new Automation schedules
-* Add new Automation variables
-* Upgrade the SQL database model
-* Update Log Analytics Workbooks
+- Add new storage containers
+- Update/add Automation runbooks
+- Update/add Automation modules
+- Add new Automation schedules
+- Add new Automation variables
+- Upgrade the SQL database model
+- Update Log Analytics Workbooks
Some customers might also customize the SQL Server deployment, for example, migrating from SQL Database to a SQL Managed Instance. There's no tooling available to help the migration, but once the database migration is done manually, the AOE upgrade script supports future `DoPartialUpgrade` upgrades with the `IgnoreNamingAvailabilityErrors` switch on (skips SQL Server naming/existence validation).
@@ -132,4 +131,4 @@ Related solutions:
- [FinOps toolkit Power BI reports](../power-bi/reports.md)
- [FinOps workbooks](../workbooks/finops-workbooks-overview.md)
-
\ No newline at end of file
+
diff --git a/docs-mslearn/toolkit/optimization-engine/suppress-recommendations.md b/docs-mslearn/toolkit/optimization-engine/suppress-recommendations.md
index e990ddd85..ad7478927 100644
--- a/docs-mslearn/toolkit/optimization-engine/suppress-recommendations.md
+++ b/docs-mslearn/toolkit/optimization-engine/suppress-recommendations.md
@@ -3,7 +3,7 @@ title: Suppress recommendations
description: Learn how to adjust the Azure Optimization Engine recommendation results for your environment characteristics by suppressing irrelevant recommendations.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: hepint
#customer intent: As a FinOps user, I want to understand how to suppress recommendations in Azure optimization engine.
---
-
# Suppress recommendations
When working on the recommendations provided by the Azure Optimization Engine (AOE), you might find some cases where the recommendation doesn't apply. For example, AOE might suggest high availability recommendations that don't apply to Dev/Test virtual machines (VM), or recommend enabling Azure Backup for noncritical VMs. You can suppress recommendations in two ways:
diff --git a/docs-mslearn/toolkit/optimization-engine/troubleshooting.md b/docs-mslearn/toolkit/optimization-engine/troubleshooting.md
index f6e1ec7aa..02b5b4585 100644
--- a/docs-mslearn/toolkit/optimization-engine/troubleshooting.md
+++ b/docs-mslearn/toolkit/optimization-engine/troubleshooting.md
@@ -3,7 +3,7 @@ title: Troubleshoot Azure Optimization Engine issues
description: This article helps you troubleshoot common issues with Azure Optimization Engine deployment and runtime.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: troubleshooting
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to resolve common issues with Azure optimization engine.
---
-
# Troubleshoot Azure Optimization Engine issues
This article describes common issues you might experience with Azure Optimization Engine (AOE) deployment and runtime.
diff --git a/docs-mslearn/toolkit/power-bi/connector.md b/docs-mslearn/toolkit/power-bi/connector.md
index 2fa3d61b5..dbb5f4dde 100644
--- a/docs-mslearn/toolkit/power-bi/connector.md
+++ b/docs-mslearn/toolkit/power-bi/connector.md
@@ -3,7 +3,7 @@ title: Cost Management connector report
description: Understand the Power BI report for the Cost Management connector, including cost overviews, commitment discounts, and savings insights.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,7 +12,7 @@ ms.reviewer: micflan
---
-
+
# Cost Management connector report
The **Cost Management connector** report provides a general overview of cost, commitment discounts, and savings with a few common breakdowns that enable you to:
@@ -25,15 +25,17 @@ The **Cost Management connector** report provides a general overview of cost, co
- Determine which resources used commitment discounts, also called chargeback.
- Summarize cost savings from negotiated and commitment discounts.
+
> [!div class="nextstepaction"]
> [Download](https://github.com/microsoft/finops-toolkit/releases/latest/download/CostManagementConnector.pbix)
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20and%20optimize%20cost%20and%20usage%20with%20the%20FinOps%20toolkit%20Cost%20Management%20connector%20report%3F/cvaQuestion/How%20valuable%20is%20the%20Cost%20Management%20connector%20report%3F/surveyId/FTK/bladeName/PowerBI.CMConnector/featureName/Documentation)
+
> [!WARNING]
-> The Cost Management connector uses an older API that doesn't include all details about savings plans. You'll see unused savings plan charges that don't have identifiable usage for due to this gap. This issue skews numbers, if you have savings plans. Consider using [FinOps hubs](../hubs/finops-hubs-overview.md) to use savings plans.
+> The Cost Management connector uses an older API that doesn't include all details about savings plans. You'll see unused savings plan charges that don't have identifiable usage for due to this gap. This issue skews numbers, if you have savings plans. Consider using [FinOps hubs](../hubs/finops-hubs-overview.md) to use savings plans.
@@ -61,7 +63,7 @@ A few common KPIs you fill find in this report are:
- **Commitment savings** shows how much you're saving with commitment discounts.
> [!IMPORTANT]
> Microsoft Cost Management doesn't include the unit price for amortized charges with Microsoft Customer Agreement accounts, so commitment savings cannot be calculated. File a support request and speak to your field rep to escalate this issue.
-
+
## Pages
@@ -133,8 +135,10 @@ If you have feedback about FOCUS, [create an issue in the FOCUS repository](http
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
@@ -145,11 +149,8 @@ Related resources:
- [What is FOCUS?](../../focus/what-is-focus.md)
- [How to convert Cost Management data to FOCUS](../../focus/convert.md)
- [How to update existing reports to FOCUS](../../focus/mapping.md)
-
-
+- [Common terms](../help/terms.md)
+- [Data dictionary](../help/data-dictionary.md)
Related FinOps capabilities:
diff --git a/docs-mslearn/toolkit/power-bi/cost-summary.md b/docs-mslearn/toolkit/power-bi/cost-summary.md
index c241ce3b5..ba345dba3 100644
--- a/docs-mslearn/toolkit/power-bi/cost-summary.md
+++ b/docs-mslearn/toolkit/power-bi/cost-summary.md
@@ -3,7 +3,7 @@ title: FinOps toolkit Cost summary report
description: Learn about the Cost Summary Report in Power BI to identify top cost contributors, review cost changes over time, and summarize savings.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,7 +12,7 @@ ms.reviewer: micflan
---
-
+
# Cost summary report
The **Cost summary report** provides a general overview of cost and savings with a few common breakdowns that enable you to:
@@ -21,12 +21,14 @@ The **Cost summary report** provides a general overview of cost and savings with
- Review changes in cost over time.
- Build a chargeback report.
+
> [!div class="nextstepaction"]
> [Download for KQL](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-kql.zip)
> [!div class="nextstepaction"]
> [Download for storage](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-storage.zip)
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20and%20optimize%20cost%20and%20usage%20with%20the%20FinOps%20toolkit%20Cost%20summary%20report%3F/cvaQuestion/How%20valuable%20is%20the%20Cost%20summary%20report%3F/surveyId/FTK/bladeName/PowerBI.CostSummary/featureName/Documentation)
+
Power BI reports are provided as template (.PBIT) files. Template files are not preconfigured and do not include sample data. When you first open a Power BI template, you will be prompted to specify report parameters, then authenticate with each data source to view your data. To access visuals and queries without loading data, select Edit in the Load menu button.
@@ -38,12 +40,12 @@ This article contains images showing example data. Any price data is for test pu
Before using this report, you need to configure Cost Management exports to provide the necessary data. The following exports are required or recommended:
-| Dataset | Version | Requirement | Notes |
-| --------------------------- | ---------------- | ----------- | ------------------------------------------------------------------------------------------------- |
-| Cost and usage (FOCUS) | `1.0` or `1.0r2` | **Required** | Provides the primary cost and usage data for all report functionality. |
-| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate cost calculations. |
-| Reservation details | `2023-03-01` | Optional | Provides additional reservation usage details if you use reservations. |
-| Reservation transactions | `2023-05-01` | Optional | Provides reservation purchase and refund details if you use reservations. |
+| Dataset | Version | Requirement | Notes |
+| ------------------------ | -------------------------------- | ------------ | ----------------------------------------------------------------------------------------------- |
+| Cost and usage (FOCUS) | `1.0`, `1.0r2`, or `1.2-preview` | **Required** | Provides the primary cost and usage data for all report functionality. |
+| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate cost calculations. |
+| Reservation details | `2023-03-01` | Optional | Provides additional reservation usage details if you use reservations. |
+| Reservation transactions | `2023-05-01` | Optional | Provides reservation purchase and refund details if you use reservations. |
For instructions on how to create these exports, see [Create and manage exports](/azure/cost-management-billing/costs/tutorial-improved-exports). If using FinOps hubs, these exports can be configured automatically.
@@ -234,8 +236,10 @@ The **Tags example** page provides a set of visuals to demonstrate promoted tags
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
## Related content
diff --git a/docs-mslearn/toolkit/power-bi/data-ingestion.md b/docs-mslearn/toolkit/power-bi/data-ingestion.md
index 482454fa9..636bcdb77 100644
--- a/docs-mslearn/toolkit/power-bi/data-ingestion.md
+++ b/docs-mslearn/toolkit/power-bi/data-ingestion.md
@@ -3,7 +3,7 @@ title: Data ingestion report
description: Learn about the Data Ingestion Report, which provides insights into the data ingested into your FinOps hub storage account.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,17 +12,19 @@ ms.reviewer: micflan
---
-
+
# Data ingestion report
The **Data ingestion report** provides details about the data that got ingested into your FinOps hub storage account.
+
> [!div class="nextstepaction"]
> [Download for KQL](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-kql.zip)
> [!div class="nextstepaction"]
> [Download for storage](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-storage.zip)
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20and%20optimize%20cost%20and%20usage%20with%20the%20FinOps%20toolkit%20Data%20ingestion%20report%3F/cvaQuestion/How%20valuable%20is%20the%20Data%20ingestion%20report%3F/surveyId/FTK/bladeName/PowerBI.DataIngestion/featureName/Documentation)
+
Power BI reports are provided as template (.PBIT) files. Template files are not preconfigured and do not include sample data. When you first open a Power BI template, you will be prompted to specify report parameters, then authenticate with each data source to view your data. To access visuals and queries without loading data, select Edit in the Load menu button.
@@ -32,10 +34,10 @@ Power BI reports are provided as template (.PBIT) files. Template files are not
This report is specifically designed for **FinOps hubs** deployments and requires different data sources than other reports:
-| Data source | Requirement | Notes |
-| --------------------------- | ----------- | ------------------------------------------------------------------------------------------------- |
-| FinOps hubs Data Explorer | **Required** | Provides ingestion monitoring data and hub cost analysis. Only available with KQL reports. |
-| Cost and usage (FOCUS) | **Required** | Provides cost data to analyze FinOps hubs infrastructure costs. |
+| Data source | Requirement | Notes |
+| ------------------------- | ------------ | ------------------------------------------------------------------------------------------ |
+| FinOps hubs Data Explorer | **Required** | Provides ingestion monitoring data and hub cost analysis. Only available with KQL reports. |
+| Cost and usage (FOCUS) | **Required** | Provides cost data to analyze FinOps hubs infrastructure costs. |
This report is **only available for KQL reports** connecting to FinOps hubs with Azure Data Explorer. It cannot be used with storage reports or direct Cost Management exports.
@@ -101,8 +103,10 @@ The **Ingestion errors** page summarizes potential issues that were identified a
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
diff --git a/docs-mslearn/toolkit/power-bi/governance.md b/docs-mslearn/toolkit/power-bi/governance.md
index b341037ee..db446af03 100644
--- a/docs-mslearn/toolkit/power-bi/governance.md
+++ b/docs-mslearn/toolkit/power-bi/governance.md
@@ -3,7 +3,7 @@ title: FinOps toolkit Governance report
description: Summarize cloud governance posture including areas like compliance, security, operations, and resource management in Power BI.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,7 +12,7 @@ ms.reviewer: micflan
---
-
+
# Governance report
The **Governance report** summarizes your Microsoft Cloud governance posture. It offers standard metrics aligned with the Cloud Adoption Framework (CAF) to help identify issues, apply recommendations, and resolve compliance gaps.
@@ -30,12 +30,14 @@ This report pulls data from:
The Governance report is new and still being fleshed out. We will continue to expand capabilities in each release in alignment with the [Cost optimization workbook](../workbooks/optimization.md). To request additional capabilities, please [create a feature request](https://aka.ms/ftk/ideas) in GitHub.
+
> [!div class="nextstepaction"]
> [Download for KQL](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-kql.zip)
> [!div class="nextstepaction"]
> [Download for storage](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-storage.zip)
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20and%20optimize%20cost%20and%20usage%20with%20the%20FinOps%20toolkit%20Policy%20and%20governance%20report%3F/cvaQuestion/How%20valuable%20is%20the%20Policy%20and%20governance%20report%3F/surveyId/FTK/bladeName/PowerBI.Governance/featureName/Documentation)
+
Power BI reports are provided as template (.PBIT) files. Template files are not preconfigured and do not include sample data. When you first open a Power BI template, you will be prompted to specify report parameters, then authenticate with each data source to view your data. To access visuals and queries without loading data, select Edit in the Load menu button.
@@ -45,11 +47,11 @@ Power BI reports are provided as template (.PBIT) files. Template files are not
Before using this report, you need to configure Cost Management exports to provide the necessary data. The following exports are required or recommended:
-| Dataset | Version | Requirement | Notes |
-| --------------------------- | ---------------- | ----------- | ------------------------------------------------------------------------------------------------- |
-| Cost and usage (FOCUS) | `1.0` or `1.0r2` | **Required** | Provides the primary cost and usage data for governance analysis. |
-| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate cost calculations. |
-| Azure Resource Graph | Latest | **Required** | Required to gather resource metadata and governance information for compliance analysis. |
+| Dataset | Version | Requirement | Notes |
+| ---------------------- | -------------------------------- | ------------ | ----------------------------------------------------------------------------------------------- |
+| Cost and usage (FOCUS) | `1.0`, `1.0r2`, or `1.2-preview` | **Required** | Provides the primary cost and usage data for governance analysis. |
+| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate cost calculations. |
+| Azure Resource Graph | Latest | **Required** | Required to gather resource metadata and governance information for compliance analysis. |
For instructions on how to create Cost Management exports, see [Create and manage exports](/azure/cost-management-billing/costs/tutorial-improved-exports). If using FinOps hubs, these exports can be configured automatically.
@@ -121,8 +123,10 @@ The **Network security groups** page lists network security groups and network s
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
diff --git a/docs-mslearn/toolkit/power-bi/help-me-choose.md b/docs-mslearn/toolkit/power-bi/help-me-choose.md
index 0efe85b52..a0f1c3a38 100644
--- a/docs-mslearn/toolkit/power-bi/help-me-choose.md
+++ b/docs-mslearn/toolkit/power-bi/help-me-choose.md
@@ -3,7 +3,7 @@ title: Choose a Power BI data source
description: Learn about different ways to connect Power BI to your data to analyze and report on cloud costs, including connectors and exports.
author: flanakin
ms.author: micflan
-ms.date: 04/29/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to learn about the different ways to connect Power BI to your data so that I can do it.
---
-
# Choosing a Power BI data source
Microsoft offers several ways to analyze and report on your cloud costs. For quick exploration of subscriptions and billing accounts, we recommend starting with smart views in [Cost analysis](/azure/cost-management-billing/costs/quick-acm-cost-analysis) in the Azure portal or Microsoft 365 admin center. When you need more control or to save and share charts, switch to customizable views.
diff --git a/docs-mslearn/toolkit/power-bi/invoicing.md b/docs-mslearn/toolkit/power-bi/invoicing.md
index b6b248193..7e33baf36 100644
--- a/docs-mslearn/toolkit/power-bi/invoicing.md
+++ b/docs-mslearn/toolkit/power-bi/invoicing.md
@@ -3,7 +3,7 @@ title: FinOps toolkit Invoicing and chargeback report
description: Learn about the Invoicing and chargeback report in Power BI to review and reconcile billed charges compared to your Microsoft Cloud invoice.
author: flanakin
ms.author: micflan
-ms.date: 06/04/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,17 +12,19 @@ ms.reviewer: micflan
---
-
+
# Invoicing and chargeback report
The **Invoicing and chargeback report** provides a general overview of billed costs and facilitates comparing cost and usage details with the charges on your invoice.
+
> [!div class="nextstepaction"]
> [Download for KQL](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-kql.zip)
> [!div class="nextstepaction"]
> [Download for storage](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-storage.zip)
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20and%20optimize%20cost%20and%20usage%20with%20the%20FinOps%20toolkit%20Incoicing%20and%20chargeback%20report%3F/cvaQuestion/How%20valuable%20is%20the%20Incoicing%20and%20chargeback%20report%3F/surveyId/FTK/bladeName/PowerBI.Invoicing/featureName/Documentation)
+
Power BI reports are provided as template (.PBIT) files. Template files are not preconfigured and do not include sample data. When you first open a Power BI template, you will be prompted to specify report parameters, then authenticate with each data source to view your data. To access visuals and queries without loading data, select Edit in the Load menu button.
@@ -34,12 +36,12 @@ This article contains images showing example data. Any price data is for test pu
Before using this report, you need to configure Cost Management exports to provide the necessary data. The following exports are required or recommended:
-| Dataset | Version | Requirement | Notes |
-| --------------------------- | ---------------- | ----------- | ------------------------------------------------------------------------------------------------- |
-| Cost and usage (FOCUS) | `1.0` or `1.0r2` | **Required** | Provides the primary cost and usage data for all report functionality. |
-| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate billed costs. |
-| Reservation details | `2023-03-01` | Optional | Provides additional reservation usage details if you use reservations. |
-| Reservation transactions | `2023-05-01` | Optional | Provides reservation purchase and refund details if you use reservations. |
+| Dataset | Version | Requirement | Notes |
+| ------------------------ | -------------------------------- | ------------ | ------------------------------------------------------------------------------------------ |
+| Cost and usage (FOCUS) | `1.0`, `1.0r2`, or `1.2-preview` | **Required** | Provides the primary cost and usage data for all report functionality. |
+| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate billed costs. |
+| Reservation details | `2023-03-01` | Optional | Provides additional reservation usage details if you use reservations. |
+| Reservation transactions | `2023-05-01` | Optional | Provides reservation purchase and refund details if you use reservations. |
For instructions on how to create these exports, see [Create and manage exports](/azure/cost-management-billing/costs/tutorial-improved-exports). If using FinOps hubs, these exports can be configured automatically.
@@ -160,8 +162,10 @@ The **Tags example** page provides a conceptual breakdown of charges based on pr
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
## Related content
diff --git a/docs-mslearn/toolkit/power-bi/rate-optimization.md b/docs-mslearn/toolkit/power-bi/rate-optimization.md
index c93ded728..d448f7c70 100644
--- a/docs-mslearn/toolkit/power-bi/rate-optimization.md
+++ b/docs-mslearn/toolkit/power-bi/rate-optimization.md
@@ -3,7 +3,7 @@ title: FinOps toolkit Rate optimization report
description: Learn about the Rate Optimization Report in Power BI, which summarizes savings from commitment discounts like reservations and savings plans.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,7 +12,7 @@ ms.reviewer: micflan
---
-
+
# Rate optimization report
The **Rate optimization report** summarizes existing and potential savings from commitment discounts, like reservations and savings plans. This report enables you to:
@@ -23,12 +23,14 @@ The **Rate optimization report** summarizes existing and potential savings from
- Determine which resources used commitment discounts (also called chargeback).
- Summarize cost savings from commitment discounts.
+
> [!div class="nextstepaction"]
> [Download for KQL](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-kql.zip)
> [!div class="nextstepaction"]
> [Download for storage](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-storage.zip)
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20and%20optimize%20cost%20and%20usage%20with%20the%20FinOps%20toolkit%20Rate%20optimization%20report%3F/cvaQuestion/How%20valuable%20is%20the%20Rate%20optimization%20report%3F/surveyId/FTK/bladeName/PowerBI.RateOptimization/featureName/Documentation)
+
Power BI reports are provided as template (.PBIT) files. Template files are not preconfigured and do not include sample data. When you first open a Power BI template, you will be prompted to specify report parameters, then authenticate with each data source to view your data. To access visuals and queries without loading data, select Edit in the Load menu button.
@@ -41,13 +43,13 @@ Power BI reports are provided as template (.PBIT) files. Template files are not
Before using this report, you need to configure Cost Management exports to provide the necessary data. The following exports are required or recommended:
-| Dataset | Version | Requirement | Notes |
-| --------------------------- | ---------------- | ----------- | ------------------------------------------------------------------------------------------------- |
-| Cost and usage (FOCUS) | `1.0` or `1.0r2` | **Required** | Provides the primary cost and usage data for all report functionality. |
-| Price sheet | `2023-05-01` | **Required** | Required to calculate accurate savings and show missing list and contracted prices. |
-| Reservation details | `2023-03-01` | Recommended | Provides detailed reservation usage data for utilization analysis. |
-| Reservation recommendations | `2023-05-01` | **Required** | Required to display reservation purchase recommendations in the Recommendations page. |
-| Reservation transactions | `2023-05-01` | Optional | Provides reservation purchase and refund details. |
+| Dataset | Version | Requirement | Notes |
+| --------------------------- | -------------------------------- | ------------ | ------------------------------------------------------------------------------------- |
+| Cost and usage (FOCUS) | `1.0`, `1.0r2`, or `1.2-preview` | **Required** | Provides the primary cost and usage data for all report functionality. |
+| Price sheet | `2023-05-01` | **Required** | Required to calculate accurate savings and show missing list and contracted prices. |
+| Reservation details | `2023-03-01` | Recommended | Provides detailed reservation usage data for utilization analysis. |
+| Reservation recommendations | `2023-05-01` | **Required** | Required to display reservation purchase recommendations in the Recommendations page. |
+| Reservation transactions | `2023-05-01` | Optional | Provides reservation purchase and refund details. |
For instructions on how to create these exports, see [Create and manage exports](/azure/cost-management-billing/costs/tutorial-improved-exports). If using FinOps hubs, these exports can be configured automatically.
@@ -283,8 +285,10 @@ The **Data quality** page shows some of the data used to calculate savings at a
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
diff --git a/docs-mslearn/toolkit/power-bi/reports.md b/docs-mslearn/toolkit/power-bi/reports.md
index 50b32ae0d..45ae4fdb0 100644
--- a/docs-mslearn/toolkit/power-bi/reports.md
+++ b/docs-mslearn/toolkit/power-bi/reports.md
@@ -3,7 +3,7 @@ title: FinOps toolkit Power BI reports
description: Learn about the Power BI reports in the FinOps toolkit to customize and enhance your FinOps reporting and connect to Cost Management exports or FinOps hubs.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to learn about FinOps reports so that I can use them to better understand my cost data.
---
-
# Power BI reports
The FinOps toolkit Power BI reports provide a great starting point for your FinOps reporting. We recommend customizing them to keep what works, edit and augment reports with your own data, and remove anything that isn't needed. You can also copy and paste visuals between reports to create your own custom reports.
@@ -35,8 +34,10 @@ The FinOps toolkit includes reports that connect to different data sources. We r
If you need to monitor more than $1 million in spend, we generally recommend using Kusto Query Language (KQL) reports that connect to [FinOps hubs](../hubs/finops-hubs-overview.md) with Azure Data Explorer or Microsoft Fabric. Organizations who need other reports can continue to connect to the underlying hub storage account.
+
> [!div class="nextstepaction"]
> [Download demo](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-demo.zip)
+
In addition, the following reports use the Cost Management connector for Power BI to connect to your data. While the connector isn't recommended due to performance and scalability, these reports are also available for Enterprise Agreement (EA) and Microsoft Customer Agreement (MCA) accounts.
@@ -93,13 +94,13 @@ Configure FinOps hubs or Cost Management exports with KQL or storage reports. Fo
**Before using any Power BI report**, you need to configure the appropriate Cost Management exports. Different reports require different datasets:
-| Dataset | Version | Required for reports | Notes |
-| --------------------------- | ---------------- | ------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
-| Cost and usage (FOCUS) | `1.0` or `1.0r2` | **All reports** | Primary cost and usage data. Required for all functionality. |
-| Price sheet | `2023-05-01` | All reports (recommended for accurate pricing) | Required to populate missing prices for EA and MCA accounts. |
-| Reservation details | `2023-03-01` | Rate optimization (recommended) | Provides detailed reservation usage data for utilization analysis. |
-| Reservation recommendations | `2023-05-01` | **Rate optimization** (required for recommendations) | Required to display reservation purchase recommendations. |
-| Reservation transactions | `2023-05-01` | Rate optimization, Invoicing (optional) | Provides reservation purchase and refund details. |
+| Dataset | Version | Required for reports | Notes |
+| --------------------------- | -------------------------------- | ---------------------------------------------------- | ------------------------------------------------------------------ |
+| Cost and usage (FOCUS) | `1.0`, `1.0r2`, or `1.2-preview` | **All reports** | Primary cost and usage data. Required for all functionality. |
+| Price sheet | `2023-05-01` | All reports (recommended for accurate pricing) | Required to populate missing prices for EA and MCA accounts. |
+| Reservation details | `2023-03-01` | Rate optimization (recommended) | Provides detailed reservation usage data for utilization analysis. |
+| Reservation recommendations | `2023-05-01` | **Rate optimization** (required for recommendations) | Required to display reservation purchase recommendations. |
+| Reservation transactions | `2023-05-01` | Rate optimization, Invoicing (optional) | Provides reservation purchase and refund details. |
> [!IMPORTANT]
> Each report documentation page includes specific export requirements. Review the "Export requirements" section on each report page before downloading to ensure you have the necessary data configured.
@@ -112,8 +113,10 @@ For more information, see [How to setup Power BI](setup.md#set-up-your-first-rep
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
diff --git a/docs-mslearn/toolkit/power-bi/setup.md b/docs-mslearn/toolkit/power-bi/setup.md
index 2ac21ea43..093dabf24 100644
--- a/docs-mslearn/toolkit/power-bi/setup.md
+++ b/docs-mslearn/toolkit/power-bi/setup.md
@@ -3,7 +3,7 @@ title: Set up Power BI reports
description: Learn how to set up Power BI FinOps reports using the FinOps toolkit, customize visuals, and connect to your cost data for detailed analysis.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to learn how to set up Power BI FinOps reports so that I can use them analyze my cost data.
---
-
# How to set up Power BI
The FinOps toolkit Power BI reports provide a great starting point for your FinOps reporting. We recommend customizing them to keep what works, edit and augment reports with your own data, and remove anything that isn't needed. You can also copy and paste visuals between reports to create your own custom reports.
@@ -22,13 +21,13 @@ FinOps toolkit reports support several ways to connect to your cost data. We gen
The following table shows the different datasets available and which reports and tools can access them:
-| Dataset | Description | Compatible reports and tools | Notes |
-|---------|-------------|------------------------------|-------|
-| Cost Management exports | Raw cost and usage data exported to Azure Data Lake Storage Gen2 | • Power BI storage reports
• Custom Power BI reports
• Direct storage access | Recommended for accounts with less than $2M monthly spend |
-| FinOps hubs + Data Explorer (ADX) | Cost data processed and stored in Azure Data Explorer clusters | • Power BI KQL reports
• Data Explorer dashboards
• Azure Monitor workbooks
• Direct KQL queries
• Custom applications via Kusto API | Recommended for accounts with more than $100K total spend |
-| FinOps hubs + Microsoft Fabric RTI | Cost data processed and stored in Microsoft Fabric Real-Time Intelligence | • Power BI KQL reports
• Fabric Real-Time dashboards
• Direct KQL queries
• Custom applications via Kusto API | Best performance and capabilities option |
-| Microsoft Fabric OneLake | Raw exports stored in Microsoft Fabric OneLake | • Custom Fabric notebooks
• Custom Power BI reports
• Fabric data pipelines | For organizations already using Microsoft Fabric |
-| Cost Management connector | Direct Power BI connection to Cost Management APIs | • Cost Management connector Power BI reports | Deprecated - not recommended for new implementations |
+| Dataset | Description | Compatible reports and tools | Notes |
+| ---------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------- |
+| Cost Management exports | Raw cost and usage data exported to Azure Data Lake Storage Gen2 | • Power BI storage reports
• Custom Power BI reports
• Direct storage access | Recommended for accounts with less than $2M monthly spend |
+| FinOps hubs + Data Explorer (ADX) | Cost data processed and stored in Azure Data Explorer clusters | • Power BI KQL reports
• Data Explorer dashboards
• Azure Monitor workbooks
• Direct KQL queries
• Custom applications via Kusto API | Recommended for accounts with more than $100K total spend |
+| FinOps hubs + Microsoft Fabric RTI | Cost data processed and stored in Microsoft Fabric Real-Time Intelligence | • Power BI KQL reports
• Fabric Real-Time dashboards
• Direct KQL queries
• Custom applications via Kusto API | Best performance and capabilities option |
+| Microsoft Fabric OneLake | Raw exports stored in Microsoft Fabric OneLake | • Custom Fabric notebooks
• Custom Power BI reports
• Fabric data pipelines | For organizations already using Microsoft Fabric |
+| Cost Management connector | Direct Power BI connection to Cost Management APIs | • Cost Management connector Power BI reports | Deprecated - not recommended for new implementations |
Each dataset offers different capabilities and is optimized for different use cases. For detailed guidance on choosing the right option, see [Help me choose](help-me-choose.md).
@@ -57,16 +56,16 @@ The FinOps toolkit Power BI reports include preconfigured visuals, but aren't co
- If not, select the link and change the access tier to "Hot".
- Other access tiers have not been tested and are not recommended due to the performance impact.
2. Configure Cost Management exports for any data you would like to include in reports.
-
+
You can create exports manually in the Azure portal or programmatically using the [`New-FinOpsCostExport`](../powershell/cost/new-finopscostexport.md) PowerShell command. Include the following datasets:
- | Dataset | Version | Notes |
- | --------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------------------- |
- | Cost and usage (FOCUS) | `1.0` or `1.0r2` | Required for all reports. If you need FOCUS 1.0-preview, use [FinOps hubs](../hubs/finops-hubs-overview.md) with Data Explorer. |
- | Price sheet | `2023-05-01` | Required to populate missing prices for EA and MCA. |
- | Reservation details | `2023-03-01` | Optional. |
- | Reservation recommendations | `2023-05-01` | Required to see reservation recommendations in the Rate optimization report. |
- | Reservation transactions | `2023-05-01` | Optional. |
+ | Dataset | Version | Notes |
+ | --------------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
+ | Cost and usage (FOCUS) | `1.0`, `1.0r2`, or `1.2-preview` | Required for all reports. If you need FOCUS 1.0-preview, use [FinOps hubs](../hubs/finops-hubs-overview.md) with Data Explorer. |
+ | Price sheet | `2023-05-01` | Required to populate missing prices for EA and MCA. |
+ | Reservation details | `2023-03-01` | Optional. |
+ | Reservation recommendations | `2023-05-01` | Required to see reservation recommendations in the Rate optimization report. |
+ | Reservation transactions | `2023-05-01` | Optional. |
3. Download and open the desired report in Power BI Desktop.
@@ -116,8 +115,8 @@ The FinOps toolkit Power BI reports include preconfigured visuals, but aren't co
- **Azure Data Explorer (Kusto)** – Use an account that has at least viewer access to the Hub database.
- **Azure Resource Graph** – Use an account that has direct access to any subscriptions you would like to report on.
- **(your storage account)** – Use a SAS token or an account that has Storage Blob Data Reader or greater access.
- - **https://ccmstorageprod...** – Anonymous access. This URL is used for reservation size flexibility data.
- - **https://github.com/...** – Anonymous access. This URL is used for FinOps toolkit open data files.
+ - **...** – Anonymous access. This URL is used for reservation size flexibility data.
+ - **...** – Anonymous access. This URL is used for FinOps toolkit open data files.
If you run into any issues syncing your data, see [Troubleshooting Power BI reports](../help/troubleshooting.md).
@@ -128,6 +127,7 @@ If you run into any issues syncing your data, see [Troubleshooting Power BI repo
Shared Access Signature (SAS) tokens allow you to connect to a storage account without end user credentials or setting up a service principal. To connect Power BI reports to your data via SAS tokens:
1. Generate the SAS token with required permissions:
+
1. Navigate the FinOps hub storage account in the Azure portal.
2. Select **Security + Networking** > **Shared access signature** in the menu on the left.
3. Under **Allowed resource types**, select `Container` and `Object`.
diff --git a/docs-mslearn/toolkit/power-bi/template-app.md b/docs-mslearn/toolkit/power-bi/template-app.md
index 7ab0bedb5..6f4fc51dc 100644
--- a/docs-mslearn/toolkit/power-bi/template-app.md
+++ b/docs-mslearn/toolkit/power-bi/template-app.md
@@ -3,7 +3,7 @@ title: Cost Management template app for Enterprise Agreement
description: Learn about the Cost Management template app for Enterprise Agreement accounts, including its features, usage insights, and available reports.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,15 +12,16 @@ ms.reviewer: micflan
---
-
# Cost Management template app for Enterprise Agreement accounts
The **EA template app** is the .pbix version of the "Cost Management app" in Microsoft AppSource. The template app isn't customizable or downloadable, so we're making the PBIX file available here. We don't recommend using this report as it only works for Enterprise Agreement billing accounts and is no longer being updated. You're welcome to download and customize it as needed. However, you might want to check out the other [FinOps toolkit reports](reports.md), which were updated to cover new scenarios. The [Cost summary](cost-summary.md) and [Rate optimization](rate-optimization.md) reports were both created based on the template app, so you should find most capabilities within those reports. If you feel something is missing, [let us know](https://aka.ms/ftk/ideas)!
+
> [!div class="nextstepaction"]
> [Download](https://github.com/microsoft/finops-toolkit/releases/latest/download/CostManagementTemplateApp.pbix)
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20understand%20and%20optimize%20cost%20and%20usage%20with%20the%20FinOps%20toolkit%20Cost%20Management%20template%20app%20report%3F/cvaQuestion/How%20valuable%20is%20the%20Cost%20Management%20template%20app%20report%3F/surveyId/FTK/bladeName/PowerBI.CMTemplateApp/featureName/Documentation)
+
@@ -58,8 +59,10 @@ In general, we don't plan to make changes to the template app. The following min
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
diff --git a/docs-mslearn/toolkit/power-bi/workload-optimization.md b/docs-mslearn/toolkit/power-bi/workload-optimization.md
index a7d279b18..228652c65 100644
--- a/docs-mslearn/toolkit/power-bi/workload-optimization.md
+++ b/docs-mslearn/toolkit/power-bi/workload-optimization.md
@@ -3,7 +3,7 @@ title: FinOps toolkit Workload optimization report
description: Learn about the Workload optimization report, which identifies opportunities for rightsizing and removing unused resources to enhance efficiency.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -12,7 +12,7 @@ ms.reviewer: micflan
---
-
+
# Workload optimization report
The **Workload optimization report** provides insights into resource utilization and efficiency opportunities based on historical usage patterns. This report helps you:
@@ -26,10 +26,12 @@ This report pulls data from:
The Workload optimization report is new and still in development. We will continue to expand capabilities in each release in alignment with the [Cost optimization workbook](../workbooks/optimization.md). To request other capabilities, [create a feature request](https://aka.ms/ftk/ideas) in GitHub.
+
> [!div class="nextstepaction"]
> [Download for KQL](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-kql.zip)
> [!div class="nextstepaction"]
> [Download for storage](https://github.com/microsoft/finops-toolkit/releases/latest/download/PowerBI-storage.zip)
+
Power BI reports are provided as template (.PBIT) files. Template files are not preconfigured and do not include sample data. When you first open a Power BI template, you will be prompted to specify report parameters, then authenticate with each data source to view your data. To access visuals and queries without loading data, select Edit in the Load menu button.
@@ -39,11 +41,11 @@ Power BI reports are provided as template (.PBIT) files. Template files are not
Before using this report, you need to configure Cost Management exports to provide the necessary data. The following exports are required or recommended:
-| Dataset | Version | Requirement | Notes |
-| --------------------------- | ---------------- | ----------- | ------------------------------------------------------------------------------------------------- |
-| Cost and usage (FOCUS) | `1.0` or `1.0r2` | **Required** | Provides the primary cost and usage data for resource cost analysis. |
-| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate cost calculations. |
-| Azure Resource Graph | Latest | **Required** | Required to gather resource metadata for workload optimization analysis. |
+| Dataset | Version | Requirement | Notes |
+| ---------------------- | -------------------------------- | ------------ | ----------------------------------------------------------------------------------------------- |
+| Cost and usage (FOCUS) | `1.0`, `1.0r2`, or `1.2-preview` | **Required** | Provides the primary cost and usage data for resource cost analysis. |
+| Price sheet | `2023-05-01` | Recommended | Required to populate missing prices for EA and MCA accounts to show accurate cost calculations. |
+| Azure Resource Graph | Latest | **Required** | Required to gather resource metadata for workload optimization analysis. |
For instructions on how to create Cost Management exports, see [Create and manage exports](/azure/cost-management-billing/costs/tutorial-improved-exports). If using FinOps hubs, these exports can be configured automatically.
@@ -77,21 +79,21 @@ The chart shows the cost of each disk over time. The table shows the disks with
-
## Looking for more?
We'd love to hear about any reports, charts, or general reporting questions you're looking to answer. Create a new issue with the details that you'd like to see either included in existing or new reports.
+
> [!div class="nextstepaction"]
> [Share feedback](https://aka.ms/ftk/ideas)
+
diff --git a/docs-mslearn/toolkit/powershell/cost/add-finopsserviceprincipal.md b/docs-mslearn/toolkit/powershell/cost/add-finopsserviceprincipal.md
index 1154c6297..19f05f4db 100644
--- a/docs-mslearn/toolkit/powershell/cost/add-finopsserviceprincipal.md
+++ b/docs-mslearn/toolkit/powershell/cost/add-finopsserviceprincipal.md
@@ -3,7 +3,7 @@ title: Add-FinOpsServicePrincipal command
description: Grants the specified service principal or managed identity access to an Enterprise Agreement billing account or department.
author: flanakin
ms.author: micflan
-ms.date: 04/07/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: brettwil
#customer intent: As a FinOps user, I want to understand how to use the Add-FinOpsServicePrincipal command in the FinOpsToolkit module.
---
-
# Add-FinOpsServicePrincipal command
The **Add-FinOpsServicePrincipal** command grants the specified service principal or managed identity access to an Enterprise Agreement billing account or department.
@@ -76,13 +75,17 @@ Grants Department Administrator (read only) permissions to the specified service
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs.DeployHub)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/cost/cost-management-commands.md b/docs-mslearn/toolkit/powershell/cost/cost-management-commands.md
index 8123edafc..a606da5de 100644
--- a/docs-mslearn/toolkit/powershell/cost/cost-management-commands.md
+++ b/docs-mslearn/toolkit/powershell/cost/cost-management-commands.md
@@ -3,7 +3,7 @@ title: Cost Management commands
description: Learn about PowerShell commands in the FinOpsToolkit module to support Cost Management capabilities.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what PowerShell commands are available to automate Cost Management scenarios in the FinOpsToolkit module.
---
-
# Cost Management commands
The Cost Management PowerShell commands help you manage Cost Management features.
@@ -31,13 +30,17 @@ The Cost Management PowerShell commands help you manage Cost Management features
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/CostManagement)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/cost/get-finopscostexport.md b/docs-mslearn/toolkit/powershell/cost/get-finopscostexport.md
index 9682cec1c..8077fabf2 100644
--- a/docs-mslearn/toolkit/powershell/cost/get-finopscostexport.md
+++ b/docs-mslearn/toolkit/powershell/cost/get-finopscostexport.md
@@ -3,7 +3,7 @@ title: Get-FinOpsCostExport command
description: Get a list of Cost Management exports for a given scope using the Get-FinOpsCostExport command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 06/21/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Get-FinOpsCostExport command in the FinOpsToolkit module.
---
-
# Get-FinOpsCostExport command
The **Get-FinOpsCostExport** command gets a list of Cost Management exports for a given scope.
@@ -171,13 +170,17 @@ Gets all exports within the subscription scope for a container matching wildcard
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/CostManagement.GetExport)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/cost/new-finopscostexport.md b/docs-mslearn/toolkit/powershell/cost/new-finopscostexport.md
index 7cff136a2..06c7730dd 100644
--- a/docs-mslearn/toolkit/powershell/cost/new-finopscostexport.md
+++ b/docs-mslearn/toolkit/powershell/cost/new-finopscostexport.md
@@ -3,7 +3,7 @@ title: New-FinOpsCostExport command
description: Create a new Cost Management export for the specified scope using the New-FinOpsCostExport command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 06/21/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what New-FinOpsCostExport command in the FinOpsToolkit module.
---
-
# New-FinOpsCostExport command
The **New-FinOpsCostExport** command creates a new Cost Management export for the specified scope.
@@ -162,13 +161,17 @@ Creates a new daily export called **Daily-MTD** with StartDate = DateTime.Now an
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/CostManagement.NewExport)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/cost/remove-finopscostexport.md b/docs-mslearn/toolkit/powershell/cost/remove-finopscostexport.md
index e87953310..9ad1cc949 100644
--- a/docs-mslearn/toolkit/powershell/cost/remove-finopscostexport.md
+++ b/docs-mslearn/toolkit/powershell/cost/remove-finopscostexport.md
@@ -3,7 +3,7 @@ title: Remove-FinOpsCostExport command
description: Delete a Cost Management export and optionally data associated with the export using the Remove-FinOpsCostExport command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 06/21/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Remove-FinOpsCostExport command in the FinOpsToolkit module.
---
-
# Remove-FinOpsCostExport command
The **Remove-FinOpsCostExport** command deletes a Cost Management export and optionally data associated with the export.
@@ -67,13 +66,17 @@ Deletes a Cost Management export and removes the exported data from the linked s
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/CostManagement.RemoveExport)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/cost/start-finopscostexport.md b/docs-mslearn/toolkit/powershell/cost/start-finopscostexport.md
index 716ce0527..031023211 100644
--- a/docs-mslearn/toolkit/powershell/cost/start-finopscostexport.md
+++ b/docs-mslearn/toolkit/powershell/cost/start-finopscostexport.md
@@ -3,7 +3,7 @@ title: Start-FinOpsCostExport command
description: Initiate a Cost Management export run for the most recent period using the Start-FinOpsCostExport command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 06/21/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Start-FinOpsCostExport command in the FinOpsToolkit module.
---
-
# Start-FinOpsCostExport command
The **Start-FinOpsCostExport** command runs a Cost Management export for the most recent period using the Run API.
@@ -85,13 +84,17 @@ Runs an export called 'CostExport' for the previous 12 months on the 5678 billin
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/CostManagement.StartExport)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/data/get-finopspricingunit.md b/docs-mslearn/toolkit/powershell/data/get-finopspricingunit.md
index 5f1f6a588..651dbdb8e 100644
--- a/docs-mslearn/toolkit/powershell/data/get-finopspricingunit.md
+++ b/docs-mslearn/toolkit/powershell/data/get-finopspricingunit.md
@@ -3,7 +3,7 @@ title: Get-FinOpsPricingUnit command
description: Get a pricing unit, distinct unit, and block size using the Get-FinOpsPricingUnit command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Get-FinOpsPricingUnit command in the FinOpsToolkit module.
---
-
# Get-FinOpsPricingUnit command
The **Get-FinOpsPricingUnit** command returns a pricing unit (also known as unit of measure) with the singular, distinct unit based on applicable block pricing rules, and the pricing block size.
@@ -68,13 +67,17 @@ Returns all pricing units measured in gigabytes.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/OpenData.GetPricingUnit)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/data/get-finopsregion.md b/docs-mslearn/toolkit/powershell/data/get-finopsregion.md
index 2aa77f1ed..46fc4cacf 100644
--- a/docs-mslearn/toolkit/powershell/data/get-finopsregion.md
+++ b/docs-mslearn/toolkit/powershell/data/get-finopsregion.md
@@ -3,7 +3,7 @@ title: Get-FinOpsRegion command
description: Get an Azure region ID and name based on the specified resource location using the Get-FinOpsRegion command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Get-FinOpsRegion command in the FinOpsToolkit module.
---
-
# Get-FinOpsRegion command
The **Get-FinOpsRegion** command returns an Azure region ID and name based on the specified resource location.
@@ -65,13 +64,17 @@ Returns all Asia regions with the original Cost Management ResourceLocation valu
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/OpenData.GetRegion)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/data/get-finopsresourcetype.md b/docs-mslearn/toolkit/powershell/data/get-finopsresourcetype.md
index d74c50b95..b134e4518 100644
--- a/docs-mslearn/toolkit/powershell/data/get-finopsresourcetype.md
+++ b/docs-mslearn/toolkit/powershell/data/get-finopsresourcetype.md
@@ -3,7 +3,7 @@ title: Get-FinOpsResourceType command
description: Get an Azure resource type with readable display names, preview status, description, icon, and support links using the Get-FinOpsResourceType command.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Get-FinOpsResourceType command in the FinOpsToolkit module.
---
-
# Get-FinOpsResourceType command
The **Get-FinOpsResourceType** command returns an Azure resource type with readable display names, a flag to indicate if the resource provider identified it as a preview resource type, a description, an icon, and help and support links.
@@ -63,13 +62,17 @@ Returns all resource types that aren't in preview.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/OpenData.GetResourceType)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/data/get-finopsservice.md b/docs-mslearn/toolkit/powershell/data/get-finopsservice.md
index bc3e70c22..549c81205 100644
--- a/docs-mslearn/toolkit/powershell/data/get-finopsservice.md
+++ b/docs-mslearn/toolkit/powershell/data/get-finopsservice.md
@@ -3,7 +3,7 @@ title: Get-FinOpsService command
description: Get the name and category for a service, publisher, and cloud provider using the Get-FinOpsService command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Get-FinOpsService command in the FinOpsToolkit module.
---
-
# Get-FinOpsService command
The **Get-FinOpsService** command returns service details based on the specified filters. This command is designed to help map Cost Management cost data to the FinOps Open Cost and Usage Specification (FOCUS) schema but can also be useful for general data cleansing.
@@ -71,13 +70,17 @@ Returns all services with a resource provider that starts with `Microsoft.C`.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/OpenData.GetService)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/data/open-data-commands.md b/docs-mslearn/toolkit/powershell/data/open-data-commands.md
index a4ea4df27..150d6e359 100644
--- a/docs-mslearn/toolkit/powershell/data/open-data-commands.md
+++ b/docs-mslearn/toolkit/powershell/data/open-data-commands.md
@@ -3,7 +3,7 @@ title: Open data commands
description: Learn about PowerShell commands available in the FinOpsToolkit module to work with FinOps open data and integrate datasets into your workflow.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what PowerShell commands are available to leverage FinOps open data in the FinOpsToolkit module.
---
-
# Open data integration
The FinOps toolkit open data PowerShell commands help you integrate datasets into your workflow.
@@ -31,13 +30,17 @@ The FinOps toolkit open data PowerShell commands help you integrate datasets int
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/OpenData)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/hubs/deploy-finopshub.md b/docs-mslearn/toolkit/powershell/hubs/deploy-finopshub.md
index f64bdf653..c1128f1e2 100644
--- a/docs-mslearn/toolkit/powershell/hubs/deploy-finopshub.md
+++ b/docs-mslearn/toolkit/powershell/hubs/deploy-finopshub.md
@@ -3,7 +3,7 @@ title: Deploy-FinOpsHub command
description: Deploy a new or update an existing FinOps hub instance using the Deploy-FinOpsHub command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Deploy-FinOpsHub command in the FinOpsToolkit module.
---
-
# Deploy-FinOpsHub command
The **Deploy-FinOpsHub** command either creates a new or updates an existing FinOps hub instance by deploying an Azure Resource Manager deployment template. The FinOps hub template is downloaded from GitHub. To learn more about the template, see the [FinOps hub template](../../hubs/template.md).
@@ -100,13 +99,17 @@ Deploys a FinOps hub instance named MyRemoteHub configured to send data to a rem
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs.DeployHub)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/hubs/finops-hubs-commands.md b/docs-mslearn/toolkit/powershell/hubs/finops-hubs-commands.md
index feb1777b5..f37a9240b 100644
--- a/docs-mslearn/toolkit/powershell/hubs/finops-hubs-commands.md
+++ b/docs-mslearn/toolkit/powershell/hubs/finops-hubs-commands.md
@@ -3,7 +3,7 @@ title: FinOps hubs automation
description: Learn about PowerShell commands available in the FinOpsToolkit module that deploy and manage FinOps hubs.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what PowerShell commands are available to manage FinOps hubs in the FinOpsToolkit module.
---
-
# FinOps hubs automation
The FinOps hubs PowerShell commands help you deploy and manage FinOps hubs instances.
@@ -32,13 +31,17 @@ The FinOps hubs PowerShell commands help you deploy and manage FinOps hubs insta
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/hubs/get-finopshub.md b/docs-mslearn/toolkit/powershell/hubs/get-finopshub.md
index 5ab544cb4..19da32494 100644
--- a/docs-mslearn/toolkit/powershell/hubs/get-finopshub.md
+++ b/docs-mslearn/toolkit/powershell/hubs/get-finopshub.md
@@ -3,7 +3,7 @@ title: Get-FinOpsHub command
description: Get details about a FinOps hub instance using the Get-FinOpsHub command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Get-FinOpsHub command in the FinOpsToolkit module.
---
-
# Get-FinOpsHub command
The Get-FinOpsHubs command calls GitHub to retrieve all toolkit releases, then filters the list based on the specified options.
@@ -80,13 +79,17 @@ Returns all FinOps hubs named `foo` in the `bar` resource group.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs.GetHub)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/hubs/initialize-finopshubdeployment.md b/docs-mslearn/toolkit/powershell/hubs/initialize-finopshubdeployment.md
index d5caccf46..cc27dd772 100644
--- a/docs-mslearn/toolkit/powershell/hubs/initialize-finopshubdeployment.md
+++ b/docs-mslearn/toolkit/powershell/hubs/initialize-finopshubdeployment.md
@@ -3,7 +3,7 @@ title: Initialize-FinOpsHubDeployment command
description: Initialize a FinOps hub deployment using the Initialize-FinOpsHubDeployment command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Initialize-FinOpsHubDeployment command in the FinOpsToolkit module.
---
-
# Initialize-FinOpsHubDeployment command
The **Initialize-FinOpsHubDeployment** command performs any initialization tasks required for a resource group contributor to be able to deploy a FinOps hub instance in Azure, like registering resource providers. To view the full list of tasks performed, run the command with the `-WhatIf` option.
@@ -54,13 +53,17 @@ Shows what would happen if the command runs without actually running it.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs.InitDeployment)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/hubs/register-finopshubproviders.md b/docs-mslearn/toolkit/powershell/hubs/register-finopshubproviders.md
index b2a80987a..904edcd66 100644
--- a/docs-mslearn/toolkit/powershell/hubs/register-finopshubproviders.md
+++ b/docs-mslearn/toolkit/powershell/hubs/register-finopshubproviders.md
@@ -3,7 +3,7 @@ title: Register-FinOpsHubProviders command
description: Register Azure resource providers required for FinOps hub using the Register-FinOpsHubProviders command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what Register-FinOpsHubProviders command in the FinOpsToolkit module.
---
-
# Register-FinOpsHubProviders command
The **Register-FinOpsHubProviders** command registers the Azure resource providers required to deploy and operate a FinOps hub instance.
@@ -56,13 +55,17 @@ Shows what would happen if the command runs without actually running it.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs.RegisterProviders)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/hubs/remove-finopshub.md b/docs-mslearn/toolkit/powershell/hubs/remove-finopshub.md
index ea7978983..64a8bda36 100644
--- a/docs-mslearn/toolkit/powershell/hubs/remove-finopshub.md
+++ b/docs-mslearn/toolkit/powershell/hubs/remove-finopshub.md
@@ -3,7 +3,7 @@ title: Remove-FinOpsHub command
description: Remove a FinOps hub instance using the Remove-FinOpsHub command in the FinOpsToolkit module, with an option to keep the storage account hosting cost data.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the what New-FinOpsHub command in the FinOpsToolkit module.
---
-
# Remove-FinOpsHub command
The **Remove-FinOpsHub** command removes a FinOps hub instance and optionally keep the storage account hosting cost data.
@@ -69,13 +68,17 @@ Deletes a FinOps hub named MyHub and deletes all associated resource except the
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs.RemoveHub)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/hubs/remove-finopshubscope.md b/docs-mslearn/toolkit/powershell/hubs/remove-finopshubscope.md
index 92370c7cd..d216265d4 100644
--- a/docs-mslearn/toolkit/powershell/hubs/remove-finopshubscope.md
+++ b/docs-mslearn/toolkit/powershell/hubs/remove-finopshubscope.md
@@ -3,7 +3,7 @@ title: Remove-FinOpsHubScope command
description: Stops monitoring a scope within a FinOps hub instance and optionally remove the data using the Remove-FinOpsHubScope command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the Remove-FinOpsHubScope PowerShell command.
---
-
# Remove-FinOpsHubScope command
The **Remove-FinOpsHubScope** command removes a scope from being monitored by a FinOps hub instance. Data related to that scope is kept by default. To remove the data, use the `-RemoveData` option.
@@ -67,13 +66,17 @@ Removes the exports configured to use the FooHub hub instance and removes data f
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Hubs.RemoveScope)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/powershell-commands.md b/docs-mslearn/toolkit/powershell/powershell-commands.md
index 8c96bf3cd..073aff92d 100644
--- a/docs-mslearn/toolkit/powershell/powershell-commands.md
+++ b/docs-mslearn/toolkit/powershell/powershell-commands.md
@@ -3,7 +3,7 @@ title: FinOps toolkit PowerShell module
description: Automate and scale your FinOps efforts using the FinOps toolkit PowerShell module, which includes commands to manage FinOps solutions.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what PowerShell commands are available in the FinOpsToolkit module.
---
-
# FinOps toolkit PowerShell module
The FinOps toolkit PowerShell module is a collection of commands to automate and manage FinOps solutions. We're just getting started so let us know what you'd like to see next. For details about the FinOps toolkit PowerShell module, refer to the [PowerShell Gallery](https://www.powershellgallery.com/packages/FinOpsToolkit).
@@ -81,13 +80,17 @@ The FinOps toolkit PowerShell module includes commands to manage FinOps solution
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/toolkit/finops-toolkit-commands.md b/docs-mslearn/toolkit/powershell/toolkit/finops-toolkit-commands.md
index 3ea957479..b3ed3a6b6 100644
--- a/docs-mslearn/toolkit/powershell/toolkit/finops-toolkit-commands.md
+++ b/docs-mslearn/toolkit/powershell/toolkit/finops-toolkit-commands.md
@@ -3,7 +3,7 @@ title: Toolkit commands
description: This article summarizes PowerShell commands available for general FinOps toolkit operations, including getting details about toolkit releases.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand what PowerShell commands are available to manage FinOps toolkit solutions in the FinOpsToolkit module.
---
-
# FinOps toolkit automation
The FinOps toolkit PowerShell commands help you get details about FinOps toolkit releases.
@@ -28,13 +27,17 @@ The FinOps toolkit PowerShell commands help you get details about FinOps toolkit
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Toolkit)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/powershell/toolkit/get-finopstoolkitversion.md b/docs-mslearn/toolkit/powershell/toolkit/get-finopstoolkitversion.md
index 3fa883cff..7d8557ba6 100644
--- a/docs-mslearn/toolkit/powershell/toolkit/get-finopstoolkitversion.md
+++ b/docs-mslearn/toolkit/powershell/toolkit/get-finopstoolkitversion.md
@@ -3,7 +3,7 @@ title: Get-FinOpsToolkitVersion command
description: Get available versions from published FinOps toolkit releases using the Get-FinOpsToolkitVersion command.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the Get-FinOpsToolkitVersion PowerShell command.
---
-
# Get-FinOpsToolkitVersion command
The Get-FinOpsToolkitVersions command calls GitHub to retrieve all toolkit releases, then filters the list based on the specified options.
@@ -72,13 +71,17 @@ Returns all release versions, including preview releases.
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/Toolkit.GetVersion)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/roadmap.md b/docs-mslearn/toolkit/roadmap.md
index 8f44f8bd7..1a51448fb 100644
--- a/docs-mslearn/toolkit/roadmap.md
+++ b/docs-mslearn/toolkit/roadmap.md
@@ -3,7 +3,7 @@ title: FinOps toolkit roadmap
description: Explore the FinOps toolkit roadmap to learn about upcoming features, key themes, and initiatives planned for the future.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: micflan
# customer intent: As a FinOps practitioner, I want to learn about the future plans for FinOps to better understand how those plans might affect my FinOps practice..
---
-
# FinOps toolkit roadmap
The Microsoft FinOps toolkit is an open-source collection of tools and resources that help you learn, adopt, and implement FinOps capabilities in the Microsoft Cloud. This document outlines the key themes and directional initiatives identified by the [Governing board](https://github.com/microsoft/finops-toolkit/wiki/Governing-board). They're based on direct feedback and inputs from the [Advisory council](https://github.com/microsoft/finops-toolkit/wiki/Advisory-council) on behalf of toolkit contributors and consumers. As of May 2024, the FinOps toolkit targets publishing new releases at the end of every month, which includes updates to this roadmap and the [changelog](changelog.md).
@@ -127,13 +126,17 @@ While our community is growing, we don't have a dedicated staff and can't commit
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20toolkit%20tools%20and%20resources%3F/cvaQuestion/How%20valuable%20is%20the%20FinOps%20toolkit%3F/surveyId/FTK/bladeName/Toolkit/featureName/Roadmap)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc)
+
diff --git a/docs-mslearn/toolkit/workbooks/customize-workbooks.md b/docs-mslearn/toolkit/workbooks/customize-workbooks.md
index d835620a5..7ab6d18e5 100644
--- a/docs-mslearn/toolkit/workbooks/customize-workbooks.md
+++ b/docs-mslearn/toolkit/workbooks/customize-workbooks.md
@@ -3,7 +3,7 @@ title: Use and customize FinOps workbooks
description: Learn how to install and customize FinOps workbooks to achieve FinOps goals, including cost recommendations, idle resource identification, and more.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: arclares
#customer intent: As a FinOps user, I want to learn how to install and customize FinOps workbooks to achieve cost optimization and other FinOps goals.
---
-
# Use and customize FinOps workbooks
This article explains how to install and edit FinOps workbooks. FinOps workbooks are a central access point for common tools that can help achieve FinOps goals. Each workbook offers a range of insights aligned to FinOps capabilities, including:
@@ -57,6 +56,7 @@ Deploy the FinOps workbooks template with one of the following options:
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20workbooks%3F/cvaQuestion/How%20valuable%20are%20FinOps%20workbooks%3F/surveyId/FTK/bladeName/Workbooks/featureName/Customize)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20Workbooks%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/workbooks/finops-workbooks-overview.md b/docs-mslearn/toolkit/workbooks/finops-workbooks-overview.md
index 3bc2522f4..61e941f92 100644
--- a/docs-mslearn/toolkit/workbooks/finops-workbooks-overview.md
+++ b/docs-mslearn/toolkit/workbooks/finops-workbooks-overview.md
@@ -3,7 +3,7 @@ title: Deploy FinOps workbooks
description: FinOps workbooks are Azure Monitor workbooks that help you implement FinOps capabilities, including optimization and governance, to achieve your FinOps goals.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: how-to
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,8 +11,6 @@ ms.reviewer: arclares
#customer intent: As a FinOps user, I want to understand what FinOps workbooks are and how they can help me accomplish my goals.
---
-
-
# FinOps workbooks
FinOps workbooks are Azure Monitor workbooks that provide a series of tools to help engineers perform targeted FinOps capabilities, modeled after the Well-Architected Framework guidance.
diff --git a/docs-mslearn/toolkit/workbooks/governance.md b/docs-mslearn/toolkit/workbooks/governance.md
index 36e33bee2..fb1c6e69b 100644
--- a/docs-mslearn/toolkit/workbooks/governance.md
+++ b/docs-mslearn/toolkit/workbooks/governance.md
@@ -3,7 +3,7 @@ title: Governance workbook
description: Azure Monitor workbook focused on governance, providing an overview of your Azure environment's governance posture and compliance.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: nteyan
#customer intent: As a FinOps user, I want to understand what the FinOps Governance workbook is and how it can help me implement the Cloud policy and governance capability.
---
-
# Governance workbook
The governance workbook is an Azure Monitor workbook that provides a comprehensive overview of the governance posture of your Azure environment. It includes the standard metrics aligned with the Cloud Adoption Framework for all disciplines and has the capability to identify and apply recommendations to address noncompliant resources.
@@ -203,13 +202,17 @@ For more information, see [Driving your organization to remediate security issue
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20workbooks%3F/cvaQuestion/How%20valuable%20are%20FinOps%20workbooks%3F/surveyId/FTK/bladeName/Workbooks.Governance/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20Workbooks%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/docs-mslearn/toolkit/workbooks/optimization.md b/docs-mslearn/toolkit/workbooks/optimization.md
index f5026b74a..2504406fb 100644
--- a/docs-mslearn/toolkit/workbooks/optimization.md
+++ b/docs-mslearn/toolkit/workbooks/optimization.md
@@ -3,7 +3,7 @@ title: FinOps toolkit Optimization workbook
description: The Azure Monitor workbook focuses on cost optimization, providing insights and recommendations for improving cost efficiency in your Azure environment.
author: flanakin
ms.author: micflan
-ms.date: 04/02/2025
+ms.date: 02/24/2026
ms.topic: concept-article
ms.service: finops
ms.subservice: finops-toolkit
@@ -11,7 +11,6 @@ ms.reviewer: arclares
#customer intent: As a FinOps user, I want to understand what the FinOps Optimization workbook is and how it can help me implement the Workload optimization and Rate optimization FinOps capabilities.
---
-
# Optimization workbook
The optimization workbook is an Azure Monitor workbook that provides a single location to view cost optimization, modeled after the Well-Architected Framework guidance. It offers a range of insights, including:
@@ -55,13 +54,17 @@ For more information about the Cost optimization workbook, see [Understand and o
Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.
+
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20FinOps%20workbooks%3F/cvaQuestion/How%20valuable%20are%20FinOps%20workbooks%3F/surveyId/FTK/bladeName/Workbooks.Optimization/featureName/Overview)
+
If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.
+
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20Workbooks%22%20sort%3A"reactions-%2B1-desc")
+
diff --git a/src/powershell/Tests/Unit/DocsLinks.Tests.ps1 b/src/powershell/Tests/Unit/DocsLinks.Tests.ps1
new file mode 100644
index 000000000..d69c252fb
--- /dev/null
+++ b/src/powershell/Tests/Unit/DocsLinks.Tests.ps1
@@ -0,0 +1,159 @@
+# Copyright (c) Microsoft Corporation.
+# Licensed under the MIT License.
+
+<#
+ .SYNOPSIS
+ Validates documentation links in the docs-mslearn folder.
+
+ .DESCRIPTION
+ Tests that internal markdown links resolve to real files and anchors, that no
+ https://learn.microsoft.com links appear (they should be root-relative), and
+ that no language locale segments appear in MS Learn links.
+#>
+
+BeforeDiscovery {
+ $repoRoot = (Get-Item -Path $PSScriptRoot).Parent.Parent.Parent.Parent.FullName
+ $docsRoot = Join-Path $repoRoot 'docs-mslearn'
+
+ if (-not (Test-Path $docsRoot))
+ {
+ return
+ }
+
+ # Collect all markdown files
+ $mdFiles = Get-ChildItem -Path $docsRoot -Recurse -Include '*.md' | ForEach-Object {
+ @{
+ FullName = $_.FullName
+ RelativePath = $_.FullName.Substring($docsRoot.Length + 1) -replace '\\', '/'
+ Content = Get-Content -Path $_.FullName -Raw
+ }
+ }
+
+ # Helper: Remove HTML comments from content to avoid matching links inside
+ function Remove-HtmlComments([string]$text)
+ {
+ return [regex]::Replace($text, '', { param($m) "`n" * ($m.Value -split "`n").Count })
+ }
+
+ # Extract internal relative links (not starting with http, /, or #-only)
+ $internalLinks = @()
+ foreach ($file in $mdFiles)
+ {
+ $cleanContent = Remove-HtmlComments $file.Content
+ $linkMatches = [regex]::Matches($cleanContent, '\[([^\]]*)\]\(([^)]+)\)')
+ foreach ($match in $linkMatches)
+ {
+ $linkTarget = $match.Groups[2].Value
+
+ # Skip external links, absolute paths, anchor-only links, and special schemes
+ if ($linkTarget -match '^(https?://|mailto:|/|#)') { continue }
+
+ # Parse out any anchor
+ $pathPart = $linkTarget -replace '#.*$', ''
+ $anchorPart = if ($linkTarget -match '#(.+)$') { $Matches[1] } else { $null }
+
+ # Skip empty path parts (anchor-only links that somehow got through)
+ if ([string]::IsNullOrEmpty($pathPart) -and -not [string]::IsNullOrEmpty($anchorPart)) { continue }
+
+ # Only check .md files
+ if ($pathPart -and $pathPart -notmatch '\.md$') { continue }
+
+ $internalLinks += @{
+ SourceFile = $file.FullName
+ SourceRel = $file.RelativePath
+ LinkText = $match.Groups[1].Value
+ LinkTarget = $linkTarget
+ PathPart = $pathPart
+ AnchorPart = $anchorPart
+ LineNumber = ($file.Content.Substring(0, $match.Index) -split "`n").Count
+ }
+ }
+ }
+
+ # Extract all URLs from markdown files (excluding HTML comments)
+ $allUrls = @()
+ foreach ($file in $mdFiles)
+ {
+ $cleanContent = Remove-HtmlComments $file.Content
+ $urlMatches = [regex]::Matches($cleanContent, '\[([^\]]*)\]\((https?://[^)]+)\)')
+ foreach ($match in $urlMatches)
+ {
+ $allUrls += @{
+ SourceFile = $file.FullName
+ SourceRel = $file.RelativePath
+ LinkText = $match.Groups[1].Value
+ Url = $match.Groups[2].Value
+ LineNumber = ($file.Content.Substring(0, $match.Index) -split "`n").Count
+ }
+ }
+ }
+
+}
+
+Describe 'Documentation links' {
+
+ Context 'Internal relative links' {
+
+ It 'Should resolve to an existing file: : []()' -ForEach $internalLinks {
+ $sourceDir = Split-Path $SourceFile -Parent
+
+ if ([string]::IsNullOrEmpty($PathPart))
+ {
+ # Anchor-only link within the same file — the file exists by definition
+ Set-ItResult -Skipped -Because 'anchor-only link'
+ return
+ }
+
+ $resolvedPath = Join-Path $sourceDir $PathPart | Resolve-Path -ErrorAction SilentlyContinue
+ $resolvedPath | Should -Not -BeNullOrEmpty -Because "link target '$PathPart' in ${SourceRel}:${LineNumber} should resolve to an existing file"
+ }
+
+ It 'Should have a valid anchor: : []()' -ForEach ($internalLinks | Where-Object { $_.AnchorPart }) {
+ $sourceDir = Split-Path $SourceFile -Parent
+ $resolvedPath = Join-Path $sourceDir $PathPart
+
+ if (-not (Test-Path $resolvedPath))
+ {
+ Set-ItResult -Skipped -Because 'target file does not exist (covered by file resolution test)'
+ return
+ }
+
+ $targetContent = Get-Content -Path $resolvedPath -Raw
+
+ # Extract anchors from headings (e.g., ## My Heading -> my-heading)
+ $headings = [regex]::Matches($targetContent, '(?m)^#{1,6}\s+(.+)$')
+ $anchors = @($headings | ForEach-Object {
+ $heading = $_.Groups[1].Value.Trim()
+ # Convert heading to anchor: lowercase, replace spaces with hyphens, remove special chars
+ $heading `
+ -replace '', '' `
+ -replace '\[([^\]]*)\]\([^)]*\)', '$1' `
+ -replace '`([^`]*)`', '$1' `
+ -replace '[^a-zA-Z0-9\s\-_]', '' `
+ -replace '\s+', '-' `
+ | ForEach-Object { $_.Trim('-').ToLower() }
+ })
+
+ # Extract anchors from HTML elements (e.g., or )
+ $htmlAnchors = [regex]::Matches($targetContent, ':' -ForEach ($allUrls | Where-Object { $_.Url -match 'learn\.microsoft\.com' }) {
+ $Url | Should -Not -Match 'learn\.microsoft\.com' -Because "links in docs-mslearn should use root-relative paths (e.g., /azure/...) instead of full URLs since docs are deployed to learn.microsoft.com (${SourceRel}:${LineNumber})"
+ }
+ }
+
+ Context 'No language locale in MS Learn links' {
+
+ It 'Should not contain language locale in URL: : ' -ForEach ($allUrls | Where-Object { $_.Url -match 'learn\.microsoft\.com/[a-z]{2}-[a-z]{2}/' }) {
+ $Url | Should -Not -Match 'learn\.microsoft\.com/[a-z]{2}-[a-z]{2}/' -Because "MS Learn links should not include language locale segments like /en-us/ (${SourceRel}:${LineNumber})"
+ }
+ }
+
+}