Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Consider the following table with tasks per user.
| Username | Task Name | Status |
| User1 | Task1 | Completed |
| User1 | Task2 | Incomplete |
| User1 | Task3 | Completed |
| User2 | Task1 | Completed |
| User2 | Task2 | Completed |
| User2 | Task3 | Completed |
I have a measure that calculates the percentage of Tasks completed per user that looks like this:
Measure Percentage Completion Per User =
var TasksCompleted =
SUMX(
VALUES('Table'[Username]),
CALCULATE(DISTINCTCOUNT('Table'[Task Name]),'Table'[Status]="Completed"))
)
var TasksIncomplete =
SUMX(
VALUES('Table'[Username]),
CALCULATE(DISTINCTCOUNT('Table'[Task Name]),'Table'[Status]="Incomplete"))
)
RETURN
TasksCompleted/TasksIncomplete+TasksCompleted
The result is:
User1: 66.6%
User2: 100%
This all works well until I attempt to then use the above measure to create percentage brackets.
Say, how many users have 80%-100% completion, how many have 60%-80% completion, etc.
I tried to create a measure for each bracket like this but it doesn't return the correct result:
CompletionBracket%80-100 = calculate(DISTINCTCOUNT('Table'[Username]),filter('Table',[Measure Percentage Completion Per User]>=0.8 && [Measure Percentage Completion Per User]<=1))
Solved! Go to Solution.
Hi @WorkHard
For "Percentage Completion Per User" try this:
Percentage Completion Per User =
VAR _User =
COUNTROWS ( 'Table' )
VAR _Complete =
CALCULATE ( COUNTROWS ( 'Table' ), 'Table'[Status] = "Completed" )
RETURN
_Complete / _User
and for "CompletionBracket%80-100" try this:
CompletionBracket%80-100 =
VAR _A =
FILTER (
SUMMARIZE (
'Table',
'Table'[Username],
"PerCom", [Percentage Completion Per User]
),
[Percentage Completion Per User] >= 0.8
&& [Percentage Completion Per User] <= 1
)
RETURN
COUNTAX ( _A, [Username] )
the output:
If this post helps, please consider accepting it as the solution to help the other members find it more quickly.
Appreciate your Kudos!!
Hi @WorkHard
For "Percentage Completion Per User" try this:
Percentage Completion Per User =
VAR _User =
COUNTROWS ( 'Table' )
VAR _Complete =
CALCULATE ( COUNTROWS ( 'Table' ), 'Table'[Status] = "Completed" )
RETURN
_Complete / _User
and for "CompletionBracket%80-100" try this:
CompletionBracket%80-100 =
VAR _A =
FILTER (
SUMMARIZE (
'Table',
'Table'[Username],
"PerCom", [Percentage Completion Per User]
),
[Percentage Completion Per User] >= 0.8
&& [Percentage Completion Per User] <= 1
)
RETURN
COUNTAX ( _A, [Username] )
the output:
If this post helps, please consider accepting it as the solution to help the other members find it more quickly.
Appreciate your Kudos!!
@WorkHard You need to get your users and ADDCOLUMNS your measure in a table variable. Then you can filter that table variable and COUNTROWS on in it. Like:
Measure 80-100 =
VAR __Table =
ADDCOLUMNS(
DISTINCT('Table'[Username]),
"__Measure",[Measure Percentage Completion Per User]
)
RETURN
COUNTROWS(FILTER(__Table,[__Measure]>=.8 && [__Measure]<=1))
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
Check out the November 2025 Power BI update to learn about new features.
| User | Count |
|---|---|
| 59 | |
| 46 | |
| 42 | |
| 23 | |
| 18 |
| User | Count |
|---|---|
| 193 | |
| 124 | |
| 101 | |
| 67 | |
| 49 |