Forum Discussion
Calculate NPS Score with DAX
Hi LeanneShapro
You could create measures
Measure = CALCULATE(COUNT(Table1[name]),FILTER(ALL(Table1),[score]>8)) Measure 2 = CALCULATE(COUNT(Table1[name]),FILTER(ALL(Table1),[score]<7)) Measure 3 = CALCULATE(COUNT(Table1[name]),ALL(Table1)) Measure 4 = ([Measure]-[Measure 2])/[Measure 3] Measure 5 = ROUNDUP([Measure 4],0)
Or a nested measure
Measure 6 =
VAR low =
CALCULATE ( COUNT ( Table1[name] ), FILTER ( ALL ( Table1 ), [score] < 7 ) )
VAR high =
CALCULATE ( COUNT ( Table1[name] ), FILTER ( ALL ( Table1 ), [score] > 8 ) )
VAR alname =
CALCULATE ( COUNT ( Table1[name] ), ALL ( Table1 ) )
VAR percentage = ( high - low )
/ alname
RETURN
ROUNDUP ( percentage, 0 )
Best Regards
Maggie
Hi v-juanli-msft -
I appreciate you sharing your recommendation.
I entered the following formula per your suggestion:
NPS = VAR low =
CALCULATE ( COUNT ( 'GetFeedback Result'[Likely to Recommend - RNPS] ), FILTER ( ALL ( 'GetFeedback Result' ), [Likely to Recommend - RNPS] < 7 ) )
VAR high =
CALCULATE ( COUNT ( 'GetFeedback Result'[Likely to Recommend - RNPS] ), FILTER ( ALL ( 'GetFeedback Result' ), [Likely to Recommend - RNPS] > 8 ) )
VAR alname =
CALCULATE ( COUNT ( 'GetFeedback Result'[Likely to Recommend - RNPS] ), ALL ( 'GetFeedback Result' ) )
VAR percentage = ( high - low )
/ alname
RETURN
ROUNDUP ( percentage, 0 )
When I added the measure as a Card on my dashboard, it came out as a -1. When I used my excel formula, it resulted the value -33, which is accurate.
Do you have further recommendations for me?
Thanks in advance,
Leanne