Net Promoter Score (NPS) Calculator with Significance Test
Calculate the Net Promoter Score from 0–10 “how likely are you to recommend” answers, with its margin of error, and test whether NPS really differs between groups, channels, waves or against a target.
Updated · By Bibin XavierData 640 × 4
| Customertext · 640 levels | Channeltext · 3 levels | NPS_Scorenumeric | Wavetext · 2 levels |
|---|---|---|---|
| C0001 | Web | 0 | 2025-H2 |
| C0002 | Store | 10 | 2025-H1 |
| C0003 | Store | 6 | 2025-H2 |
| C0004 | Web | 10 | 2025-H2 |
| C0005 | Store | 9 | 2025-H1 |
| C0006 | App | 5 | 2025-H2 |
| C0007 | Web | 6 | 2025-H2 |
| C0008 | App | 10 | 2025-H1 |
Variables and options
Results
640 rows · example dataNet Promoter Score
| Group | n | Promoters | Passives | Detractors | NPS | SE | 95% CI |
|---|---|---|---|---|---|---|---|
| App | 220 | 34.1% | 26.8% | 39.1% | -5.0 | 5.76 | [-16.3, 6.3] |
| Store | 206 | 42.7% | 35.0% | 22.3% | 20.4 | 5.44 | [9.7, 31.0] |
| Web | 214 | 33.2% | 32.2% | 34.6% | -1.4 | 5.63 | [-12.4, 9.6] |
| Total | 640 | 36.6% | 31.3% | 32.2% | 4.4 | 3.27 | [-2.0, 10.8] |
Note. NPS = % promoters − % detractors, from −100 to +100. SE = 100 × √((pP + pD − (pP − pD)²) / n), a normal-approximation interval suitable for n of about 100 or more per group.
Pairwise comparisons
| Comparison | Difference in NPS | SE | 95% CI | z | p | p (Holm) |
|---|---|---|---|---|---|---|
| Store vs App | +25.4 | 7.92 | [9.9, 40.9] | 3.21 | .001 | .004 |
| Web vs App | +3.6 | 8.05 | [-12.2, 19.4] | 0.45 | .655 | .655 |
| Web vs Store | -21.8 | 7.82 | [-37.1, -6.5] | -2.79 | .005 | .011 |
Note. Two-sample z-test for the difference between independent NPS values. Holm’s correction controls the family-wise error rate across all pairs.
Comparison with the benchmark
| Benchmark | Observed NPS | Difference | z | p (two-sided) |
|---|---|---|---|---|
| 30.0 | 4.4 | -25.6 | -7.83 | < .001 |
Distribution of scores
Promoters, passives and detractors by group
Interpretation
The overall NPS is 4.4 (95% CI [-2.0, 10.8]): 36.6% promoters minus 32.2% detractors. The margin of error is ±6.4 points. Compared with the benchmark of 30.0, the score is significantly lower (p < .001). After Holm’s correction, Store vs App (+25.4 points); Web vs Store (-21.8 points) are statistically significant.
How to cite this tool
Using these results in a thesis, journal article, report or class assignment? Please cite this free tool so others can find it. It keeps the site free.
APA 7
Xavier, B. (2026). Net Promoter Score (NPS) Calculator with Significance Test [Web application]. FreeStatisticalTools.com. https://freestatisticaltools.com/nps-calculator/
BibTeX
@software{xavier_npscalculator_2026,
author = {Xavier, Bibin},
title = {Net Promoter Score (NPS) Calculator with Significance Test},
publisher = {FreeStatisticalTools.com},
year = {2026},
url = {https://freestatisticaltools.com/nps-calculator/},
note = {Web application}
}Suggested sentence for your methods section: “The analysis was carried out with the free Net Promoter Score (NPS) Calculator with Significance Test tool on FreeStatisticalTools.com (Xavier, 2026).”
What is the Net Promoter Score?
The Net Promoter Score is the percentage of promoters (9–10) minus the percentage of detractors (0–6) on the 0–10 likelihood-to-recommend question. This calculator gives NPS with its confidence interval and margin of error, breaks it down by group, and tests whether differences between groups, channels or survey waves, or against a benchmark, are statistically significant.
When to use the Net Promoter Score
Use it whenever you report NPS from a sample: to give the score a margin of error, to check whether a change between waves or a gap between channels, regions or segments is real, or to test against a target.
Assumptions
- Responses are independent and come from a random or representative sample of customers.
- The z-tests use a normal approximation that works well with about 100 or more responses per group.
- Groups being compared are independent (different customers).
How to set up your data
One row per respondent with the 0–10 answer, and optionally a group column. Aggregated data also work: one row per score (and group) with a count column used as the frequency weight.
How the Net Promoter Score is calculated
The Net Promoter Score, introduced by Fred Reichheld in the Harvard Business Review in 2003, is based on one question: “How likely is it that you would recommend [company or product] to a friend or colleague?”, answered on a scale from 0 (not at all likely) to 10 (extremely likely). Respondents are grouped into three categories:
- Promoters (9–10): enthusiastic customers who are likely to buy again and recommend.
- Passives (7–8): satisfied but unenthusiastic customers who could switch to a competitor.
- Detractors (0–6): unhappy customers who may damage the brand through negative word of mouth.
NPS = % promoters − % detractors. It ranges from −100 (everyone is a detractor) to +100 (everyone is a promoter). Passives count in the base but not in the score. A company with 45% promoters, 35% passives and 20% detractors therefore has an NPS of +25.
Why NPS needs a margin of error
NPS is usually reported as a single number, but it comes from a sample and moves around from one survey wave to the next purely by chance. Because it is the difference of two proportions taken from the same sample, its sampling error is larger than most people expect. The variance of NPS (on the −1 to +1 scale) is
Var(NPS) = [pP + pD − (pP − pD)²] / n
where pP and pD are the shares of promoters and detractors and n the number of responses. Multiplying the square root by 100 gives the standard error in NPS points. With 400 responses and a typical mix, the 95% margin of error is around ±8 points; with 100 responses it is around ±15 points. A change from +22 to +28 between two waves of 200 respondents is therefore very likely noise. This calculator gives the confidence interval at 90%, 95% or 99% for the total and for every group.
Testing differences between groups and waves
To compare NPS between independent groups, for example channels, regions, customer segments or two survey waves with different respondents, the tool uses a two-sample z-test: z = (NPS2 − NPS1) / √(SE1² + SE2²), with a confidence interval for the difference. When there are more than two groups, every pair is tested and the p-values are adjusted with Holm’s method, which keeps the chance of any false positive at 5% while being more powerful than Bonferroni. You can also enter a benchmark or target (an industry average, last year’s score or a goal), and the tool tests whether the observed NPS differs from it.
Worked example with the built-in data
The example contains 640 customers who bought through three channels. The overall NPS is +4.4, with a 95% confidence interval of −2.0 to +10.8: 36.6% promoters minus 32.2% detractors. By channel, store customers score +20.4, web customers −1.4 and app customers −5.0. After Holm’s correction, the store is significantly ahead of both the app (+25.4 points, adjusted p = .004) and the web (+21.8 points, adjusted p = .011), while the 3.6-point gap between web and app is not significant (p = .66). Compared with a target of +30, the overall score is significantly lower. The story for management is therefore not “web is better than app”, which the data cannot support, but “digital channels lag the store by more than 20 points”.
Using raw scores or counts
The usual input is one row per respondent with the 0–10 score. If you only have a summary table, for example how many customers gave each score, enter one row per score (and group) with a count column and select it as the frequency weight. Survey weights can be used the same way; the weighted counts are then used as sample sizes, which is a reasonable approximation when the weights are not extreme.
What is a good NPS?
There is no universal threshold. Scores depend heavily on industry, country and survey method: utilities, telecoms and insurers often have negative or low scores, while some consumer brands and software products score above +50. Relational surveys (asked periodically to all customers) give lower scores than transactional surveys (asked just after a purchase or support interaction). Compare yourself with your own history and with benchmarks gathered in the same way, and always look at the confidence interval.
Best practices
- Collect enough responses. For a margin of error of ±5 points you need roughly 1,000–1,500 responses; for comparisons between segments, plan at least 200 per segment.
- Look beyond the score. Report the three shares, not just the net figure: the same NPS of +20 can come from 40% promoters and 20% detractors or from 25% promoters and 5% detractors, which are very different situations.
- Use the distribution. The chart of all eleven score values shows whether detractors are mostly 5s and 6s (close to passive) or 0s and 1s (strongly negative).
- Ask why. Follow the score with an open question and analyse comments by category; use key driver analysis on attribute ratings to find what moves the score.
- Beware of sampling bias. Low response rates and surveys sent only to active customers inflate NPS.
NPS and statistical alternatives
Because NPS discards information (a 0 and a 6 count the same), the mean of the 0–10 scale is statistically more precise and is useful for significance testing alongside NPS. If you want to model what drives the score, treat the 0–10 answer as an outcome in key driver analysis or ordinal logistic regression, both available on this site. For before-and-after comparisons on the same customers (paired data), the independent-samples test here is conservative; a paired analysis of the individual scores is more powerful.
Reporting NPS results
Report the NPS with its confidence interval and sample size, the shares of promoters, passives and detractors, and the test used for any comparison. Example: “The Net Promoter Score was +4.4 (95% CI −2.0 to +10.8, n = 640; 36.6% promoters, 32.2% detractors). Store customers scored significantly higher than app customers (+25.4 points, Holm-adjusted p = .004).”
Glossary of NPS terms
- Promoter: a respondent scoring 9 or 10.
- Passive: a respondent scoring 7 or 8; included in the base but not in the score.
- Detractor: a respondent scoring 0 to 6.
- Relational NPS: measured periodically across the whole customer base to track overall loyalty.
- Transactional NPS: measured right after an interaction such as a purchase or support call.
- Margin of error: the half-width of the confidence interval, for example ±6.4 points at 95%.
- Benchmark: a reference value such as an industry average, last year’s score or a target.
- Closed loop: following up with detractors (and promoters) to resolve issues and learn why they scored as they did.
Key references: Reichheld (2003), Harvard Business Review; Rocks (2016) on the NPS margin of error; Keiningham et al. (2007), Journal of Marketing, on NPS and growth.
How to use this tool
- Enter your data. Paste columns from Excel, Google Sheets or SPSS with variable names in the first row, or upload a CSV or Excel file. The example data shows the expected layout.
- Choose the variables. Select the likelihood to recommend (0–10), compare groups (optional) and frequency weight or count (optional).
- Set the options. Fill in benchmark or target nps (optional) and confidence level.
- Read the results. Results update automatically. Read the plain-English interpretation, then use Copy table to paste APA-style tables into Word and Copy for the results sentence.
How to report the Net Promoter Score in APA style
Report NPS with its confidence interval and sample size, the shares of promoters and detractors, and the test for any comparison.
Frequently asked questions
How is NPS calculated?
NPS = % promoters (9–10) − % detractors (0–6). Passives (7–8) count in the base but not in the score. It ranges from −100 to +100.
What is the margin of error of NPS?
The standard error is √((pP + pD − (pP − pD)²)/n). With 400 responses the 95% margin is typically around ±8 points.
How do I test if two NPS values differ?
Use a two-sample z-test: the difference divided by √(SE1² + SE2²). The tool applies Holm’s correction when comparing several groups.
How many responses do I need?
About 1,000–1,500 for a ±5-point margin of error; at least 200 per segment for group comparisons.
Can I use counts instead of raw scores?
Yes. Enter one row per score with a count column and select it as the frequency weight.
What is a good NPS?
It depends on the industry and survey method. Compare with your own history and benchmarks collected the same way, and always look at the confidence interval.
Related tools
See also
Learn this method step by step in the free course Marketing Research with Survey Data, with exercises and a certificate.
Browse all categories
Data cleaning and preparation · Describe and explore · Compare means · Nonparametric tests · Correlation and regression · Bayesian statistics · Categorical data · Reliability and agreement · Multivariate analysis · Structural equation modeling · Econometrics and time series · Panel data and causal inference · Marketing research · Marketing analytics · Survival, clinical and meta-analysis · Study planning and calculators · PLS-SEM