FreeStatisticalTools.com
Marketing research

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.

Free · No sign-upReplaces Spreadsheet · QualtricsWorks with your data
Updated · By Bibin Xavier

Data 640 × 4

Paste from Excel, or drop a CSV, TSV or Excel file here.
Example data 640 rows, 4 variables. Data stays in this browser tab.
Customertext · 640 levelsChanneltext · 3 levelsNPS_ScorenumericWavetext · 2 levels
C0001Web02025-H2
C0002Store102025-H1
C0003Store62025-H2
C0004Web102025-H2
C0005Store92025-H1
C0006App52025-H2
C0007Web62025-H2
C0008App102025-H1

Variables and options

Results update automatically when you change an option.

Results

640 rows · example data
Net Promoter Score4.495% CI [-2.0, 10.8]
Promoters (9–10)36.6%
Passives (7–8)31.3%
Detractors (0–6)32.2%
Responses640
Table 1

Net Promoter Score

GroupnPromotersPassivesDetractorsNPSSE95% CI
App22034.1%26.8%39.1%-5.05.76[-16.3, 6.3]
Store20642.7%35.0%22.3%20.45.44[9.7, 31.0]
Web21433.2%32.2%34.6%-1.45.63[-12.4, 9.6]
Total64036.6%31.3%32.2%4.43.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.

Table 2

Pairwise comparisons

ComparisonDifference in NPSSE95% CIzpp (Holm)
Store vs App+25.47.92[9.9, 40.9]3.21.001.004
Web vs App+3.68.05[-12.2, 19.4]0.45.655.655
Web vs Store-21.87.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.

Table 3

Comparison with the benchmark

BenchmarkObserved NPSDifferencezp (two-sided)
30.04.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.

The Net Promoter Score was 4.4 (95% CI [-2.0, 10.8], n = 640; 36.6% promoters, 32.2% detractors).

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}
}
Download citation:

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

  1. 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.
  2. Choose the variables. Select the likelihood to recommend (0–10), compare groups (optional) and frequency weight or count (optional).
  3. Set the options. Fill in benchmark or target nps (optional) and confidence level.
  4. 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