Written and maintained by CASRAI Editorial Board
Last updated
Cohen’s d and the classic independent-samples t-test both need a single number that summarizes “typical spread” across two groups that don’t necessarily have the same sample size or the same variance. That number is the pooled standard deviation (SDpooled) — a degrees-of-freedom-weighted combination of the two groups’ standard deviations, not a simple average of them. Getting the weighting wrong is a common, easy-to-miss error: it changes the denominator of Cohen’s d directly, which changes the effect size you report, sometimes enough to shift it into a different interpretive band.
The pooled standard deviation formula
For two independent groups with sample sizes n1 and n2, standard deviations SD1 and SD2, the pooled standard deviation is:
SDpooled = √[ ((n1 − 1)·SD12 + (n2 − 1)·SD22) / (n1 + n2 − 2) ]
Two things about that formula matter more than they look like they should:
- It pools variances, then takes one square root at the end — not the other way around. Variances are additive in a way standard deviations aren’t; averaging SD1 and SD2 directly, before squaring, is mathematically the wrong operation. The formula above always squares first, combines, then takes a single square root.
- The weights are n1 − 1 and n2 − 1 — each group’s degrees of freedom, not its raw sample size. The denominator, n1 + n2 − 2, is the pooled degrees of freedom for the whole comparison — the same df that shows up in the independent-samples t-test’s t-distribution. See degrees of freedom in statistics for why n − 1, not n, is the right unit of “information” a group contributes.
Because the weighting is by degrees of freedom, the larger group’s variance dominates the pooled result more than the smaller group’s does — which is exactly the behavior you want: a group with more observations gives a more reliable estimate of the population variance, so it should count for more.
Why you can’t just average the two SDs
A frequent shortcut — take (SD1 + SD2) / 2 and call it the pooled SD — looks harmless and is wrong in two compounding ways. First, it averages SDs rather than variances, which is not mathematically equivalent even when n1 = n2. Second, and more consequentially when the groups are different sizes, it gives the smaller, typically noisier group exactly the same weight as the larger group, instead of weighting by degrees of freedom. The worked example below shows how much that second error alone can move the answer.
Worked example: unequal group sizes, unequal variances, and Cohen’s d
Suppose two groups are compared on a continuous outcome:
| Group A | Group B | |
|---|---|---|
| n | 12 | 48 |
| Mean | 68.4 | 61.9 |
| SD | 14.2 | 8.6 |
The mean difference is 68.4 − 61.9 = 6.5. Computing the correct pooled SD:
SDpooled = √[ (11·14.22 + 47·8.62) / 58 ] = √[ (11·201.64 + 47·73.96) / 58 ] = √[ (2218.04 + 3476.12) / 58 ] = √98.18 ≈ 9.91
Cohen’s d using the correct pooled SD: d = 6.5 / 9.91 ≈ 0.66 — a medium effect by the conventional 0.2/0.5/0.8 bands (see how to interpret Cohen’s d for what those bands do and don’t mean by field). Notice that 9.91 sits much closer to Group B’s SD of 8.6 than to Group A’s SD of 14.2 — because Group B contributes 47 degrees of freedom against Group A’s 11, exactly the df-weighting the formula is designed to produce.
Now compare three denominators a researcher might reach for by mistake, using the same mean difference of 6.5 throughout:
| Denominator used | Value | Resulting “d” | Band |
|---|---|---|---|
| Correct pooled SD | 9.91 | 0.66 | Medium |
| Simple average of the two SDs, (14.2+8.6)/2 | 11.40 | 0.57 | Medium |
| Larger group’s SD only (Group B) | 8.60 | 0.76 | Medium, bordering large |
| Smaller group’s SD only (Group A) | 14.20 | 0.46 | Small |
Same two groups, same mean difference, four different numbers depending purely on which SD went in the denominator. Two of the three shortcuts land in the same interpretive band as the correct value here, more by coincidence of these particular numbers than by any guarantee — but using the smaller group’s own SD (a mistake that’s easy to make when a researcher instinctively reaches for “the more variable group’s spread” or simply the first SD in a spreadsheet) understates the effect enough to drop it out of the “medium” band entirely. The SD you pool from is not a cosmetic choice.
When pooling is — and isn’t — appropriate
The pooled-SD version of Cohen’s d and the classic (Student’s) independent-samples t-test both assume the two groups’ population variances are reasonably similar (homogeneity of variance). The worked example above is actually a useful illustration of a borderline case: Group A’s variance (14.22 = 201.64) is about 2.7 times Group B’s variance (8.62 = 73.96). As a rule of thumb, a variance ratio much beyond 2 is worth checking formally rather than assuming pooling is safe — see Levene’s test for the standard formal check, and run it before reporting a pooled-SD Cohen’s d whenever the two SDs look this different by eye.
When variances genuinely differ too much to pool:
- For hypothesis testing, Welch’s t-test replaces the pooled-variance t-test: it uses each group’s own variance separately, with an adjusted (usually non-integer) degrees of freedom via the Welch–Satterthwaite approximation, rather than forcing a single pooled df.
- For the effect size, Glass’s delta is the pooled-SD alternative: instead of a pooled SD, it divides the mean difference by one group’s SD alone — conventionally the control or reference group’s — on the logic that the control group’s variability is the more meaningful yardstick when an intervention itself may have changed the treatment group’s spread, not just its mean.
Neither alternative is “more correct” in general; each answers a slightly different question, and the choice belongs in the methods section alongside the variance-equality check that motivated it.
The same pooled SD, outside Cohen’s d
Pooled SD isn’t a Cohen’s-d-specific invention — it’s the same quantity the classic independent-samples t-test uses to build the standard error of the mean difference, and Cohen’s d is, in effect, that same t-test statistic rescaled to be independent of sample size. If you’ve already computed a pooled-variance t-test, you already have everything the pooled-SD formula above needs; there’s no separate calculation to redo.
Frequently asked questions
Is the pooled standard deviation the same as the average of the two group SDs?
No. It’s the square root of a degrees-of-freedom-weighted average of the two group variances, not an average of the SDs themselves. The two calculations coincide only in the special case of equal sample sizes and, even then, only approximately, because squaring and un-squaring in between still isn’t the same operation as averaging directly.
Does the weighting use sample size or degrees of freedom?
Degrees of freedom — n1 − 1 and n2 − 1, not n1 and n2 directly. In practice this only differs from a raw-n weighting by one observation per group, but it’s the technically correct weighting and the one every standard reference and statistics package implements.
My two groups are very different sizes. Should I still use pooled SD for Cohen’s d?
If the variances are reasonably similar, yes — that’s exactly the situation the degrees-of-freedom weighting handles correctly, as the worked example above shows. If the variances are also substantially different (check with Levene’s test), consider Glass’s delta or reporting Welch’s-test-based results instead, and say explicitly in the methods section which you used and why.
Can the pooled SD be smaller than the smaller group’s own SD, or larger than the larger group’s?
No — it always falls between the two group SDs, and closer to whichever group carries more degrees of freedom (usually the larger group). If a computed “pooled SD” falls outside that range, that’s a sign of an arithmetic error, most often the direct-average-of-SDs mistake described above.
Related: effect size, Cohen’s d calculation and interpretation, how to interpret Cohen’s d, standard deviation, calculating standard deviation in R, the t-test: one-sample, independent, and paired, degrees of freedom in statistics, Levene’s test in SPSS, and confidence intervals explained.








