How to Test for Normality: Shapiro-Wilk, Q-Q Plot and Skewness
Reviewed by Prof. Dr. Alexander Holtermann · Updated 16 October 2026 · 6 min read
Check normality with a histogram or Q-Q plot, skewness and kurtosis, and the Shapiro-Wilk test. With large samples, plots matter more than p-values.
Key takeaways
- Parametric tests (t-test, ANOVA, regression) assume normally distributed residuals or group values, not a normal distribution of the whole raw data set.
- Use three sources of evidence together: a plot (histogram, Q-Q plot), skewness and kurtosis, and a formal test such as Shapiro-Wilk.
- Shapiro-Wilk tests the null hypothesis “the data are normal”: p < .05 means a significant deviation; p ≥ .05 does not prove normality.
- Small samples rarely reach significance even when the data are clearly skewed; large samples flag trivial deviations. The test’s verdict depends on n.
- Thanks to the central limit theorem, t-tests and ANOVA are robust to moderate non-normality from about 30 cases per group. For small, clearly skewed samples use a rank-based test or a transformation.
Why normality matters (and what exactly must be normal)
Many classic procedures are derived under the assumption of a normal distribution. For a t-test, the values in each group should be approximately normal; for the paired t-test, the differences; for ANOVA, the values within each group; and for linear regression, the residuals. It is a common mistake to test the raw outcome of a regression or the pooled data of two groups: if two groups differ strongly, the pooled data can look bimodal even though each group is perfectly normal.
The good news is that these tests are fairly robust. The central limit theorem says that the sampling distribution of the mean approaches normality as n grows, even if the raw data are not normal. With about 30 or more cases per group, moderate skewness is rarely a problem. With small groups and strong skewness or outliers, it is.
Three ways to check normality
No single number can tell you whether your data are “normal enough”. Combine these three sources and describe briefly what you did.
| Method | What you look at | Strength | Weakness |
|---|---|---|---|
| Histogram | Bell shape, symmetry, gaps, outliers | Intuitive overview | Depends on bin width; hard to judge with small n |
| Q-Q plot | Points along the diagonal line | Best visual check; shows where the deviation is | Needs some practice to read |
| Skewness and kurtosis | Values close to 0 (excess kurtosis) | Quantifies the shape | Unstable in small samples |
| Shapiro-Wilk test | p-value of the test | Most powerful common normality test | Depends heavily on sample size |
| Kolmogorov-Smirnov test (Lilliefors) | p-value of the test | Well known | Less powerful than Shapiro-Wilk; not recommended as first choice |
Worked example: quiz completion times
Twenty students record how many minutes they need for an online quiz:
4, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 10, 11, 12, 14, 17, 21, 28
The descriptive statistics tool returns M = 10.00, Mdn = 8.00, SD = 6.01 and skewness = 1.84. Mean above median and a long tail of slow students point to right skew.
| Check | Result | Interpretation |
|---|---|---|
| Mean vs. median | 10.00 vs. 8.00 | Mean pulled up by slow students |
| Skewness | 1.84 | Clearly right-skewed (> 1) |
| z for skewness | 1.84 / 0.51 = 3.59 | Larger than 1.96, so significant skew |
| Excess kurtosis | 3.44 | Heavy tails, peaked |
| Shapiro-Wilk | W = 0.80, p < .001 | Significant deviation from normality |
| After log transformation | W = 0.95, p = .408; skewness = 0.76 | No significant deviation |
The sample-size trap
A normality test is a significance test like any other, and its power depends on n. That creates two opposite problems.
- Small samples: The test often misses clear deviations. The study-hours data 4, 6, 7, 8, 8, 9, 10, 11, 12, 13, 15, 25 (n = 12) are visibly right-skewed (skewness = 1.70), yet Shapiro-Wilk gives W = 0.86, p = .053, not significant. A non-significant result is not proof of normality.
- Large samples: With several hundred cases, even a tiny, irrelevant deviation becomes significant. At that size the t-test is robust anyway, so a significant Shapiro-Wilk result is no reason to panic.
- Consequence: Base your decision on plots and skewness first, and use the test as supporting evidence, not as an automatic switch.
Reading skewness, kurtosis and the Q-Q plot
Skewness describes asymmetry: 0 is symmetric, positive values mean a longer right tail, negative values a longer left tail. Kurtosis, as reported by most software, is excess kurtosis: 0 for a normal distribution, positive for heavy tails, negative for light tails. Common rules of thumb: |skewness| < 1 and |excess kurtosis| < 2 are usually unproblematic for t-tests and ANOVA; some authors accept up to 2 and 7 in large samples.
In a Q-Q plot, each observed value is plotted against the value expected under a normal distribution. Points on the diagonal mean normality. A curve bending upward at the right end indicates right skew; an S-shape indicates heavy or light tails; single points far from the line are outliers.
What to do if your data are not normal
You have several reasonable options. Choose one, justify it and stick to it; do not try all of them and report the one with the smallest p-value.
- Keep the parametric test if each group has about 30 or more cases and the deviation is moderate. Report that you checked.
- Use a robust variant: the Welch t-test handles unequal variances; bootstrapped confidence intervals need no normality assumption.
- Switch to a rank-based test: Mann-Whitney U instead of the independent t-test, Wilcoxon signed-rank instead of the paired t-test, Kruskal-Wallis instead of one-way ANOVA, Spearman instead of Pearson.
- Transform the data: a log or square-root transformation often normalizes right-skewed variables such as times or counts. Interpretation then refers to the transformed scale.
- Check outliers: a single data entry error can create apparent non-normality.
How to report a normality check
Keep it short. Name the method, the key statistics and your decision. APA does not require a formal normality test, but examiners like to see that you thought about assumptions.
Frequently asked questions
Which normality test should I use?
The Shapiro-Wilk test is the most powerful of the common tests and the usual recommendation for samples up to a few thousand. Always combine it with a histogram or Q-Q plot.
How do I interpret the Shapiro-Wilk p-value?
If p < .05, the data deviate significantly from a normal distribution. If p ≥ .05, there is no significant deviation, which is not the same as proof of normality, especially in small samples.
Do I need normally distributed data for a t-test?
The values in each group (for a paired test, the differences) should be roughly normal. From about 30 cases per group the t-test is robust to moderate deviations because of the central limit theorem.
What skewness and kurtosis values are acceptable?
A common rule of thumb is |skewness| < 1 and |excess kurtosis| < 2 for parametric tests. Some textbooks accept up to 2 for skewness in larger samples. Always look at a plot as well.
Should I test the normality of the dependent variable in regression?
No, the assumption concerns the residuals. Fit the model first, then check a Q-Q plot or histogram of the residuals.
How do I test for normality in SPSS, R or JASP?
SPSS: Analyze → Descriptive Statistics → Explore → Plots → Normality plots with tests (Shapiro-Wilk and Q-Q plot). R: shapiro.test(x) and qqnorm(x). JASP: Descriptives → tick Shapiro-Wilk and Q-Q plots, or use the assumption checks within each test.
Sources and further reading
- Shapiro, S. S., & Wilk, M. B. (1965). An analysis of variance test for normality (complete samples). Biometrika, 52(3/4), 591–611.
- Howell, D. C. (2013). Statistical Methods for Psychology (8th ed.). Wadsworth Cengage Learning.
- Gravetter, F. J., & Wallnau, L. B. (2017). Statistics for the Behavioral Sciences (10th ed.). Cengage.
Your university’s examination regulations and style guide always take precedence.
Related articles
- t-testA t-test checks whether two means differ significantly: two independent groups, two paired measurements, or one mean against a fixed value.
- Mann-Whitney U testThe Mann-Whitney U test compares two independent groups using ranks. It is the non-parametric alternative to the independent-samples t-test.
- Descriptive statisticsDescriptive statistics summarize your data with numbers, tables and charts: sample size, central tendency (mean, median) and spread (SD, IQR).
- Choosing a statistical testYour research question, the level of measurement of your outcome, the number of groups and whether samples are paired decide which statistical test fits.
- Linear regressionLinear regression predicts a metric outcome from one or more predictors with a straight line: ŷ = a + b · x. R² shows how much variance it explains.
- Statistics software comparedSPSS and Stata are menu- or command-based commercial packages, R and Python are free code, JASP and jamovi are free point-and-click. Choose by field and task.