Reporting results

How to Report a Shapiro-Wilk Test in APA 7 (With Example)

How to report a Shapiro-Wilk normality test in APA 7: W, exact p, per-group results, what to do when it fails, and a worked example.

The Shapiro-Wilk test (Shapiro & Wilk, 1965) checks whether a sample could plausibly have come from a normal distribution. It is the most common formal normality check before a t-test or an ANOVA, and it usually earns one sentence in a results section. That sentence still has to be formatted correctly, and the test has a quirk that trips people up: its verdict depends heavily on sample size. This guide covers the APA 7 format, a worked example, and how to read the result honestly.

What you need before you write a single word

  1. The W statistic, which runs from 0 to 1. Values close to 1 mean the data look normal.
  2. The exact p value.
  3. The sample size behind each test, because normality is checked within each group for a group comparison.
  4. Ideally, a Q-Q plot and the skewness and kurtosis, which show how large any departure is, not only whether it was detected.

What the result means

The null hypothesis is that the data come from a normal distribution. A non-significant result (p ≥ .05) means the test found no evidence against normality. That is not proof of normality, only an absence of evidence against it. A significant result (p < .05) means the sample departs from normality by more than chance would usually produce. It does not say how badly, or whether the departure is big enough to matter for your main test.

The APA 7 format template

Shapiro-Wilk tests indicated that [variable] did not deviate significantly from normality in either group, [Group 1]: W = .XX, p = .XXX; [Group 2]: W = .XX, p = .XXX.

All 53 templates, ready to paste with the italics set: the Rescue Vault, $27 →

Formatting rules reviewers actually check:

  • Italicise W and p.
  • No leading zero on W or p: write W = .96, not W = 0.96. W cannot exceed 1.
  • Report p exactly to two or three decimals; below .001, write p < .001.
  • Skewness and kurtosis can exceed 1 in either direction, so they keep the leading zero: skewness = 0.14.
  • Give a separate W and p for every group you are comparing, not one test on the pooled data.

A worked example

A lecturer compared final exam scores (out of 100) between 16 students who used a spaced-practice app and 16 who did not (fictional data), and wanted to check normality before running an independent-samples t-test.

GroupScores
App61, 61, 59, 74, 65, 60, 61, 67, 60, 66, 63, 74, 72, 52, 62, 69
No app51, 62, 58, 60, 54, 58, 60, 42, 47, 46, 70, 58, 58, 57, 50, 48

Running the checks on each group separately gives:

  • App group: M = 64.13, SD = 5.98, W = .94, p = .365, skewness = 0.14, excess kurtosis = -0.06.
  • No-app group: M = 54.94, SD = 7.16, W = .96, p = .629, skewness = 0.05, excess kurtosis = -0.02.
  • Q-Q plots: in both groups the points lie close to the reference line with no systematic curve. The no-app plot shows a short flat step where four students scored 58.

Neither test is significant, skewness and kurtosis are close to 0, and the plots agree, so the t-test goes ahead: t(30) = 3.94, p < .001, d = 1.39 (Levene's test for equal variances: F(1, 30) = 0.67, p = .420).

Written up in APA 7, that becomes:

Shapiro-Wilk tests indicated that exam scores did not deviate significantly from normality in either the app group, W = .94, p = .365, or the no-app group, W = .96, p = .629. Normal Q-Q plots showed no systematic departure from the reference line, and skewness and excess kurtosis were close to zero in both groups (all absolute values below 0.15). An independent-samples t-test showed that students who used the app scored higher (M = 64.13, SD = 5.98) than students who did not (M = 54.94, SD = 7.16), t(30) = 3.94, p < .001, d = 1.39.

In most papers the normality sentence belongs in the analysis plan or at the start of the results, and it can be shorter: "Shapiro-Wilk tests showed no significant departure from normality in either group (both ps > .36)."

Why sample size changes the verdict

The Shapiro-Wilk test answers "can I detect a departure?", and detectability grows with sample size. To show this, we drew values from one mildly skewed distribution, a gamma distribution with shape 20 (population skewness .45), using NumPy's default_rng(2028).

  • n = 2,000: W = .99, p < .001. A W that close to 1 is a very small departure, yet the test is highly significant.
  • n = 30 (the first 30 of those same values): W = .97, p = .672. The same skew goes undetected.

One draw could be luck, so we repeated it 10,000 times at each size. At n = 30 the test flagged the skew in 12% of samples. At n = 2,000 it flagged it in 100%. So the test does two things at once: in large samples it flags departures too small to affect a t-test or ANOVA, and in small samples, where normality matters most, it often misses a real one. That is why the W and p should always be read alongside a Q-Q plot and the skewness and kurtosis.

Mistakes reviewers catch

  • Testing the pooled data. For a group comparison, test each group (or, for regression and ANOVA, the residuals). Two normal groups with different means can look non-normal when pooled.
  • Writing W = 0.94. W cannot exceed 1, so drop the leading zero.
  • Treating p > .05 as proof of normality. It means no departure was detected, which at small n says little.
  • Switching methods on a significant result at large N without looking at the size of the departure. With thousands of observations, check the Q-Q plot first.
  • Writing p = .000. Report p < .001.
  • Reporting only "the data were normal" with no statistic. Give W and p for each group.

What to do when normality fails

If the departure is real and large enough to matter, you have three options:

  • Switch to a rank-based test. Use the Mann-Whitney U test instead of an independent t-test, the Wilcoxon signed-rank test instead of a paired t-test, or the Kruskal-Wallis test instead of a one-way ANOVA.
  • Transform the variable, for example with a log transformation for right-skewed data, then recheck.
  • Keep the parametric test when the samples are reasonably large and the departure is mild, and say why in one sentence.

State which you did and why. The assumptions guide covers the other checks (homogeneity of variance, independence, sphericity), and the test decision guide helps you pick the alternative.

Let KyroStat check normality for you

KyroStat runs the Shapiro-Wilk test within each group, draws the Q-Q plots, reports skewness and kurtosis, and switches to the non-parametric test automatically when a departure is real. It then hands you the finished APA 7 sentences and the underlying Python or R code. Upload your spreadsheet, and the assumption checks and the write-up are done in seconds.

Frequently asked questions

Should I use Shapiro-Wilk or Kolmogorov-Smirnov? For checking normality, Shapiro-Wilk is the more common choice and usually has more power. Report whichever you ran, by name.

My Shapiro-Wilk test is significant but my sample is large. What now? Look at the Q-Q plot and the skewness. With a large sample, a mild departure rarely affects a t-test or ANOVA, and the plot shows whether the departure is mild.

Do I need a separate test for each group? Yes. The t-test and ANOVA assume normality within each group, so report W and p for every group.

Does the Shapiro-Wilk result go in a table? Usually one sentence is enough. If you check many variables, a small table with n, W and p per group keeps the text short.

Which related guides might I need? Often these: Levene's test, Mauchly's test and descriptive statistics.

References

American Psychological Association. (2020). Publication manual of the American Psychological Association (7th ed.).

Shapiro, S. S., & Wilk, M. B. (1965). An analysis of variance test for normality (complete samples). Biometrika, 52(3/4), 591-611.

Ready to turn your spreadsheet into results?

Create an account and run your first analysis in minutes. No install, no statistics course required.