How to Change and Specify Width of Columns in Power BI

Getting column widths exactly how you want them in Power BI Matrix and Table visuals can be more challenging than you would think. We’ll explain how to auto-fit columns, adjust the width so they’re all the same, and some helpful techniques to get the formatting just right.

There are multiple ways to adjust column width in Power BI ranging from manual adjustments to automatic ones with formatting options

Unfortunately, at this time there is no direct method to define a column width in Power BI using Matrix or Table formatting settings. We’re hopeful that as Microsoft modernizes many of the Power BI visuals that this feature will be added.

Until that point, we’ll explain a few popular methods used to adjust column widths and explain why it’s currently so difficult to do.

Let’s jump in!

Adjusting Column Widths Using Column Header Settings

Power BI does not have an option to adjust column width settings on a Matrix or Table visual at this time. Most of the adjustments are made either manually by adjusting the column header width or forcing a specific length of values in a matrix to force Power BI to auto-size columns, then disable the auto-size function to keep widths as is.

The options to adjust column headers are located under the Format Visual section of the visualizations pane and are specific to each visualization. Select a visual, navigate to the column headers section to view the available settings.

Example of column header options and auto-size width options in Power BI format your visual settings

A couple of notable settings that you may want to consider adjusting are:

  • Text Wrap – Controls if text gets cut-off or goes to the next row when a column is too short to fit all of it.
  • Auto-Size Width – Visuals dynamically adjust based on filter context and will auto-size dynamically by default
  • Text Size – The size of the column header font.

Text Wrap settings also exist for the individual values within a visual and can be adjusting under the Values, Text wrap options section of the Format Your Visual panel.

Now, Let’s take a look at several techniques.

Manually Adjusting Column Width in Power BI

Power BI column width is set based on the Column Header of each individual visualization. When you hover your mouse over the space in-between two column names, the cursor icon changes and you can drag left or right to manually adjust the width. Double clicking a the space between column headers will auto-fit the width.

Setting Equal Column Width in Power BI

To set equal column width in Power BI, create a measure or adjust formatting of a Matrix or Table visual to a set specific number of characters per column. Power BI will by default auto-size the column widths to fit the number of characters you’ve defined. Then disable the auto-size width option to keep columns from reverting back.

Here is the process in more detail.

Option 1. Set Column Widths with Value Formatting

Our preferred option is to set the formatting of a field or measure that’s already been added to a matrix or table. When selecting a measure, you can go to Format under Column Tools and adjust the number of characters it represents by typing Zero’s. This is normally used to pad values but in this cases forces the column width.

  • Disable Text wrap on Values
  • Adjust the Format of a Measure or Field using the Format Options. Entering in Zeros will set preceding zeros and force the column width to auto-size to a set number of characters.
  • Disable Column Header Auto-Size
  • Revert the formatting back to normal

The screenshot below highlights setting up the formatting of a visual to force column width.

Screenshot of adjusting formatting to pad zeros

After disabling the auto-size options, you can revert the formatting back to normal.

Screenshot of column width being adjusted after changing formating options back to normal

This is one of the fastest ways to set column width when working with a large number of columns.

Option 2. Set Column Widths with a DAX Measure

An alternative method is to create a DAX Measure that is formatted with the specific width of a column. Switch the visual to show values on rows, turn auto-sizing off, and then remove the measure.

  • Create a new DAX Measure using FORMAT([FieldName],888888888888) where the 8’s are a place holder for the number of characters you want. You can’t use zero’s because the visual will automatically blank them out.
  • Go to Format Options, Values, Options and turn on Switch Values to Rows. Otherwise when you add a new column it will show to the right of existing data instead of below it in the same column.
  • Disable auto-size column headers
  • Disable switch values to rows.

The intermediate setup will look like the following, where an additional row has been added that forces column width.

Example of using DAX measure to force column width to be equal in Power BI

Option 3. Add Spacing to the Column Name on Table Visuals

To adjust the column width of a table visual, you can manually add spaces to the beginning or end of the column name and allow Power BI to auto-size to fit the new column width. The example below shows a column named Quantity being adjusted with spaces before and after the word to re-create the effect of padding.

Screenshot of manually adding spaces to a column header in a Power BI table to adjust the width of a column

This method takes a bit more work than the other ones and also requires users to manually count the number of spaces they’re typing in. It also doesn’t work on a Matrix visual because the columns are made up of field values within the column.

An option for working with Matrix visuals is also to add padding to the actual values that are being used in the visual as part of a Power Query data transformation step, however it’s not always possible if those column names are going to be used in relationships or could show up in an odd way in other parts of a report.

Testing Column Width in Power BI Service

When using any of these methods, make sure to test the report with different slicer selections at different levels of aggregation in both Power BI Desktop and after being published to the Power BI Service. There are times where numeric values when fully aggregated still exceed the column width that’s expected.

We’ve also ran into issues where reports render okay in Power BI Desktop, but for some reason they do not show up as intended after being published to PowerBI.com or when viewing on a screen with different resolution.

Conclusion

While there’s no direct setting in Power BI to adjust the column width of a visual or define it at a pixel level, you can use formatting options or custom measures to force Power BI to auto-size to fit all values in a column. Once the columns have been re-sized the auto sizing option can be disabled forcing Power BI to keep the existing column width.

Scroll to Top