Correlation Comparison Calculator
Work with correlations from their summary values — no raw data needed. Get a confidence interval for one r, test whether two correlations from different samples differ (Fisher's z, with a confidence interval for the difference), compare two correlations from the same people (Steiger's Z, Williams's t, Hotelling's t), or pool several studies. Free, no sign-up.
Enter valid values: each r must lie strictly between −1 and 1 and each n must be greater than 3.
How to Use the Correlation Comparison Calculator
- 1. Pick the question. A confidence interval for one r; a comparison of two correlations from different groups (independent); a comparison of two correlations measured on the same people that share a variable (dependent); or several studies to pool.
- 2. Enter the correlations and sample sizes. Each r must lie strictly between −1 and 1 and each n must exceed 3. For dependent correlations you also need the correlation between the two non-shared variables.
- 3. Set the confidence level and the direction of the test. The default is a 95% interval and a two-sided test. Choose a one-sided test only if you fixed the direction in advance.
- 4. Read the result and the working. An APA-style line is ready to copy, and the steps are shown with your numbers.
Which Test for Which Situation?
| Your situation | Use | Method |
|---|---|---|
| One sample, want a margin of error for r | Interval for one r | Fisher z |
| r from group A vs. r from group B (different people) | Two independent correlations | Fisher z test; Zou's interval for the difference |
| How well X predicts Y vs. how well W predicts Y, in one sample | Two dependent, overlapping correlations | Steiger's Z (also Williams's t, Hotelling's t) |
| Several studies of the same relationship | Several correlations | Q test for heterogeneity; pooled r |
Why Fisher's z?
The sampling distribution of r is skewed whenever the true correlation is not zero, and its spread depends on that unknown value. Fisher's transformation, z = atanh(r) = ½ ln((1 + r) ÷ (1 − r)), fixes both problems: z is close to normal with a standard error of 1 ÷ √(n − 3) regardless of ρ. So you build the interval on the z scale and transform back with tanh, which keeps it inside −1 to 1 and makes it asymmetric around r, as it should be.
Interval
tanh(atanh r ± z* ÷ √(n − 3))
Two independent r
z = (atanh r₁ − atanh r₂) ÷ √(1 ÷ (n₁ − 3) + 1 ÷ (n₂ − 3))
Worked Examples
- One r. r = .45 from 40 cases gives a 95% interval of 0.1611 to 0.6679 — wide, as 40 cases always are. Tested against ρ₀ = .2, z = 1.7151, p = .0863: not distinguishable from .2.
- Independent. A reading–maths correlation of .62 in 85 younger students and .38 in 110 older ones: z = 2.2140, p = .0268. The difference of .24 has a 95% interval (Zou) of 0.0273 to 0.4478 — significant, but the true gap could be small.
- Dependent. In one sample of 100, predictor 1 correlates .55 with an outcome and predictor 2 correlates .35, and the two predictors correlate .40 with each other. Steiger's Z = 2.1129, p = .0346; Williams's t(97) = 2.1448, p = .0345; Hotelling's t(97) = 2.1848, p = .0313. The two predictors differ significantly, though with n = 100 the true difference could still be modest.
- Several. Four studies — .30 (n = 50), .45 (80), .52 (65), .20 (120): Q(3) = 7.0961, p = .0689, I² = 58%, pooled r = .3517, 95% CI 0.2494 to 0.4462. The studies are suggestive of heterogeneity but not conclusively so.
Why Dependent Correlations Need Their Own Test
When two correlations share a variable and come from the same people, their sampling errors are correlated: a sample in which X looks unusually strong also tends to make W look strong if X and W are related. Treating them as independent ignores that covariance, and the test can be too conservative or too liberal depending on r_kh. Steiger's Z, a refinement of the Dunn–Clark test, estimates the covariance from the correlation among the predictors. Williams's t is the classic t-based alternative and performs well in small samples; Hotelling's, the oldest, runs slightly liberal. The calculator reports all three so you can see whether they agree. It does not cover non-overlapping dependent correlations, which need all six correlations among four variables.
Frequently Asked Questions
- How do I compare two correlation coefficients?
- If they come from different groups of people, convert each to Fisher's z and divide the difference by √(1 ÷ (n₁ − 3) + 1 ÷ (n₂ − 3)); compare the result to the standard normal distribution. If they come from the same people and share a variable, use a dependent-correlation test such as Steiger's, which needs the third correlation too.
- What is the difference between independent and dependent correlations?
- Independent correlations come from separate samples, so their errors are unrelated. Dependent correlations are measured on the same participants, so they are statistically linked. The overlapping case — one variable correlated with two others — is the common one, and ignoring the dependence gives a wrong p-value.
- How do I get a confidence interval for a correlation?
- Transform r to z = atanh(r), add and subtract the critical value times 1 ÷ √(n − 3), and transform back with tanh. That is what this calculator does, and it is the interval R's cor.test reports. The interval is not symmetrical around r, and it narrows with n.
- Why is it n − 3 and not n − 2?
- The t test for a correlation uses n − 2 degrees of freedom because two parameters are estimated. Fisher's z has a different, approximate variance, 1 ÷ (n − 3), derived from the large-sample behaviour of the transformed coefficient. The two are separate results, not a contradiction.
- Which dependent-correlation test should I use?
- Steiger's Z and Williams's t both hold their error rate well; the choice rarely changes the conclusion, and the calculator shows both. Prefer Williams's t for small samples. Hotelling's t is shown for completeness, but its inflated error rate in small samples is well documented.
- Can I test whether correlations differ between groups using a regression instead?
- Yes. Standardise both variables, then test the group-by-predictor interaction in a regression on the pooled data. The result is similar to Fisher's z for independent groups, and it extends to covariates and more than two groups, but needs the raw data rather than summary statistics.