Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

LimeSurvey and NPS: How are you calculating your Net Promoter Score?

More
3 weeks 1 day ago #274009 by Mazi
Please help us help you and fill where relevant:
Your LimeSurvey version: 6.x
Own server or LimeSurvey hosting: Self hosted
Survey theme/template: Backy
==================
Hi all,

quick question to the community: How are you currently calculating NPS (Net Promoter Score) in LimeSurvey?

In many projects we’ve seen, the survey setup itself is quite straightforward — using a 0–10 scale and some follow-up logic.  
But the evaluation step (grouping respondents and calculating the NPS) is often handled outside of LimeSurvey.

We recently worked on a small LimeSurvey plugin to bring this part back into the tool. It currently covers two aspects:
– a structured NPS question layout (0–10 scale with consistent labeling)  
– built-in evaluation with automatic classification (Detractors, Passives, Promoters) and visual charts  



The goal was not to replace existing survey logic, but to make NPS easier to use and evaluate directly within LimeSurvey. You can download the plugin at " LimeSurvey NPS Plugin "

I’d be really interested to hear how others are solving this today:
– Are you calculating NPS externally?
– Is anyone using ExpressionScript or custom code for this?
– Or do you have a different approach?

Happy to exchange ideas.

Best regards/Beste Grüße,
Dr. Marcel Minke
survey-consulting.com
offlinesurveys.com
Feel free to contact me by email for professional LimeSurvey support!

Please Log in to join the conversation.

More
2 weeks 5 days ago #274028 by elissa
Hi Marcel,

In LS3 I used the script provided by tpartner ( forums.limesurvey.org/forum/can-i-do-thi...rvey?start=15#186378 ), however unfortunately, it seems not to work in LS6. To data presentation I use charts done in Excel.

Elzbieta Lesinska
LS voluntary Polish translator and supervisor

Please Log in to join the conversation.

More
2 weeks 5 days ago - 2 weeks 5 days ago #274031 by Joffm
Hi, Elissa,
what's the problem in LS6?
I do not see anything weird
neither in vanilla or fruity
  
nor in fruity twentythree
  

Why can't I write "extremely"? Hm. 

I did not really compare, but I should say, it's the same script
Code:
<script type="text/javascript" charset="utf-8">
 
    $(document).on('ready pjax:scriptcomplete',function(){
 
        // Identify this question
        var thisQuestion = $('#question{QID}');
        
        // Add a question class
        thisQuestion.addClass('custom-array');
 
        // Column-specific classes
        $('table.subquestion-list tr', thisQuestion).each(function(i) {
            $('th, td', this).each(function(i) {
                $(this).addClass('column-'+i);
            });
        });
        // Listener on the radios
        // If you want to use the hovering
        $('input:radio', thisQuestion).on('click', function(i) {
            $(this).closest('tr').find('.active-item').removeClass('active-item');
            $(this).closest('td').addClass('active-item');
        });        
    });
</script>


And the css: 
Code:
<style type="text/css">.custom-array table.subquestion-list thead td,
    .custom-array table.subquestion-list thead th {
        border-bottom-width: 8px;
        border-bottom-style: solid;
    }
   .custom-array table.subquestion-list col {
       width: auto !important;
   }  
 
    .custom-array table.subquestion-list thead .column-1 { border-bottom-color: #00A800; width: 23%; }
    .custom-array table.subquestion-list thead .column-2 { border-bottom-color: #5AC100; width: 6%; }
    .custom-array table.subquestion-list thead .column-3 { border-bottom-color: #9DD600; width: 6%; }
    .custom-array table.subquestion-list thead .column-4 { border-bottom-color: #9CE400; width: 6%; }
    .custom-array table.subquestion-list thead .column-5 { border-bottom-color: #E2EC00; width: 6%; }
    .custom-array table.subquestion-list thead .column-6 { border-bottom-color: #ECEC00; width: 6%; }
    .custom-array table.subquestion-list thead .column-7 { border-bottom-color: #ECE200; width: 6%; }
    .custom-array table.subquestion-list thead .column-8 { border-bottom-color: #E4C900; width: 6%; }
    .custom-array table.subquestion-list thead .column-9 { border-bottom-color: #D69D00; width: 6%; }
    .custom-array table.subquestion-list thead .column-10 { border-bottom-color: #C15A00; width: 6%; }
    .custom-array table.subquestion-list thead .column-11 { border-bottom-color: #A80200; width: 23%; }

  
    .custom-array td.column-1:hover,
    .custom-array td.active-item.column-1 { background-color: #00A800; }

    .custom-array td.column-2:hover,
    .custom-array td.active-item.column-2 { background-color: #5AC100; }

    .custom-array td.column-3:hover,
    .custom-array td.active-item.column-3 { background-color: #9DD600; }

    .custom-array td.column-4:hover,
    .custom-array td.active-item.column-4 { background-color: #9CE400; }

    .custom-array td.column-5:hover,
    .custom-array td.active-item.column-5 { background-color: #E2EC00; }

    .custom-array td.column-6:hover,
    .custom-array td.active-item.column-6 { background-color: #ECEC00; }

    .custom-array td.column-7:hover,
    .custom-array td.active-item.column-7 { background-color: #ECE200; }

    .custom-array td.column-8:hover,
    .custom-array td.active-item.column-8 { background-color: #E4C900; }

    .custom-array td.column-9:hover,
    .custom-array td.active-item.column-9 { background-color: #D69D00; }

    .custom-array td.column-10:hover,
    .custom-array td.active-item.column-10 { background-color: #C15A00; }

    .custom-array td.column-11:hover,
    .custom-array td.active-item.column-11 { background-color: #A80200; }
</style>

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 2 weeks 5 days ago by Joffm.
The following user(s) said Thank You: elissa

Please Log in to join the conversation.

More
2 weeks 5 days ago #274032 by elissa
Hi Joffm,

Yes, you’re right - it works perfectly! I must have messed something up in my script (I’m not great with scripting).

Thanks a lot!

Elzbieta Lesinska
LS voluntary Polish translator and supervisor

Please Log in to join the conversation.

Moderators: tpartnerholch

Lime-years ahead

Online-surveys for every purse and purpose