What a stacked bar chart does and when to use it
A stacked bar chart shows multiple categories of data within a single bar, with each segment representing a different value. Instead of separate bars side by side, the segments stack on top of each other (for vertical bars) or next to each other (for horizontal bars). This layout makes it straightforward to see both the total across all categories and how each part contributes to that total.
Use a stacked bar chart when you want to compare totals across groups while also showing what makes up each total. For example, if you track monthly sales by product type, a stacked bar chart shows total sales per month and breaks down which products drove those sales. If you have budget data split by department, it shows total spending and each department's share in one visual.
Stacked bar charts work best when you have three to five categories within each bar. More than that becomes hard to read. If you need to compare individual segments across bars (not just totals), a grouped bar chart may work better instead.
Key Takeaways
- Select your data including headers, then go to Insert > Chart and choose the stacked bar or column chart type to create the basic chart.
- Excel automatically stacks your data if the layout is correct: one column for labels, one column per category, with data values in rows below.
- Right-click the chart and select Edit Data to add or remove data series, or change which column Excel treats as labels versus values.
- Format colors, axis labels, and the legend by double-clicking chart elements or using the Chart Design and Format tabs that appear when the chart is selected.
- Copy the finished chart and paste it into reports or presentations; it updates automatically if you change the source data in your spreadsheet.
Prepare your data in the right layout
Excel needs your data arranged in a specific way to create a stacked bar chart correctly. Put your category labels (the names that will appear on the horizontal axis) in the first column. Put your data series headers (the names of each segment) across the top row, starting in the second column. Then fill in the numbers below.
For example, if you are tracking sales by product across three months, your layout should look like this: Month names in column A (January, February, March), product names across row 1 starting at B1 (Product A, Product B, Product C), and the sales numbers in the cells below. Each row represents one month; each column represents one product.
Make sure all your numbers are actual numbers, not text that looks like numbers. If Excel treats a column as text, it will not include it in the chart. Check that there are no extra blank rows or columns mixed into your data range, as these confuse the chart wizard.
Select your data and insert a chart
Click on the first cell of your data (usually the top-left corner) and drag to select the entire range including headers and all values. You can also click the first cell, hold Shift, and click the last cell to select the range. The selection should include your category labels and all data series.
Go to the Insert tab at the top of the ribbon. Click Chart (or Insert Chart depending on your Excel version). A dialog box opens showing different chart types. Look for Bar or Column in the list on the left. Click it, then select the stacked version from the options shown. The stacked bar chart shows segments side by side horizontally; the stacked column chart shows segments stacked vertically. Choose whichever matches what you want to display.
Click OK or Create. Excel builds the chart and places it on your spreadsheet. The chart is selected (you will see a border around it), and two new tabs appear at the top: Chart Design and Format.
Fix the data if Excel stacked it wrong
Sometimes Excel misreads your data layout and stacks the wrong values or treats labels as data. If your chart does not look right, right-click on the chart and select Edit Data (or Select Data). A dialog box opens showing what Excel thinks your data series are.
In the dialog, you will see a list of data series on the left and a preview of the chart on the right. If a row or column is listed as a series when it should be a label, select it and click Remove. If a label is missing, click Add and type the range for that series. For the horizontal axis labels (your category names), click Edit under "Horizontal (Category) Axis Labels" and type or select the range that contains your month names, product names, or whatever labels you want to appear on the axis.
Click OK when the data looks correct. The chart updates to match.
Change colors and labels to match your needs
Click on the chart to select it. The Chart Design tab appears. Click Change Colors to pick a different color scheme for your segments. Excel offers several built-in palettes; choose one that makes each segment straightforward to tell apart.
To add or change the chart title, click Chart Title in the Chart Design tab and type a new title. To add axis labels, click Axis Titles and choose which axis you want to label (usually the vertical axis for a bar chart, the horizontal axis for a column chart). Type a label that describes what the numbers represent (for example, "Sales in Dollars" or "Number of Units").
To change the legend (the box that shows what each color means), right-click the legend and select Format Legend. You can move it to a different position or remove it if space is tight. Make sure the legend is clear enough that anyone reading the chart can understand what each segment represents.
Adjust the axis scale and data labels if needed
If your segments are too small to read or the chart looks cramped, you can change how the axes display. Right-click the axis with numbers (usually the left side for a bar chart) and select Format Axis. You can change the minimum and maximum values to zoom in or out, or change the interval between tick marks to make the scale clearer.
To add numbers directly on the chart segments so readers see exact values, right-click a segment and select Add Data Labels. Excel places the value for each segment on the chart itself. If the labels overlap or look crowded, right-click them again, select Format Data Labels, and choose to show only percentages or only the series name instead of the full value.
Test how the chart looks at the size you plan to use it. A chart that looks fine on your full spreadsheet may become hard to read when shrunk to fit in a report or presentation.
Copy the chart into reports and presentations
Click on the chart to select it. Press Ctrl+C (or Cmd+C on Mac) to copy. Open your report, presentation, or other document and click where you want the chart to appear. Press Ctrl+V to paste. The chart appears in the new location.
If you later change the numbers in your original spreadsheet, the chart updates automatically as long as the spreadsheet stays open. If you close the spreadsheet, the chart in your report shows the last version it saw. To update it, open the original spreadsheet, make your changes, save it, and then open the report again.
If you want the chart to update even when the spreadsheet is closed, right-click the chart in your report and select Edit Links (in Word or PowerPoint). This keeps the connection active, but requires the original spreadsheet file to stay in the same location.
Frequently Asked Questions
Can I change a stacked bar chart to a stacked column chart after I create it?
Yes. Right-click the chart and select Change Chart Type. Pick the column version instead of the bar version and click OK. The data stays the same; only the orientation changes.
What if I want to show percentages instead of raw numbers in each segment?
Right-click the chart, select Edit Data, and look for an option to show values as percentages. Alternatively, right-click a segment, select Format Data Series, and look for a "Stack" or "Percentage" option. The exact menu varies by Excel version, but the goal is the same: tell Excel to calculate each segment as a percentage of the total bar.
How do I remove a data series from the chart without deleting it from my spreadsheet?
Right-click the chart and select Edit Data. In the dialog, find the series you want to hide in the list on the left, select it, and click Remove. The data stays in your spreadsheet; it just stops appearing in the chart.
Can I make the segments appear in a different order?
Right-click the chart, select Edit Data, and look for the data series list. Select a series and use the up or down arrow buttons (if available) to move it higher or lower in the stack. The order in the list determines the order of segments in the chart from bottom to top (or left to right for horizontal bars).
What should I do if my chart looks cluttered with too many segments?
If you have more than five or six segments, consider splitting the data into two separate charts or using a different chart type like a line chart. Stacked charts become hard to read when segments are too thin. You can also hide less important segments by removing them from the data (as described above) and focusing on the main categories.