Each button loads real data and picks the matching test | just press Run Analysis to see the result. Explore how the output changes across tests and formats.
t-tests
ANOVA
Correlation
Formats & robustness
Statistical Test Calculator
Paste from Excel or upload a CSV. Both wide (one column per group) and long/tidy (a value column plus a group-label column) layouts are supported, the format is auto-detected, and you can override it below.
1. Input Data
Wide = each column is a group. Long = one value column split by a label column.
0 Rows • 0 Variables
2. Configure Test
Hold Ctrl/Cmd (or Shift) to select multiple columns. Each selected column is treated as one group.
3. Results
T-Statistic--
P-Value--
Effect size--
Mathematical Theory
Method & References
What each test computes, and how to read it
Every statistic is computed in your browser from its standard definition; the distribution tail probabilities (Student t, central F, χ², normal) come from jStat. The independent-samples default is Welch's t-test, which does not assume equal variances, and every parametric test reports an effect size and, where standard, a 95% confidence interval. Assumptions are checked automatically and a non-parametric alternative is suggested when they fail.
The tests
Test
Use when
Statistic & df
Welch's t-test (default)
Two independent groups; variances may differ (the common real-world case).
t with Welch–Satterthwaite df
Student's pooled t-test
Two independent groups with equal variances (confirm with Levene).
t, df = n₁+n₂−2
Paired t-test
Two measurements on the same units (before/after).
t on differences, df = n−1
One-way ANOVA
Three or more independent groups (also valid for 2, where F = t²).
F, df = (k−1, N−k)
Pearson correlation
Linear association between two continuous variables.
r, t = r√((n−2)/(1−r²))
Mann–Whitney U
Two independent groups when normality fails.
U, normal approximation (tie-corrected)
Wilcoxon signed-rank
Paired data when the differences aren't normal.
W, normal approximation
The Welch–Satterthwaite degrees of freedom are generally non-integer and smaller than the pooled df, which is the price of not assuming equal variances. For two groups the one-way ANOVA reduces exactly to the pooled t-test (F = t²), a useful internal check.
Effect sizes & intervals
A p-value tells you whether an effect is distinguishable from zero, not how big it is. Each test therefore reports a standardized effect size and, where standard, a confidence interval.
Test
Effect size
Rough benchmarks
Independent t
Cohen's d (pooled SD); Hedges' g corrects small-sample bias
0.2 small · 0.5 medium · 0.8 large
Paired t
Cohen's dz = d̄ / sd
same d benchmarks
ANOVA
η² (variance explained); ω² is less biased
0.01 small · 0.06 medium · 0.14 large
Pearson
r and r² (shared variance)
|r|: 0.1 weak · 0.3 moderate · 0.5 strong
Mann–Whitney / Wilcoxon
rank-biserial r / z⁄√n
same r benchmarks
The 95% CI for the mean difference uses the same standard error and df as the test. The CI for Pearson's r uses the Fisher z-transformation, which stabilises the variance of r before building a symmetric interval and transforming back. Benchmarks (Cohen) are conventions, not laws, interpret them against your field's typical effects.
Assumption checks
Two automatic checks run alongside each parametric comparison, and the tool tells you when to switch tests.
Check
What it tests
If it fails
D'Agostino–Pearson K²
Normality, via combined skewness and kurtosis tests (omnibus). Needs n ≥ 8.
Use Mann–Whitney (independent) or Wilcoxon (paired).
Levene's test (Brown–Forsythe, median-centred)
Homogeneity of variance across groups.
Prefer Welch's t / Welch's ANOVA over pooled versions.
The median-centred (Brown–Forsythe) form of Levene's test is more robust to non-normality than the original mean-centred version, which is why it's used here. Normality is assessed per group (or on the paired differences); with n < 8 the K² test is skipped and the tool says so rather than guessing.
APA-style reporting
The publication summary follows APA conventions: test name, descriptives, the test statistic with df, an exact p-value (or p < .001), a confidence interval, and an effect size with its interpretation. Example:
"Welch's independent-samples t-test compared Group A (M = 5.45, SD = 0.52, n = 8) and Group B (M = 6.78, SD = 0.40, n = 8). The difference was statistically significant, t(13.28) = −5.62, p < .001, 95% CI [−1.84, −0.83], Cohen's d = −2.81 (large)."
Leading zeros are dropped from p-values (APA style: p = .032, not 0.032). p-values below .001 are reported as "< .001" rather than a spuriously precise figure. For a significant ANOVA with k > 2 groups, the summary reminds you to run post-hoc pairwise tests (e.g. Tukey HSD) to locate which groups differ.
References
Welch, B. L. (1947). The generalization of "Student's" problem when several different population variances are involved. Biometrika, 34(1–2), 28–35. doi:10.1093/biomet/34.1-2.28.
Student [W. S. Gosset] (1908). The probable error of a mean. Biometrika, 6(1), 1–25.
Fisher, R. A. (1925). Statistical Methods for Research Workers. Oliver & Boyd. (ANOVA, F-distribution, and the z-transformation of the correlation coefficient.)
Cohen, J. (1988). Statistical Power Analysis for the Behavioral Sciences (2nd ed.). Lawrence Erlbaum. (Cohen's d, η², and the small/medium/large benchmarks.)
Hedges, L. V. (1981). Distribution theory for Glass's estimator of effect size and related estimators. Journal of Educational Statistics, 6(2), 107–128. (Small-sample bias correction, "Hedges' g".)
D'Agostino, R. B., & Pearson, E. S. (1973). Tests for departure from normality. Biometrika, 60(3), 613–622. See also D'Agostino, Belanger & D'Agostino (1990), The American Statistician, 44(4), 316–321.
Levene, H. (1960). Robust tests for equality of variances. In Contributions to Probability and Statistics (pp. 278–292). Stanford Univ. Press. Brown, M. B., & Forsythe, A. B. (1974), JASA, 69, 364–367 (median-centred variant).
Mann, H. B., & Whitney, D. R. (1947). On a test of whether one of two random variables is stochastically larger than the other. Annals of Mathematical Statistics, 18(1), 50–60. Wilcoxon, F. (1945). Individual comparisons by ranking methods. Biometrics Bulletin, 1(6), 80–83.
American Psychological Association (2020). Publication Manual of the APA (7th ed.). (Statistical reporting conventions.)
jStat, JavaScript statistical library (distribution CDFs and inverse CDFs). jstat.github.io. Formulas typeset with KaTeX.
All computation runs entirely in your browser, your data never leaves your device. Results are a rigorous starting point; for regulatory or high-stakes analyses, confirm in a validated package (R, SciPy, SAS).
Frequently asked questions
Why is Welch's t-test the default instead of the classic Student's t-test?
Because the equal-variance assumption behind the pooled Student's t-test is often violated in real data, and when it is, the pooled test's error rates are wrong. Welch's t-test does not assume equal variances, controls the Type I error rate well across a wide range of conditions, and loses very little power when variances happen to be equal. It's the modern recommended default; the pooled version is still offered for when you've confirmed equal variances.
What changed from a "p-value only" tool?
Three things reviewers now expect: an effect size for every test (Cohen's d, η²/ω², r/r², or a rank-biserial correlation), a 95% confidence interval where one is standard, and automatic assumption checks (normality and equality of variance) that recommend a non-parametric test when needed. The ANOVA is also a genuine k-group analysis rather than a two-column comparison.
What data layouts are supported | wide or long?
Both. Wide format puts each group in its own column (e.g. columns GroupA, GroupB, GroupC). Long / tidy format, the default export from R, pandas and most statistical software, puts all the numbers in one value column and the group labels in another (e.g. value, group). The tool auto-detects which you've pasted; if the guess is wrong, use the Format dropdown to force Wide or Long, and in Long mode pick which column holds the values and which holds the group labels.
How do I run an ANOVA on more than two groups?
Choose "One-Way ANOVA" and the group selector switches to a multi-select, hold Ctrl/Cmd (or Shift) to pick every column that represents a group. Each selected column is treated as one independent group, and the F-test uses df = (k−1, N−k). In long format, every level of your group column automatically becomes a selectable group.
When should I trust the non-parametric tests instead?
When the normality check flags a departure (especially with small samples), or when your data are ordinal or have heavy outliers. Mann–Whitney U replaces the independent t-test; Wilcoxon signed-rank replaces the paired t-test. Both test distributional shift via ranks and make no normality assumption. Here they use a normal approximation, which is accurate for moderate-to-large n; for very small samples, confirm against exact tables.
Why are my p-values reported without a leading zero?
That's APA style, probabilities that can't exceed 1 are written as p = .032, not 0.032. Values below .001 are shown as "< .001" because the exact figure isn't meaningfully precise at that scale.
Is my data sent anywhere?
No. Parsing (PapaParse) and all statistics run locally in your browser. Nothing you paste or upload is transmitted or stored.
Built for reproducible, defensible statistical reporting.