Descriptive
Net Promoter Score (NPS)
Splits a single zero-to-ten recommendation question into three segments and subtracts the share of detractors from the share of promoters to produce one score.
Method summary
The net promoter score asks participants how likely they are to recommend a product or service on a scale running from zero to ten, then sorts the answers into three fixed segments: nines and tens are promoters, sevens and eights are passives, and anything from zero to six is a detractor. The score is the share of promoters minus the share of detractors. Passives never enter the numerator, but they do enter the denominator, which pulls both shares down. The result reads as a whole number between minus one hundred and plus one hundred and is not an average, so it does not tell you what the mean score tells you. The segment boundaries are part of the definition of the measure and cannot be altered in the panel. Alongside the score the engine returns the percentage and the count of each segment, the mean of the raw answers and the number of observations analysed. Supply a grouping column and the same breakdown repeats for every group; supply driver variables and each driver's relationship with the raw score is reported separately.
Which research questions does it answer?
- Where does our customers' willingness to recommend stand this quarter?
- Do the individual and corporate customer segments differ in their willingness to recommend?
- Which dimension of the experience separates promoters from detractors?
- Does the size of the detractor group reveal a problem that the mean score conceals?
When should you use it?
- When the recommendation question really was asked on the eleven-point zero-to-ten form, since a five or seven-point scale cannot be analysed this way.
- When an indicator is tracked from period to period and the same question recurs in the same wording.
- When you want the tails of the distribution next to the average, since the score makes the mass of detractors more visible than a mean does.
- When segments are to be compared and the grouping column is already in the data.
- To rank the experience dimensions feeding the willingness to recommend, where those dimensions are available as numeric columns.
Required variable types
- The recommendation question: a single numerically coded column taking values between zero and ten. A value outside that range stops the analysis, which reports the range it found.
- The grouping column is optional and has to be categorical; segment, channel, city or plan name all fit the role.
- Driver variables are optional and are supplied as numeric columns, with satisfaction items or scale scores suiting the role.
- Recommendation scores stored as text will not pass validation, so confirm on the Variable tab that the column was read as numeric.
Key assumptions
- An eleven-point scale
- The method draws its segment boundaries against a scale from zero to ten. Recoding a five-point scale into that range still breaks the meaning of the segments, because the step standing in for nine and ten no longer represents a single answer category.
- A sample that represents the population of interest
- Being a difference of shares, the score is sensitive to who is in the sample. A survey reaching only active users systematically understates the share of detractors, because the customers who left are not there to answer.
- Enough observations per segment
- An indicator defined as a difference of shares behaves unstably in small samples, where a handful of answers changing places can swing it by tens of points. Once grouping is applied, that fragility passes to each of the small groups.
- Linear driver relationships
- The driver report rests on each driver's linear association with the raw recommendation score. An experience dimension that flattens out past a threshold will look weaker in the coefficient than it is.
How YouReply checks these assumptions
- An eleven-point scale: The engine verifies that the values are numeric and lie between zero and ten; finding a value outside the scale, it refuses to run and reports the lowest and highest values it met in the data.
- A sample that represents the population of interest: The panel does not assess representativeness and computes the score unweighted; judging the composition of the sample stays with the researcher.
- Enough observations per segment: There is no minimum observation gate: with a grouping column the breakdown is computed for every group however small it is, and each group's observation count appears in the result.
- Linear driver relationships: Linearity is not tested for the drivers and no scatter plot is drawn. When several drivers are tested together, no multiple comparison correction is applied to the p values, and the significance flag is fixed at the 0.05 level.
How the analysis is run
- 1Drop your response file onto the upload area and locate the recommendation column in the grid on the Data tab.
- 2On the Variable tab confirm that the column was read as numeric and that its values stay inside the scale bounds, since one out-of-range value stops the analysis.
- 3If you plan to group, check the categories of the segment column on the same tab, and check that any driver columns were read as numeric.
- 4On the Analysis tab pick the net promoter score from the descriptive group; the data requirements box lists the columns that qualify as a recommendation question.
- 5In the parameter form name the recommendation column, which is required, and optionally choose a grouping column and driver variables.
- 6Run the analysis. The score, the segment breakdown, the mean and the observation count open in collapsible sections, joined by the grouping and driver tables if you asked for them.
- 7Export the tables to Excel. No method-specific chart is drawn here, and the computation credits card names the library call behind the figures.
Statistics and tables produced
- The net promoter score
- One figure, the share of promoters less the share of detractors. It ranges from minus one hundred to plus one hundred and is not an average.
- Segment percentages
- The shares of promoters, passives and detractors. Read together they reveal how different the distributions behind one identical score can be.
- Segment counts
- The number of participants in each segment. Showing how many people each share rests on keeps interpretation restrained in small samples.
- Mean score and observation count
- The mean of the raw recommendation answers together with the number of valid answers analysed. The mean preserves the centre before any segmenting.
- Breakdown per group
- With a grouping column, the score, the segment shares, the counts, the mean and the observation count repeat for each group.
- Driver report
- With driver variables, each driver gets a Pearson correlation with the raw score, a p value, the promoter mean, the detractor mean and a significance flag.
Effect size and confidence intervals
- The score itself
- The net promoter score is a difference between two percentages and not a standardized measure of effect. It therefore cannot be called small or large against a threshold, and its meaning arises only from a previous measurement taken with the same question or from a comparable benchmark. No significance test is run on the score, so whether a gap between two periods or two groups is more than chance cannot be read from this output.
- Driver correlations
- Each coefficient in the driver report gives that experience dimension's linear association with the raw recommendation score, and being unit-free the coefficients are comparable across drivers. This is the one place where the method runs a significance test. The gap between the promoter mean and the detractor mean, read next to the coefficient, shows how sharply the driver separates the two extreme segments, though no standardized effect size is computed for that gap.
No confidence interval is returned, neither for the score nor for the segment shares. The score and the percentages arrive as point estimates, and because the score is a difference of proportions its sampling error is larger than that of either proportion alone. Ignoring this is what leads small movements between two periods to be mistaken for real change. The driver correlations come with p values, yet no interval is computed for those coefficients either. A presentation that requires intervals will need them worked out outside the panel.
Example research question and example result
The numbers below are a representative example, not data from a real study or a real user.
- Research question
- In an illustrative subscription service study, how strong is the willingness to recommend, and which dimension of the experience feeds it?
- Variables
- Recommendation question: how likely you are to recommend the service to a friend (0-10, ordinal) · Grouping column: customer type (individual / corporate) · Driver variables: support satisfaction and price fairness scores (1-10, continuous)
- Example result
- 612 valid answers were given to the recommendation question, with a mean of 7.8. There were 251 promoters (41.0 per cent), 214 passives (35.0 per cent) and 147 detractors (24.0 per cent), putting the score at 17. In the grouped breakdown the score was 12 among individual customers (n = 398) and 26 among corporate ones (n = 214). In the driver report support satisfaction had a coefficient of 0.54, p < 0.001, a promoter mean of 8.6 and a detractor mean of 6.1, while price fairness had a coefficient of 0.31, p < 0.001, a promoter mean of 7.9 and a detractor mean of 6.4. Both drivers were flagged as significant.
- Interpretation
- A score of 17 says the body of promoters exceeds the body of detractors by seventeen points. For all that the mean of 7.8 looks comfortable, one participant in four sits in the detractor segment, and that fact cannot be recovered from the mean alone. Corporate customers score more than twice what individual customers do, but since no test is run on that gap this output cannot say whether sampling variation would account for it. Of the two drivers, support satisfaction carries both the higher coefficient and the wider gap between the extreme segments, which makes it the first candidate for improvement work. Because the two drivers were tested together, it is worth remembering that the significance flags are uncorrected. The figures are illustrative.
Real output on a sample dataset
The results below were produced by the analysis engine from this data file. Changing the variable changes the research question as well; every run was computed in advance, so the page sends no request to the engine.
General customer survey (synthetic)
A wide survey of three hundred respondents: two and three category grouping variables, continuous measures, a five point ordinal scale, a binary purchase outcome, a four category brand choice, three repeated measurements, paired binary questions, three raters, four price questions and deliberately empty cells.
- Rows
- 300
- Columns
- respondent_id, gender, education, region, age, income, satisfaction, service_score, price_score, quality_score, loyalty, nps_score, purchased, brand_choice, satisfaction_level, pre_score, post_score, measure_1, measure_2, measure_3, use_before, use_after, use_followup, rater_1, rater_2, rater_3, price_too_cheap, price_cheap, price_expensive, price_too_expensive, feedback_score, followup_rating
The data is synthetic: it comes from a fixed random seed, not from a real study. The values below were produced by the analysis engine from this file, so uploading the same file to the panel gives the same results.
Research question: What is the net promoter score and which dimension drives the willingness to recommend most?
- Analyzed column
- nps_score
- Driver variables
- satisfaction,service_score,quality_score
- column
- nps_score
- Net promoter score (NPS)
- -4.30
- Percentage of promoters
- 27
- Percentage of passives
- 41.70
- Percentage of detractors
- 31.30
- Promoters
- 81
- Passives
- 125
- Detractors
- 94
- Mean recommendation score
- 7.34
- Valid observations
- 300
Driver correlations
| Row | Correlation coefficient | p value | Driver mean among promoters | Driver mean among detractors | Significant | Valid observations |
|---|---|---|---|---|---|---|
| satisfaction | 0.699 | 0 | 6.10 | 4.44 | Yes | 300 |
| service_score | 0.322 | 0 | 4.99 | 4.24 | Yes | 300 |
| quality_score | 0.108 | 0.062 | 4.76 | 4.43 | No | 300 |
Computation credits: scipy 1.18.0 · statsmodels 0.14.6 · scikit-learn 1.9.0 · numpy 2.5.1 · pandas 3.0.5 · semopy 2.3.11 · 89fc29a · Data seed: 20260914
How to report the result
The net promoter score was 17, with 41.0 per cent promoters, 35.0 per cent passives and 24.0 per cent detractors (mean score 7.8, n = 612).
An example sentence close to APA style; the numbers are representative.
When you should not use it
- The segment boundaries belong to the definition of the measure, so you cannot move the cut-points at nine and at six to suit your own scale.
- One identical score can come from very different distributions, since a larger body of passives shrinks both shares at once; reporting the score without the segment percentages loses that information.
- No confidence interval and no significance test are produced for the score or the shares, so this method cannot establish whether a gap between two periods or two groups is reportable.
- A single value outside the scale, or stored as text, halts the analysis entirely, which makes data preparation a precondition here rather than a preference.
- No multiple comparison correction is applied to the driver correlations, so with many drivers some significance flags are expected to arise from the number of tests alone.
- The driver report speaks in terms of linear association and establishes no causation; it does not follow that improving a high-coefficient dimension will raise the score.
What to use when the assumptions are not met
- Frequency DistributionWhy: When you want all eleven points of the recommendation question with counts and percentages, to see where the answers pile up.
- Descriptive StatisticsWhy: To summarise the recommendation score with measures of centre and spread rather than segments; the quartiles give a reading independent of the cut-points.
- Pearson CorrelationWhy: When one driver deserves a closer look alongside the recommendation score, with its observation count and strength label.
- Cross-TabulationWhy: When the segments need reading against boundaries of your own definition, or against another categorical variable.
Frequently asked questions
- My scale has five points. Can I analyse it as an NPS?
- You cannot. The engine requires values between zero and ten, and on meeting a five-point scale it reports the range it found and stops. Stretching five answers across eleven points will technically let the analysis run, but the result is uninterpretable, because the segment boundaries no longer coincide with real answer categories. For a five-point recommendation question, a frequency distribution or the descriptive statistics give a more honest summary.
- Is the difference between two periods' scores significant?
- This method runs no significance test on the score and returns no confidence interval, so it cannot answer that directly. Since the score is a difference of proportions, movements of a few points are ordinary when the sample runs to a few hundred people. If you have to discuss the change, move to a test comparing the promoter or detractor share across the two periods, or present the difference cautiously with the observation counts alongside.
- Why do passives affect the score?
- Passives stay out of the numerator but count in the denominator. As the number of participants answering seven or eight grows, both the promoter and the detractor share shrink and the gap between them is drawn towards zero. The consequence is that in a sample with many passives the score looks more moderate than the answers warrant. Reporting all three segment shares next to the score makes that effect visible.
- Several dimensions came out significant in the driver report. Can I trust them all?
- Not at face value. The significance flag is applied to each driver separately at a fixed 0.05 level, with no correction for the error that accumulates when many drivers are tested together. A practical approach is to set priorities by the size of the coefficient and by the gap between the promoter and detractor means rather than by significance alone, and to examine whichever driver you settle on through the pairwise correlation method as well.
References
- Reichheld, F. F. (2003). The One Number You Need to Grow
- Keiningham, T. L., Cooil, B., Andreassen, T. W., & Aksoy, L. (2007). A Longitudinal Examination of Net Promoter and Firm Revenue Growth
- Grisaffe, D. B. (2007). Questions about the Ultimate Question: Conceptual Considerations in Evaluating Reichheld's Net Promoter Score
- scipy.stats.pearsonr documentation
Try it with your own data
The free plan includes 50 analysis runs a month and needs no card.