Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
5 years ago

Filtered NPS showing 200$?

I have an NPS score being calculated which works fine under normal circumstances. Once I add a filter to look at a specific service line, the value changes to 200% and I cant figure out how the calculation would show that. 

 

Visual

 

Data for Above (These all match the filter but the blank values should be ignored as shown below in calculation)

 

 

Calculation:

Calculated NPS = VAR _participantAdvocates = CALCULATE ( COUNTROWS ( 'Primary' ), FILTER ( ALL ( 'Primary' ), 'Primary'[NPS Score] >= 9 && 'Primary'[NPS Score] <> BLANK () ) ) VAR _participantDetractors = CALCULATE ( COUNTROWS ( 'Primary' ), FILTER ( ALL ( 'Primary' ), 'Primary'[NPS Score] <= 6 && 'Primary'[NPS Score] <> BLANK () ) ) VAR _totalParticipantResponses = CALCULATE ( COUNTROWS ( 'Primary' ), 'Primary'[NPS Score] <> BLANK () ) RETURN DIVIDE ( _participantAdvocates - _participantDetractors, _totalParticipantResponses )

 

 

Any ideas?

2 Replies

  • hey,

    try simplifying that measure first, something like this should work: 

    Calculated NPS =

    Var primary2 = filter("primary", [NPS Score] <> Blank() )

    Var Total = count("primary2"[NPS Score])

    Var PBenefecators = (calculate(count(primary2[NPS Score]), primary[NPS Score] >=8)) / Total

    Var PDetractors = (calculate(count(primary2[NPS Score]), primary[NPS Score] <=6)) / Total

     

    return PBenefactors - PDetractors

     

    this should work, 

    f this solved your problem please mark it as solution for others to find more easily, if you liked the solution give some kudos. 

  • v-alq-msft's avatar
    v-alq-msft
    Community Support

    Hi, Anonymous 

     

    You may try the following measure to see if it works.

     

    Calculated NPS =
    VAR _participantAdvocates =
        CALCULATE (
            COUNTROWS ( 'Primary' ),
            FILTER (
                ALL ( 'Primary' ),
                'Primary'[NPS Score] >= 9
                    && 'Primary'[NPS Score] <> BLANK ()
            )
        )
    VAR _participantDetractors =
        CALCULATE (
            COUNTROWS ( 'Primary' ),
            FILTER (
                ALL ( 'Primary' ),
                'Primary'[NPS Score] <= 6
                    && 'Primary'[NPS Score] <> BLANK ()
            )
        )
    VAR _totalParticipantResponses =
        CALCULATE (
            COUNTROWS ( 'Primary' ),
            FILTER ( ALL ( 'Primary' ), 'Primary'[NPS Score] <> BLANK () )
        )
    RETURN
        DIVIDE (
            _participantAdvocates - _participantDetractors,
            _totalParticipantResponses
        )
    

     

     

    Best Regards

    Allan

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.