A Power BI stacked column chart shows one column per category, split into colored segments that add up to the column’s total. To create one, select Stacked column chart in the Visualizations pane, then add a category to X-axis, a number to Y-axis and a second category to Legend.
Last month, the sales manager at Contoso asked me for one visual that shows revenue by region and, inside each region, how much came from Furniture, Office Supplies and Technology. A stacked column chart does exactly that.
In this tutorial, I’ll build it step by step, then format it, sort it, turn it into a stacked bar chart, and switch its legend with a slicer.
Quick answer: In Power BI Desktop, select Stacked column chart in the Visualizations pane. Put a category such as Region in X-axis, a value such as Revenue in Y-axis, and the field that splits each column, such as Category, in Legend. Turn on Format visual > Visual > Total labels to show each column’s total. For a horizontal version, pick Stacked bar chart instead.
What is a stacked column chart in Power BI?
A stacked column chart answers two questions at once: how big is each category in total, and what is it made of? The height of the column is the total, and each colored segment is one value of the legend field.
Power BI has three column charts, and they’re easy to mix up. If you only need one value per category, a plain column chart in Power BI is simpler. The table shows when to use each one:
| Chart | What it shows | Use it when |
|---|---|---|
| Stacked column chart | Segments on top of each other; column height = total | The total matters and you also want the parts |
| Clustered column chart | Segments side by side | You want to compare the parts with each other |
| 100% stacked column chart | Every column is 100%; segments are shares | Only the mix (percentages) matters, not the size |
Because the segments in the middle don’t start from zero, they’re hard to compare across columns. If comparing Furniture in the East with Furniture in the West is the main goal, a clustered column chart is the better choice.
How to create a stacked column chart in Power BI
My sample data is a Sales table with 600 orders from 2025 and 2026. It has Region (Central, East, South, West), Category, Sales Rep, Year and Revenue in USD. You can use any table that has at least one category column and one numeric column.
Step 1: Add the visual
Open your report in Power BI Desktop, or load your data with Home > Get data. On the Visualizations pane, under Build visual, select the Stacked column chart icon. It’s the second icon in the first row. A blank chart appears on the canvas.
Step 2: Fill the X-axis, Y-axis and Legend
- X-axis: the categories along the bottom. I used Region.
- Y-axis: the number that sets the column height. I used Revenue, which Power BI shows as Sum of Revenue.
- Legend: the field that splits each column into segments. I used Category.
You can drag the fields from the Data pane into the wells, or select the check boxes. When you select the check boxes, Power BI places the first text field in X-axis, the number in Y-axis and the next text field in Legend.

The chart now shows four columns, one per region. Technology (orange) is the biggest part of every region, Furniture (blue) is second, and Office Supplies is a thin slice. The Central region has the highest total.
Step 3: Use the other field wells (optional)
- Small multiples: splits the chart into a grid of small charts, one per value, for example one chart per Year.
- Tooltips: adds extra values, such as Units, to the box that appears when you hover over a segment.
- More than one X-axis field: adding Region and State to X-axis creates a hierarchy, and the drill icons on the visual let you go from region to state. See how to create a hierarchy in Power BI for more.
How to format a stacked column chart
Select the chart and then the Format visual icon (the brush) on the Visualizations pane. The options are split into a Visual tab and a General tab. These are the cards I change most often on the Visual tab:
- X-axis and Y-axis: font, title, display units (for example millions) and the Y-axis range.
- Legend: on or off, position (top, bottom, right) and title.
- Columns: segment colors. Under Apply settings to, pick a series such as Technology to give it its own color. The Layout options set the space between categories.
- Data labels: the value inside each segment.
- Total labels: the total above each column.
- Gridlines and Zoom slider: horizontal lines and a slider for long axes.
The General tab holds Properties (size and position), Title, Effects (background, border and shadow), Header icons, Tooltips and Alt text.
Show the total on top of each column
This used to need a line chart trick, but not anymore. On the Visual tab, turn Total labels on. Power BI adds the column total above each stack. I also turned on Data labels, so each segment shows its own value.

If the segments are too small for their labels, turn Data labels off and keep only the totals. Want percentages in the labels instead? See how to show values as a percentage in Power BI.
Color the columns with conditional formatting
Under Columns > Color, the fx button lets you color columns by rules or a gradient, for example red for regions under target. The steps differ once a Legend is used, so I covered them in conditional formatting in a stacked column chart.
How to sort a stacked column chart
By default, Power BI sorts the columns by the Y-axis value, from largest to smallest. To change it, select More options (…) at the top right of the visual, then Sort axis. Choose the field to sort by, such as Region or Sum of Revenue, and then Sort ascending or Sort descending from the same menu.
Month names are a common trap: they sort alphabetically, so April comes first. Select the Month column, then Column tools > Sort by column and pick the month number column. After that, Sort axis by Month puts January first.
How to create a stacked bar chart in Power BI
A stacked bar chart is the same chart turned on its side. It’s the better choice when the category names are long, such as product or sales rep names, because they’re easy to read on the left. To build one, select Stacked bar chart, the first icon in the Visualizations pane.
You can also convert an existing chart: select the stacked column chart and then the Stacked bar chart icon. The fields stay, but the wells swap names. The category goes in Y-axis and the value in X-axis. To order the bars from the biggest total down, see how to sort a stacked bar chart by value.

All the formatting cards above, including Total labels, work the same way in the bar version. For the other bar types, see how to create a bar chart in Power BI.
Use a 100% stacked column chart to compare shares
Sometimes the totals get in the way. The West has the smallest total, so its segments look small even when its mix is different. A 100% stacked column chart stretches every column to 100%, so you compare the shares only.
Select the chart and then the 100% Stacked column chart icon (the last icon in the first row). The data labels now show percentages. In my data, Furniture is 32.16% of revenue in the West but only 21.09% in the South, which the normal stacked chart hid.

Show multiple values in a stacked column chart
You can put more than one measure in the Y-axis, for example Revenue and Profit. Power BI then stacks the measures on top of each other in each column, with the measure names in the legend.
There’s one rule to know: Microsoft’s documentation says column charts with multiple measures don’t support a Legend. So it’s either one measure split by a legend field, or several measures with no legend.
Only stack measures that add up to a meaningful total, such as Cost and Profit. Stacking Revenue on top of Units makes no sense, and the scales are too different.
If you need two measures on different scales, use the line and stacked column chart instead. It’s covered in how to create a Power BI combo chart.
Multiple legends: switch the legend with a field parameter
The Legend well accepts only one field. If you drop a second field on it, it replaces the first. Still, users often want to see the same chart split by Category, then by Sales Rep, then by Year. The cleanest way is a field parameter, which lets a slicer choose the legend field.
Step 1: Create the field parameter
Go to Modeling > New parameter > Fields. Name it, for example Legend Field, and select the fields people can switch between. I picked Category, Sales Rep and Year. Leave Add slicer to this page selected and select Create.

Power BI creates a small table with this DAX. You can edit it later to rename the options or change their order:
Legend Field = {
("Category", NAMEOF('Sales'[Category]), 0),
("Sales Rep", NAMEOF('Sales'[Sales Rep]), 1),
("Year", NAMEOF('Sales'[Year]), 2)
}
Step 2: Put the parameter in the Legend well
Select the chart, remove Category from Legend, and add the Legend Field parameter instead. Now pick a value in the slicer. When I select Sales Rep, the chart title changes to Sum of Revenue by Region and Sales Rep, and each column splits by rep, such as Alex Wilber and Megan Bowen.

Make the slicer single select: in its format pane, go to Slicer settings > Selection and turn on Single select. Otherwise, a user can select two fields and get a confusing chart. If slicers are new to you, start with Power BI slicer types and settings.
Other ways to show two legend fields
- Combine the fields in one column. A calculated column such as the one below gives segments like Technology 2026. It works, but the legend gets long fast.
- Use Small multiples. Keep Category in Legend and put Year in Small multiples. You get one chart per year, each split by category.
- Use a hierarchy on the X-axis. Put Region and Year in X-axis and use the drill icons.
Category Year = Sales[Category] & " " & Sales[Year]
Common problems and fixes
- You can’t add a field to Legend: you have more than one measure in Y-axis. Keep one measure, or remove the legend.
- Some legend items are missing: in a categorical chart, Power BI shows the top 60 series. Group small values into an Other category, or filter the visual.
- Total labels don’t show: Total labels are disabled when the chart uses Small multiples. Also check that the chart is a stacked one, not a clustered one.
- Labels overlap in thin segments: turn off Data labels and keep Total labels, or make the visual taller.
- The values look summed when they shouldn’t be: select the arrow next to the field in Y-axis and change the aggregation, for example to Average.
If the order of the segments over time matters more than the totals, a ribbon chart in Power BI is worth a look. It puts the highest-ranked category on top in each column.
For more Power BI chart techniques, these tutorials pick up where this one stops:
Frequently Asked Questions
What is the difference between a stacked column chart and a clustered column chart?
A stacked column chart puts the segments on top of each other, so the column height is the total. A clustered column chart puts them side by side, which makes the parts easier to compare but hides the total.
How do I show the total on a stacked column chart in Power BI?
Select the chart, open Format visual > Visual and turn on Total labels. The total appears above each column. It isn’t available while the chart uses Small multiples.
Can I add two fields to the Legend of a stacked column chart?
No, the Legend well holds one field. Use a field parameter with a slicer to switch the legend field, combine two fields in a calculated column, or put the second field in Small multiples.
Can a stacked column chart have multiple values and a legend?
No. You can use several measures in Y-axis or one measure with a Legend, but not both, as explained in Microsoft’s column charts documentation.
How do I make a stacked bar chart in Power BI?
Select Stacked bar chart in the Visualizations pane, or switch an existing stacked column chart to it. Put the category in Y-axis, the value in X-axis and the splitting field in Legend.

I have worked with Microsoft technologies for more than 18 years, including SharePoint, Microsoft 365 and the Power Platform (Power Apps, Power Automate and Power BI), at companies like HP, TCS and KPIT. I started EnjoySharePoint in 2011 to share the solutions I build in real projects with readers in the United States, Canada, the United Kingdom, Australia, New Zealand and beyond. Microsoft has recognized this work with the Microsoft MVP award 13 times since 2014.