Why Checking Normality Matters Before You Run a Test
Almost every parametric test in SPSS — the independent-samples t-test, one-way ANOVA, Pearson correlation, linear regression — comes with a small-print condition: your data should be approximately normally distributed. Skip that check and you risk reporting a p-value from a test whose assumptions your data never met.
The good news is that SPSS makes the normality check quick. Two tools do most of the work: the Shapiro-Wilk test, a formal statistical test, and the Q-Q plot, a visual check that shows you exactly how your data departs from normal. Used together, they give you a far more reliable answer than either one alone.
What “Normal” Actually Means Here
A normal distribution is the familiar bell curve: most values cluster around the mean, with fewer and fewer values as you move into the tails, symmetrically on both sides. When we test for normality, we are asking whether the sample we collected plausibly came from a normally distributed population.
Two points matter before you start:
- You check normality within groups, not on the whole dataset at once. If you plan a t-test comparing two groups, check the distribution of scores inside each group separately. A mixture of two different group means can look non-normal even when each group is perfectly normal.
- Normality applies to the scores or the residuals, depending on the test. For a t-test or ANOVA, check the dependent variable within each group. For regression, check the residuals. The mechanics in SPSS are the same either way.
Step 1: Run the Shapiro-Wilk Test with the Explore Dialog
The fastest route to both the Shapiro-Wilk test and a Q-Q plot is the Explore dialog, which also gives you skewness, kurtosis, and a histogram in one pass.
- Click Analyze > Descriptive Statistics > Explore.
- Move your continuous variable (for example, ExamScore) into the Dependent List box.
- If you are comparing groups, move your grouping variable (for example, TeachingMethod) into the Factor List box. SPSS will then produce separate normality results for each group.
- Click Plots. Under Boxplots, leave Factor levels together selected. Under Descriptive, tick Histogram. Under Spread vs Level, leave None selected. Most importantly, tick Normality plots with tests.
- Click Continue, then OK.
SPSS produces several tables. The one you want is titled Tests of Normality. It has two rows of results for your variable: Kolmogorov-Smirnov and Shapiro-Wilk.
How to Read the Tests of Normality Table
Each test gives you a statistic and a significance value (Sig.). The logic is the same for both:
- Sig. > .05: the test did not find a significant departure from normality. You can proceed as if the data is approximately normal.
- Sig. < .05: the data departs significantly from a normal distribution. Your assumption is violated, at least formally.
For the Shapiro-Wilk test, also look at the W statistic itself. W ranges from 0 to 1, and values closer to 1 mean the data looks more normal. A W of .97 with a non-significant p-value is a comfortable result; a W of .82 with p = .001 is not.
Shapiro-Wilk or Kolmogorov-Smirnov — Which One?
SPSS reports both, so which should you trust? The standard guidance is:
- Shapiro-Wilk: the better choice for small to moderate samples, roughly up to n = 50 per group, and it remains valid up to n = 2,000 in SPSS. It is more powerful, meaning it is better at detecting real departures from normality.
- Kolmogorov-Smirnov (with Lilliefors correction): the version SPSS reports is corrected for the fact that the mean and standard deviation are estimated from your sample. It is generally less powerful than Shapiro-Wilk and mostly useful for larger samples.
In practice, most researchers report the Shapiro-Wilk result and mention the Q-Q plot as visual support. If the two tests disagree, trust the Shapiro-Wilk result and the plot.
Step 2: Read the Q-Q Plot
The Explore dialog’s Normality plots with tests option produces a Normal Q-Q Plot for your variable. You can also get one directly from Analyze > Descriptive Statistics > Q-Q Plots, which gives you more control over the distribution you compare against.
In a Q-Q plot, each dot is one of your observed values plotted against the value you would expect if the data were perfectly normal. Interpretation is visual and simple:
- Dots sitting close to the straight diagonal line: the data is approximately normal. Small wiggles around the line are fine.
- Dots curving away from the line in an S-shape: the distribution is skewed. Points bending above the line at the low end and below it at the high end suggest a left (negative) skew; the reverse pattern suggests a right (positive) skew.
- Dots pulling away from the line at the ends only: the tails are heavier or lighter than normal — your data has more extreme values than a normal distribution would predict, or fewer.
- A clear curve or a step pattern: the data is clearly not normal, whatever the formal test says.
The Q-Q plot is your reality check on the Shapiro-Wilk test. Formal tests are sensitive to sample size: with a very large sample, Shapiro-Wilk can return a significant result for a trivially small departure from normality, while with a tiny sample it can miss a big one. The plot tells you whether the departure is big enough to matter. As a backup, the Explore Descriptives table reports skewness and kurtosis: divide each by its standard error, and an absolute z-value above 1.96 (small samples) or 3.29 (larger samples) flags significant skew or kurtosis.
SPSS Syntax for the Normality Check
If you prefer syntax, or want a reproducible record of the check, paste the following into a syntax window (File > New > Syntax) and run it. Replace ExamScore with your variable name and TeachingMethod with your grouping variable — or delete the BY line if you have no groups.
EXAMINE VARIABLES=ExamScore BY TeachingMethod /PLOT NPPLOT /STATISTICS DESCRIPTIVES /CINTERVAL 95 /MISSING LISTWISE /NOTOTAL.
The /PLOT NPPLOT subcommand is the key line: it requests the normality plots with tests, including the Q-Q plot and the Tests of Normality table. To get a Q-Q plot on its own, use:
PPLOT /VARIABLES=ExamScore /NOLOG /NOSTANDARDIZE /TYPE=Q-Q /FRACTION=BLOM /TIES=MEAN /DIST=NORMAL.
Putting It Together: A Decision Rule
Here is a practical way to combine the three pieces of evidence:
- Shapiro-Wilk p > .05 and Q-Q points hug the line: normality is fine. Run your parametric test.
- Shapiro-Wilk p < .05 but the Q-Q plot looks close to normal and n is large: the test is probably over-sensitive. Judge the size of the departure, not just the p-value — many parametric tests are robust to mild non-normality with larger samples.
- Shapiro-Wilk p < .05, the Q-Q plot curves clearly, and the distribution is visibly skewed: normality is genuinely violated. Move to the next section.
- Very small sample (n under 20 per group): the Shapiro-Wilk test has little power, so lean on the Q-Q plot and be cautious about claiming normality either way.
What to Do When Your Data Is Not Normal
A failed normality check is not a dead end. You have three standard options:
- Transform the data. A log, square-root, or reciprocal transformation (Transform > Compute Variable) can pull a skewed distribution toward normal. Re-check normality after transforming.
- Use a nonparametric alternative. The Mann-Whitney U test replaces the independent-samples t-test, the Wilcoxon signed-rank test replaces the paired t-test, Kruskal-Wallis replaces one-way ANOVA, and Spearman correlation replaces Pearson. Each is covered in its own tutorial on this site.
- Proceed anyway, with caution. The t-test and ANOVA are fairly robust to moderate violations when group sizes are reasonably large and roughly equal. If you do this, say so in your write-up and report the normality check you ran.
What you should not do is run the test, get a significant result, and only then check normality as a way to explain away an inconvenient finding. Check first, decide, then run the analysis.
Reporting in APA Style (7th ed.)
APA style has no fixed sentence for a normality check, but readers expect to see that you ran one and what you found. Report the test, the statistic, and the p-value for each group, and mention the visual check. For example:
Normality was assessed using the Shapiro-Wilk test and inspection of Q-Q plots. Exam scores were approximately normally distributed in both the lecture group (W = .97, p = .42) and the active-learning group (W = .96, p = .31), with Q-Q plots showing points falling close to the diagonal line. Parametric tests were therefore used.
If the assumption was violated, say what you did about it:
Shapiro-Wilk tests indicated a significant departure from normality for exam scores in the lecture group (W = .88, p = .003), and the Q-Q plot showed a pronounced right skew. A Mann-Whitney U test was therefore used instead of an independent-samples t-test.
Two details to get right: use the exact p-value when SPSS gives one (p = .003), not a threshold, and never write p = .000 — if SPSS prints .000, report it as p < .001. Report the Shapiro-Wilk statistic as W, in italics.
Key Takeaways
- Check normality within each group, before running your parametric test — not after.
- Use the Explore dialog (Analyze > Descriptive Statistics > Explore) with “Normality plots with tests” ticked to get the Shapiro-Wilk test, the Q-Q plot, skewness, and kurtosis in one run.
- Shapiro-Wilk p > .05 means no significant departure from normality; p < .05 means the data departs significantly.
- Always look at the Q-Q plot: points close to the diagonal line mean approximately normal data; S-shaped curves mean skew; points pulling away at the ends mean heavy or light tails.
- Formal tests are sensitive to sample size, so judge the size of the departure on the plot, not the p-value alone.
- If normality fails, transform the data, switch to a nonparametric test, or proceed with a stated justification — and report the check in your write-up.
FAQs
Does the Shapiro-Wilk test work for large samples?
SPSS runs Shapiro-Wilk for samples up to n = 2,000, but the test becomes very sensitive as samples grow. With several hundred cases, even trivial departures from normality can be significant. For large samples, lean on the Q-Q plot and on skewness and kurtosis, and remember that the t-test and ANOVA are robust to mild non-normality when samples are large.
What if Shapiro-Wilk is significant but the Q-Q plot looks fine?
Trust the plot. A significant Shapiro-Wilk result with points hugging the diagonal line usually means the test detected a small departure that is too minor to matter, especially with a large sample. Report both, note the plot, and proceed with the parametric test.
Should I check normality on the raw scores or the residuals?
It depends on the test. For a t-test or ANOVA, check the dependent variable within each group. For regression, check the residuals, which you can save from the Linear Regression dialog (Save > Residuals > Unstandardized) and then test with the same Explore procedure.
Can I use a histogram instead of a Q-Q plot?
You can, and the Explore dialog gives you one for free, but a histogram is harder to judge: its shape changes with the number of bins, and small samples make it lumpy. The Q-Q plot is the more reliable visual check because it compares every value against what normality predicts.
What sample size is too small for the Shapiro-Wilk test?
Shapiro-Wilk needs at least 3 cases to run. Below about n = 20 per group it has low power, meaning it may fail to detect real non-normality, so combine it with the Q-Q plot and be cautious. With fewer than 10 cases per group, consider a nonparametric test from the start rather than relying on a normality check.
Need this done on your data? Get a free quote → /services/