How to Show Percentage of Total in a Power BI Pie Chart (3 Ways)

Megan Bowen, the sales manager at Contoso, asked me for a simple pie chart: each region’s share of revenue for 2025 and 2026. The dollar amounts were easy. What she really wanted to see was the percentage, so she could say "Central brings in about 30%" without doing math in a meeting.

In this tutorial, I’ll show you how to display a Power BI pie chart percentage of total in three ways: the built-in label setting, the Show value as option, and a DAX measure. I’ll also cover distinct counts, two-column percentages, and why the numbers change when someone uses a slicer.

Quick answer: Select the pie chart, open Format visual > Visual > Detail labels > Options, and set Label contents to Percent of total. For a percentage you can reuse in tooltips, cards or tables, create a measure with DIVIDE and CALCULATE and format it as a percentage.

The sample data

I’m using a Contoso Sales table with 900 orders from 01/01/2025 to 12/31/2026. It has Order Date, Region, Category, Product and Revenue columns. Total revenue is $3,404,238 across four regions: Central, East, South and West. If you haven’t built a pie yet, start with how to create a pie chart in Power BI and come back.

My pie has Region in the Legend well and Revenue in the Values well. Power BI sums Revenue automatically, so the visual title reads "Sum of Revenue by Region".

Method 1: Show percent of total with detail labels

This is the fastest way, and it needs no DAX. Power BI calculates each slice’s share of the visible total for you.

  1. Select the pie chart on the canvas.
  2. In the Visualizations pane, select Format visual (the paintbrush icon) and stay on the Visual tab.
  3. Make sure Detail labels is turned On, then expand it and expand Options.
  4. Open the Label contents drop-down and choose Percent of total.
Power BI pie chart of revenue by region with the Detail labels Label contents list open, showing Percent of total

In current Power BI Desktop, the default is Data value, percent of total, so a new pie may already show "$1.02M (29.89%)". Here’s what each of the seven options shows on a slice:

Label contentsExample on the Central slice
CategoryCentral
Data value$1.02M
Percent of total29.89%
Category, data valueCentral $1.02M
Category, percent of totalCentral 29.89%
Data value, percent of total$1.02M (29.89%)
All detail labelsCentral $1.02M (29.89%)

Position sits right above Label contents. Outside is the default and draws leader lines; Inside puts the text on the slice. The Values section under Detail labels controls font, color, display units and decimal places.

Method 2: Use Show value as Percent of grand total

Power BI can also turn the value itself into a percentage. This changes what the visual plots, not just the label, so the tooltip shows the percentage too.

  1. Select the pie chart and open Build visual.
  2. In the Values well, select the arrow next to Sum of Revenue.
  3. Point to Show value as and choose Percent of grand total.
Power BI Sum of Revenue field menu in the pie chart Values well with Show value as > Percent of grand total

With this on, set Label contents to Data value and the slices read 29.89%, 20.00% and so on. The catch is that you lose the dollar amount. The same option is popular in tables, and the post on how to calculate percentage of total in a matrix shows the column and row total variations.

Method 3: Create a percent of total measure with DAX

Built-in options only live inside one visual. A measure gives you a percentage you can put in tooltips, cards, tables and conditional formatting, and you control the denominator. Select Home > New measure and enter:

Revenue % of Total =
DIVIDE (
    SUM ( Sales[Revenue] ),
    CALCULATE ( SUM ( Sales[Revenue] ), ALLSELECTED ( Sales[Region] ) )
)

Then, with the measure selected, select the % button on the Measure tools tab and set decimal places to 2. I use DIVIDE instead of the / operator because it returns blank instead of an error when the total is zero; this guide to dividing measures in Power BI has more examples.

Power BI Revenue % of Total measure using DIVIDE and ALLSELECTED, with the pie and table filtered to Furniture

In the screenshot, I selected Furniture in a Category slicer. The pie labels and the measure in the table agree: Central 30.53%, East 26.36%, South 24.19%, West 18.92%, adding up to 100%.

ALL vs ALLSELECTED: which total do you want?

The function inside CALCULATE decides what "total" means. That’s the part most tutorials skip, and it’s why two reports can show different percentages for the same slice. If CALCULATE filters are new to you, read how to filter a measure with CALCULATE first.

DenominatorIgnoresCentral with Furniture selected
ALLSELECTED ( Sales[Region] )Only the region split inside the visual; keeps slicers30.53% of Furniture revenue
ALL ( Sales )Every filter, including slicers6.59% of all revenue
ALL ( Sales[Region] )Region filters only30.53%, but a Region slicer won’t re-base it

Use ALLSELECTED when the percentages should always add up to 100% for what’s on screen. That matches the built-in label. Use ALL when you want the share of the company total, even after someone filters the page:

Revenue % of Grand Total =
DIVIDE (
    SUM ( Sales[Revenue] ),
    CALCULATE ( SUM ( Sales[Revenue] ), ALL ( Sales ) )
)

To show the measure on hover, drag it into the pie’s Tooltips well. Readers then see the dollar label on the slice and the percentage in the tooltip.

Show the value and percentage together

Choose Data value, percent of total or All detail labels in Label contents. Both parts share one position, so you can’t put the dollars outside and the percentage inside. If the labels get crowded, turn off the legend and use Category, percent of total instead.

Percentage of total with distinct counts

Say you count customers per region with DISTINCTCOUNT. The built-in Percent of total adds up the slice values and divides by that sum. If a customer bought in two regions, they’re counted twice in the denominator, so every slice looks a little smaller than it should.

Use a measure with the real distinct total instead. The DAX count functions guide explains how DISTINCTCOUNT differs from COUNT.

Customers % of Total =
DIVIDE (
    DISTINCTCOUNT ( Sales[Customer ID] ),
    CALCULATE ( DISTINCTCOUNT ( Sales[Customer ID] ), ALL ( Sales[Region] ) )
)

With overlapping customers, these percentages can add up to more than 100%. That’s correct: each one is the share of all customers who bought in that region.

Show a percentage from two columns

A common request is a survey pie: 10 employees, 6 responses, and the pie should show 60% responded and 40% didn’t. You don’t need percentage measures for this. Create two plain measures and put both in the Values well:

Responded = SUM ( Survey[Responses] )

Not Responded = SUM ( Survey[Employees] ) - SUM ( Survey[Responses] )

Then set Label contents to Percent of total. The pie does the math: 6 of 10 is 60%, and 4 of 10 is 40%. Putting ratio measures in a pie just divides percentages by percentages, which is easy to get wrong.

Show the selected item vs. all others

Older versions of this post added an "Other" row in Power Query to compare one product with the rest. You don’t need that hack. The ALL measure above already returns the share of the grand total for whatever is selected, and you can read the selection with SELECTEDVALUE from a slicer.

If you want the pie to keep only the selected slices, that’s a filtering question rather than a percentage one. I cover slicers, Edit interactions and a measure filter in how to show only selected values in a pie chart.

Troubleshooting pie chart percentages

  • Some slices have no label: small slices hide labels that don’t fit. Switch Position to Inside and turn on Overflow text, make the visual bigger, or keep only the top 5 categories with a Top N filter.
  • Percentages change when I use a slicer: that’s expected for the built-in label and ALLSELECTED. Use the ALL measure for a fixed company-wide share.
  • The total is 99.99% or 100.01%: rounding. Show one more decimal place or accept it.
  • Too many slices: Microsoft recommends keeping pies to a few slices. With more than six or seven, a bar chart or a donut chart in Power BI reads better.
  • The measure shows 2989%: you multiplied by 100 and also applied the % format. Remove the * 100.

Building more pie charts for the same report? These go well with this one:

Frequently Asked Questions

How do I show percentage of total in a Power BI pie chart?

Select the pie, open Format visual > Visual > Detail labels > Options, and set Label contents to Percent of total. Power BI calculates each slice’s share of the visible total.

How do I show both value and percentage on a Power BI pie chart?

Set Label contents to Data value, percent of total. Both parts share one label position, so you can’t place them separately.

What does Show value as Percent of grand total do?

It replaces the slice value with its share of the grand total, so labels and tooltips show percentages instead of amounts. See the Microsoft Learn Show value as article for the other options.

Why don’t my pie chart percentages add up to 100%?

Usually rounding, or a distinct count where the same item appears in several slices. A DISTINCTCOUNT measure with ALL gives the true share of the distinct total.

Should I use ALL or ALLSELECTED in a percent of total measure?

Use ALLSELECTED when percentages should add up to 100% for the filtered view. Use ALL when you want each slice’s share of the overall total, regardless of slicers.