How to Add New Line in DAX Power BI

Cody Schneider••7 min read

Tired of your Power BI visuals looking like a wall of text? Forcing multiple pieces of information onto a single line can make your reports cluttered and difficult to read. This article will show you exactly how to add line breaks within your DAX measures to create cleaner, more professional, and easier-to-understand dashboards.

GraphedGraphed

Build AI Agents for Marketing

Build virtual employees that run your go to market. Connect your data sources, deploy autonomous agents, and grow your company.

Watch Graphed demo video

Why Add New Lines in DAX?

Before jumping into the “how,” it’s essential to understand the “why.” The primary reason to add new lines is readability. When you present data, especially in text-heavy visuals like cards, tables, and tooltips, thoughtful formatting makes a world of difference. A well-placed line break can separate a title from its value, list out key points, or add context without creating a long, rambling sentence.

Here are a few scenarios where this technique is a lifesaver:

  • KPI Cards: Displaying a metric’s title, value, and the period it covers (e.g., "Total Revenue," "$1.2M," "Q3 2023"), each on its own line.
  • Custom Tooltips: Creating rich, informative tooltips that show multiple related metrics for a single data point when a user hovers over it.
  • Dynamic Labels: Building labels for charts and maps that combine several fields, such as Country, City, and Sales figures.
  • Matrix and Table Values: Concatenating notes or multiple values within a single cell, presented in a clean, list format.

Getting this right can be the difference between a dashboard that feels functional and one that feels polished and intuitive.

Method 1: The Simple Line Break with UNICHAR(10)

The most common and straightforward way to force a new line in a DAX text string is by using the UNICHAR(10) function. But what does that even mean?

Let’s break it down:

  • UNICHAR() is a DAX function that returns the Unicode character corresponding to a given number code. Every character you can type has a numeric code behind the scenes.
  • 10 is the Unicode number for the "line feed" character. It's essentially the invisible character that gets created when you hit the 'Enter' key in a text editor.

By inserting UNICHAR(10) into a text string, you’re telling Power BI to "press enter" at that exact spot. We typically combine text strings using the ampersand (&) operator.

Free PDF · the crash course

AI Agents for Marketing Crash Course

Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.

Step-by-Step Example: Creating a Dynamic Title for a KPI Card

Let's say you have a card visual showing total sales, but you also want to add a descriptive title and the refresh date directly within the same visual, with each piece of information on a new line.

1. Create Your Base Measures

First, make sure you have the measures you need. For this example, let's assume you already have a simple measure for total sales:

Total Sales = SUM(Sales[Revenue])

2. Create the New Measure with Line Breaks

Now, let's create a new measure that will combine everything. Right-click on your table in the Fields pane and select "New measure." In the formula bar, we’ll construct our text string. We want three lines:

  1. The title: "Total Sales Amount"
  2. The formatted sales value.
  3. The refresh date.

Here is the DAX to do it:

Sales Card Label = 
"Total Sales Amount" & UNICHAR(10) &
FORMAT([Total Sales], "$#,##0") & UNICHAR(10) &
"Data as of: " & FORMAT(TODAY(), "mmm d, yyyy")

Let's unpack this formula:

  • "Total Sales Amount": This is our static text for the first line.
  • & UNICHAR(10) &: This adds a line break after our title.
  • FORMAT([Total Sales], "$#,##0"): We format the [Total Sales] measure to look like currency. Combining different data types (like text and numbers) requires converting the number to a text string, which FORMAT does automatically.
  • & UNICHAR(10) &: Another line break separates the sales value from the date.
  • "Data as of: " & FORMAT(TODAY(), "mmm d, yyyy"): We add a label and then format today’s date into a readable string like "Jan 1, 2024".

Step 3: Enable Text Wrap in the Visual

This is the most common reason people get stuck! By default, visuals like the Card will not wrap text. You have to enable it manually.

  1. Add a Card visual to your report canvas.
  2. Drag your new measure (Sales Card Label) into the Fields well.
  3. With the card selected, go to the Format visual pane (the paintbrush icon).
  4. Find the Callout value (or similar text property, like Category label) depending on the visual.
  5. Toggle the Text wrap option to On.

Instantly, your single-line text will break into three clean, organized lines right inside the card visual.

GraphedGraphed

Build AI Agents for Marketing

Build virtual employees that run your go to market. Connect your data sources, deploy autonomous agents, and grow your company.

Watch Graphed demo video

Method 2: Creating a List with CONCATENATEX

The UNICHAR(10) method is perfect for combining a few static or pre-defined pieces of information. But what if you need to create a list of items from a table, with each item on a new line? For that, we use the powerful CONCATENATEX function.

CONCATENATEX iterates over a table and concatenates the results of an expression, letting you specify a delimiter between each item. Guess what we'll use for our delimiter? You got it: UNICHAR(10).

The syntax for CONCATENATEX looks like this:

CONCATENATEX(<table>, <expression>, [delimiter], [orderBy_expression], [order])

Step-by-Step Example: Listing Top 3 Products in a Tooltip

Imagine you have a chart showing sales by country. You want a tooltip that, when hovering over a country, lists the top 3 selling products within that country.

1. Create the Measure

We need a DAX measure that can identify the top 3 products for the current filter context (e.g., the specific country being hovered over) and list them out.

Here’s how you can write that measure:

Top 3 Products List = 
VAR TopProducts =
    TOPN(
        3,
        VALUES('Products'[Product Name]),
        [Total Sales],
        DESC
    )
RETURN
    CONCATENATEX(
        TopProducts,
        'Products'[Product Name],
        UNICHAR(10)
    )

Let’s walk through this more complex formula:

  • VAR TopProducts = ...: We start by creating a variable called TopProducts. Using variables makes complex formulas easier to read and more efficient.
  • TOPN(...): This function returns the top 'N' rows of a table.
  • RETURN CONCATENATEX(...): After identifying the top three products, we return the final string.

Free PDF · the crash course

AI Agents for Marketing Crash Course

Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.

Step 4: Use the Measure in a Tooltip

To use this, go to your map or bar chart, navigate to the Format visual pane, open the Tooltips section, and drag the Top 3 Products List measure into the tooltips well. Now, when you hover over a data point on your chart, you'll see a neatly formatted list of the top-performing products.

Troubleshooting Common Issues

Running into trouble? Here are the two most common fixes:

  1. My text isn't breaking into lines! Almost every time, this is because Text wrap is not enabled on the specific visual element you are formatting. Go back and double-check the Formatting pane for your label, value, or header.
  2. I see a square character instead of a line break. This can sometimes happen if copying/pasting DAX from a source with different text encoding. Try re-typing the UNICHAR(10) part directly into the DAX editor.

Final Thoughts

Mastering line breaks with UNICHAR(10) and CONCATENATEX moves you beyond simple data displays into creating truly polished and user-friendly Power BI reports. By taking control of your text formatting, you can guide your audience’s attention, provide valuable context, and make complex information much easier to digest.

While mastering DAX can be incredibly powerful for customizing reports, we know that many teams just want answers without getting stuck in formula editors. We created Graphed to help teams bypass the complex parts of business intelligence entirely. Instead of writing formulas, you can simply ask a question in plain English, like "Show me my top 5 products by revenue for last quarter as a list," and let our AI build the visual for you instantly in a real-time dashboard.

Related Articles