Answer

What does a normal Q-Q plot's shape actually tell you?

Inspired by a question on Cross Validated ·

normalitydistributionsqq plot

The short answer

A Q-Q plot lines up your sorted data against the values a normal distribution would be expected to produce. Points hugging the diagonal line mean the data look normal. A consistent bow away from the line at both ends (same direction) points to skew. An S-shape, where one end curves above the line and the other below, points to heavier or lighter tails than normal. With a small sample, treat any of these as a hint worth checking, not a firm conclusion.

What the plot is actually comparing

A normal Q-Q plot puts your sorted data on one axis and the values a normal distribution would produce at the same percentiles on the other. If your data really came from a normal distribution, each point would land close to the diagonal reference line, since your sample quantiles and the theoretical quantiles would roughly agree at every percentile.

The plot is more informative than it looks at first, because the pattern of how points drift from the line describes the type of departure from normality, not just its presence.

Reading the shape of the departure

Why this beats a single normality test

A formal normality test (Shapiro-Wilk, for example) gives you one number and a yes/no-flavored answer. The Q-Q plot gives you a diagnosis: it shows where the data disagree with normality and in what way, which is what you need to decide whether to transform the variable, switch to a different model, or use a method that doesn't assume normality at all.

With very few observations, both tools struggle for the same reason: sampling noise. A handful of points can produce a wobbly line even when the underlying distribution is normal, and a formal test has little power to detect real departures. Use the plot as one piece of evidence, and be cautious about strong claims from a sample of, say, twenty or thirty points.

What you can reasonably conclude

If your plot shows a clear, consistent bow in one direction, it is reasonable to describe the data as apparently skewed and to consider a transformation (like a log for right skew) or a model that does not assume normality, such as a method based on ranks or a generalized linear model with a suitable distribution.

It is not reasonable to read a precise skewness value or a specific alternative distribution off the plot by eye, or to treat a small wobble in a tiny sample as strong proof of anything. The plot tells you the shape of the disagreement; confirming it, and deciding what to do about it, takes more than a visual read.

See the two shapes in R

This simulates a right-skewed sample and a heavy-tailed sample, and compares their Q-Q plot shapes against a normal sample. The skewness statistic below is a rough summary; it is included to show the direction of the effect, not as a precise estimate.

set.seed(1)
n <- 500

normal_data  <- rnorm(n)              # well-behaved: hugs the line
right_skew   <- rgamma(n, shape = 2)  # right-skewed: bows one way at both ends
heavy_tailed <- rt(n, df = 3)         # heavy-tailed: S-shape, ends curve apart

skewness <- function(x) {
  z <- (x - mean(x)) / sd(x)
  mean(z^3)
}

round(sapply(list(normal = normal_data, right_skew = right_skew,
                   heavy_tailed = heavy_tailed), skewness), 2)
# normal ~0, right_skew clearly positive, heavy_tailed noisy around 0

qqnorm(right_skew, main = "Right-skewed data"); qqline(right_skew)
qqnorm(heavy_tailed, main = "Heavy-tailed data"); qqline(heavy_tailed)

From one seeded run of this code, the skewness figures were approximately 0.04 for the normal sample, 1.46 for the right-skewed sample, and -0.76 for the heavy-tailed sample. That last number is a good illustration of the small-sample caution above: the true distribution behind heavy_tailed is symmetric, but a handful of extreme values pulled the sample skewness statistic noticeably away from zero. The Q-Q plot's S-shape, not this single number, is the more trustworthy signal that the tails are heavy.

Related tools and guides

More answered questions

Working with your own data?

General answers only go so far. Send us your situation and we'll reply by email within two business days.

Ask your question

Written by AskStats with AI assistance. This is general information, not advice for your specific data or study. When the results matter, check your approach with a qualified statistician.