Have you ever run a t-test or an ANOVA, only for a reviewer — or your supervisor — to ask, “But did you check normality first?” It is one of the most common questions in quantitative research, and one of the most confusing for beginners. The good news is that checking normality is not difficult once you know what to look for. In this guide, you will learn how to check normality of data step by step, using visual checks, the Shapiro-Wilk test, and Q-Q plots, with a worked example and clear advice on what to do when your data are not normal.
Why Normality Matters in Research
Many of the statistical tests students use every day — the independent samples t-test, paired t-test, one-way ANOVA, Pearson correlation, and linear regression — assume that the data, or more precisely the residuals, follow a normal distribution. A normal distribution is the familiar bell-shaped curve: most scores cluster around the middle, and fewer scores fall far above or below it.
When this assumption is seriously violated, the results of these tests can become misleading. P-values may be too small or too large, and confidence intervals may be off. That does not mean a small departure from normality ruins your analysis — parametric tests are fairly robust, especially with larger samples — but it does mean you should check, report what you found, and choose your test accordingly. Checking normality is part of doing honest, defensible research, not just a box to tick for your examiner.
What Does a Normal Distribution Look Like?
Before running any test, it helps to know what “normal” actually looks like. In a perfectly normal distribution, the mean, median, and mode are all the same, the curve is symmetrical (not leaning left or right), and about 68 percent of scores fall within one standard deviation of the mean, with about 95 percent within two standard deviations.
Real data are rarely perfectly normal, and they do not need to be. You are looking for approximate normality: a roughly symmetrical, bell-shaped pattern without extreme skew or wild outliers. The checks below help you judge that, rather than chasing perfection.
Step 1: Look at Your Data with a Histogram
Always start with a picture. A histogram groups your scores into intervals and shows how many scores fall in each one. If the bars form a roughly bell-shaped mound, that is a good sign. If the bars pile up on one side with a long tail stretching to the other, your data are skewed.
In SPSS, go to Graphs, then Legacy Dialogs, then Histogram, and tick “Display normal curve” to overlay the bell curve for comparison. In R, the hist() function gives you a quick histogram, and in Excel you can use the histogram tool under Data Analysis. The histogram is a rough guide, not a verdict — with small samples it can look lumpy even when the underlying distribution is normal — so always combine it with the next two checks.
Step 2: Read a Q-Q Plot
A Q-Q plot, short for quantile-quantile plot, compares your data against what a perfectly normal distribution would look like. Each point represents one of your scores. If your data are normal, the points fall close to the straight diagonal line. If they curve away from the line, especially at the ends, that signals a departure from normality.
Here is how to read the common patterns. Points that form an S-shape around the line suggest skew. Points that curve upward at both ends, or bend away from the line at the extremes, suggest heavy tails or outliers. Points that stay close to the line through the middle but drift at the very ends are common and usually nothing to worry about on their own.
In SPSS, you can get a Q-Q plot from Analyze, then Descriptive Statistics, then Explore, by ticking “Normality plots with tests”. In R, qqnorm() followed by qqline() draws the plot. Many researchers consider the Q-Q plot the single most useful normality check, because it shows you where and how the data depart from normal, not just whether they do.
Step 3: Run the Shapiro-Wilk Test
The Shapiro-Wilk test is a formal statistical test of normality. Its null hypothesis is that the data come from a normal distribution. A small p-value (usually below 0.05) means you reject that idea — the data differ significantly from normal. A larger p-value means you do not have enough evidence to say the data are non-normal.
The Shapiro-Wilk test is generally preferred for smaller samples, roughly up to 50 observations, and is widely recommended over the older Kolmogorov-Smirnov test for this purpose. With very large samples, however, it becomes extremely sensitive: even a trivial departure from normality can produce a significant result. That is why you should never rely on the Shapiro-Wilk test alone. Always interpret it alongside the histogram and the Q-Q plot.
In SPSS, the Shapiro-Wilk result appears in the “Tests of Normality” table when you run Explore with normality plots selected. In R, shapiro.test() runs the test on a single variable. Report both the test statistic (W) and the p-value in your results section, for example: “The Shapiro-Wilk test indicated that the scores did not depart significantly from normality, W = 0.96, p = .58” — using your own actual values, of course.
Step 4: Check Skewness and Kurtosis
Two more numbers help you describe the shape of your distribution. Skewness measures asymmetry. A skewness value near zero means the distribution is roughly symmetrical. Positive skewness means a long tail to the right; negative skewness means a long tail to the left. As a rough rule of thumb, skewness between -1 and +1 is usually considered acceptable for most parametric tests, although some textbooks allow up to -2 to +2.
Kurtosis measures how heavy the tails are and how peaked the centre is, compared with a normal distribution. Excess kurtosis near zero is normal. Positive values mean heavier tails and more outliers; negative values mean lighter tails and a flatter shape. Again, values roughly between -2 and +2 are often treated as acceptable, but the exact cut-off matters less than the overall picture from all your checks combined.
Worked Example: Checking Exam Scores for Normality
Let us walk through a small, illustrative example. Imagine you collected test scores from 20 students in a research methods class. The scores (out of 100) are: 62, 68, 71, 74, 76, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 90, 91, 93, 95, and 98. This is a made-up teaching example, not real study data, but it shows the process exactly as you would follow it.
First, the histogram shows a roughly mound-shaped pattern, with most scores clustered in the 75 to 90 range and no dramatic pile-up at either end. Next, the Q-Q plot shows the points hugging the diagonal line closely, with only slight drift at the lowest score. The Shapiro-Wilk test gives W = 0.96 with p = .58, well above 0.05, so we have no evidence of non-normality. Finally, skewness is close to zero and kurtosis is modest. Putting all four checks together, the conclusion is clear: these scores are approximately normal, and a parametric test such as a t-test would be appropriate.
Now imagine the opposite pattern: most students scored very highly, with a few very low scores dragging a long left tail. The histogram would lean right, the Q-Q plot would bend away from the line at the low end, and the Shapiro-Wilk test would likely be significant. That is the point at which you need a plan B, covered below.
What to Do When Your Data Are Not Normal
Finding non-normal data is not a disaster. Here are your options, in the order most researchers try them.
First, check for data-entry errors and genuine outliers. A single mistyped value, such as 999 instead of 99, can wreck an otherwise normal distribution. Fix errors, and think carefully before removing outliers — only remove a value if you have a clear, reportable reason, not simply because it is inconvenient.
Second, consider a transformation. Taking the logarithm or square root of skewed data can sometimes pull it closer to normal. This is common with reaction times, income, and other naturally skewed variables. If you transform, report that you did so and interpret the results on the transformed scale.
Third, switch to a non-parametric test. These tests do not assume normality. Use the Mann-Whitney U test instead of the independent samples t-test, the Wilcoxon signed-rank test instead of the paired t-test, the Kruskal-Wallis test instead of one-way ANOVA, and Spearman correlation instead of Pearson. You lose a little statistical power, but you gain a result you can defend.
Fourth, if your sample is large, remember the central limit theorem. With large samples, the sampling distribution of the mean becomes approximately normal even if the raw data are not, which is one reason parametric tests often hold up well with bigger datasets. Still, report your normality checks honestly rather than silently assuming all is well.
Common Mistakes to Avoid
One: testing normality on the wrong thing. For t-tests and ANOVA, what matters is the distribution within each group, or of the residuals, not the combined lump of all your data pooled together. Check each group separately.
Two: relying on a single test. A significant Shapiro-Wilk result with a large sample, or a non-significant result with a tiny sample, can both mislead you. Always use visual checks plus a formal test.
Three: confusing normality with other assumptions. Normality is only one assumption. You also need to check homogeneity of variance, independence of observations, and linearity where relevant. Passing a normality check does not mean every assumption is met.
Four: forcing normality by deleting data. Deleting inconvenient scores to make a test non-significant is not good practice and will not survive a careful examiner or reviewer. Transform or switch tests instead.
Five: never reporting the check at all. Even one sentence in your methods or results — stating which test you used and what it showed — strengthens your work and answers the examiner’s question before they ask it.
Frequently Asked Questions
How large a sample do I need to check normality? You can check normality with any sample size, but the tools work differently. With very small samples (under 20), formal tests have little power, so lean heavily on the histogram and Q-Q plot. With large samples (over 200), the Shapiro-Wilk test may flag trivial departures, so lean on the visual checks and on skewness and kurtosis values.
Do I need to check normality for every variable? Check it for the variables that go into parametric tests — your outcome variables and, where relevant, the residuals from your model. You do not need a normality test for categorical variables such as gender or group membership.
What if only one group is non-normal? That is common. You can transform that variable, or use a non-parametric test for the comparison, and explain your choice in one sentence. Consistency and transparency matter more than forcing every group through the same test.
Is the Kolmogorov-Smirnov test a good alternative to Shapiro-Wilk? It is available in most software, but it is generally less powerful than Shapiro-Wilk, especially with smaller samples, and it is sensitive to how the test is set up. Most methodologists recommend Shapiro-Wilk for samples up to about 50 and visual checks plus skewness and kurtosis for larger ones.
Can I just use a non-parametric test and skip the check? You can, and for clearly skewed or ordinal data it is often the right call. But if your data are actually normal, a parametric test is more powerful. Checking first lets you choose the strongest defensible test rather than defaulting out of caution.
Final Thoughts
Checking normality is a habit, not a hurdle. Look at a histogram, read a Q-Q plot, run the Shapiro-Wilk test, and glance at skewness and kurtosis — then make a reasoned choice. Most of the time, your data will be close enough to normal for a parametric test. When they are not, you have honest options: clean, transform, or switch to a non-parametric alternative. Either way, reporting the check shows your reader that you took your analysis seriously, and that is exactly the impression a good thesis or paper should leave.