Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
Anonymous
Not applicable

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

cwileyrrt_0-1609952567272.png

 

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 2
v-alq-msft
Community Support
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.

StefanoGrimaldi
Resident Rockstar
Resident Rockstar

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. 





Did I answer your question? Mark my post as a solution! / Did it help? Give some Kudos!

Proud to be a Super User!




Helpful resources

Announcements
June 2025 Power BI Update Carousel

Power BI Monthly Update - June 2025

Check out the June 2025 Power BI update to learn about new features.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors