NPS Score Calculation - Done
7 min
Overview
This document outlines how to implement Net Promoter Score (NPS) calculations in our system.
Individual Respondent Data
- Store the raw score (0-10) provided by each respondent
- Do not classify individual responses as Promoter/Passive/Detractor in storage
NPS Aggregation Formula
NPS should only be calculated when aggregating multiple responses:
Classification
- Promoters: Scores of 9-10
- Passives: Scores of 7-8
- Detractors: Scores of 0-6
Formula and Example
The NPS is calculated as:
NPS = % of Promoters - % of Detractors
For example, if you surveyed 200 customers and got:
- 100 Promoters (50%)
- 60 Passives (30%)
- 40 Detractors (20%)
Your NPS would be: 50% - 20% = 30
Converting NPS to 0-100% Scale
To convert the standard NPS (-100 to 100) to a 0-100% scale:
function npsToPercentage(npsScore)
{
return Math.round((npsScore + 100) / 2);
}
For example:
- NPS of -100 → 0%
- NPS of 0 → 50%
- NPS of 30 → 65%
- NPS of 100 → 100%
Aggregate NPS Storage
- npsScore: Normal Display the NPS as an integer from -100 to +100
- npsPercent: For percentage display, convert using the formula above