(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisbon

How to create explanatory metrics in Copilot in Power BI

João Barros 26 de October de 2026 4 min read

This tutorial shows how to create explanatory metrics in Copilot in Power BI so that Copilot automatically generates textual interpretations and explanations for your KPIs. It’s useful because it transforms numbers into immediate context, helping users understand variations without manually writing each description.

Prerequisites

  • Account with access to Power BI and Copilot enabled.
  • Power BI report with a basic data model (fact and dimension tables).
  • DAX measures already created for the KPIs you want to explain (e.g.: TotalVendas, CrescimentoYTD).

Step 1: Define the goal of the explanatory metric

Decide what type of explanation you want: trend (increase/decrease), contribution by category, or comparison with a prior period. This choice guides the prompt Copilot will use and the additional DAX measures you will need.

Step 2: Create supporting DAX measures

Create measures that Copilot can use to identify cause and context: % change, top categories and anomaly signals. Keep measures simple and clearly named.

// Exemplo mínimo de medidas DAX
TotalVendas = SUM(Sales[Amount])
VendasPeriodoAnterior = CALCULATE([TotalVendas], SAMEPERIODLASTYEAR(Date[Date]))
VariaçãoAno = DIVIDE([TotalVendas] - [VendasPeriodoAnterior], [VendasPeriodoAnterior])
TopCategoria = TOPN(1, SUMMARIZE(Products, Products[Category], "CatVendas", SUM(Sales[Amount])), [CatVendas], DESC)

Step 3: Prepare fields and descriptors for Copilot

Create an auxiliary table (if necessary) with human-readable descriptors that Copilot can use in the prompt — for example full measure names and business context text. This helps avoid ambiguity when Copilot generates the explanation.

// Exemplo de tabela calculada para rótulos
Descritores = DATATABLE(
  "Key", STRING,{"TotalVendas","VariaçãoAno","TopCategoria"},
  "Label", STRING,{"Total de Vendas","Variação anual","Categoria com maior peso"}
)

Step 4: Create a supporting visual for Copilot (Card + Tooltip)

Add a card for the main KPI and configure tooltips with the supporting measures. Copilot uses the visual context to generate more accurate explanations; ensuring the measures are visible on the report improves the text quality.

Step 5: Configure the prompt in Copilot within the report

Open the Copilot pane in Power BI and provide a clear prompt that references the measures and the objective (e.g.: explain annual variation and top category). Include instructions about tone (formal/concise) and text length.

Prompt de exemplo:
"Explica em 2-3 frases a variação anual de [TotalVendas] usando [VariaçãoAno] e indica a principal causa recorrendo a [TopCategoria]. Manténs o texto simples e acionável."

Step 6: Test and iterate the generated text

Ask Copilot for the explanation and verify that the text correctly references the values and categories. If there are ambiguities, adjust the prompt or add more supporting measures (e.g.: % share by category, monthly variation).

Step 7: Automate text updates with bookmarks and parameters

Create bookmarks or use page filters for different segments (region, product). When the user changes the filter, ask Copilot to regenerate the explanation; this way you have contextual explanations without manual editing.

Verify the result

Confirm that Copilot generates explanations that correctly reference the values and the main category: compare the numbers in the text with the report cards. Test multiple filters and periods to ensure consistency. Common errors: text mentioning outdated values (check the report was refreshed) or ambiguous terms (improve measure names).

Conclusion

With these steps you have created explanatory metrics that allow Copilot to turn KPIs into actionable text. Next steps: enrich the measures with contribution analyses (decomposition) and create standard prompts for different audiences. Tip: save effective prompts in a reference file to replicate in other reports — which KPI do you want to make explainable next?