DAX Pareto Cumulative % Measure

Ranks items by sales and shows the running cumulative percentage of total sales, for building an 80/20 Pareto chart.

Ranking and Top NAdvancedpareto80/20cumulative percentage

DAX code

Pareto Cumulative % =
VAR CurrentSales = [Total Sales]
VAR ItemsAtOrAbove =
    FILTER(
        ALLSELECTED('Product'[ProductName]),
        CALCULATE([Total Sales]) >= CurrentSales
    )
VAR CumulativeSales = CALCULATE([Total Sales], ItemsAtOrAbove)
RETURN
    DIVIDE(CumulativeSales, CALCULATE([Total Sales], ALLSELECTED('Product')))

Notes

Sort the visual by sales descending - this measure assumes rows are consumed in that order to build the running curve.

Requirements

Builds on these measures

How to use this measure

  1. In Power BI Desktop, select the table that should hold the measure and choose New measure on the ribbon.
  2. Paste the code, then replace the placeholder table and column names with your own. The My table names fields above do this for you.
  3. Run it through the DAX Formatter if you want it laid out in your team's style.

Related DAX measures

More DAX resources

Browse all 175 measures in the Power BI DAX Measures Library, or search the library for something similar to Pareto Cumulative %.