ANOVA Calculator
Perform a one-way ANOVA (Analysis of Variance) to compare means across three groups and determine if differences are statistically significant.
About this calculator
This calculator runs a one-way ANOVA across three groups from each group's mean and sample size, plus a Pooled Variance figure you supply directly as Mean Square Within (line 32) — it never derives that variance from raw per-group standard deviations, because none are collected here. The Grand Mean is the sample-size-weighted average of the three group means (line 19); Mean Square Between sums each group's squared distance from that Grand Mean, weighted by its own sample size (lines 22-25), then divides by degrees-of-freedom-between, k − 1 = 2 for three groups (line 28). The F-Statistic is Mean Square Between divided by Mean Square Within (line 34), and the approximate p-value comes from a chi-square-to-normal approximation of the F-distribution rather than an exact F-table lookup.
At the defaults, F = 10.58 across 2 and 72 degrees of freedom, which the approximation reads as significant at α=0.05. Nudging each group's mean shows Group 3's mean — the one sitting furthest above the Grand Mean of 78.33 — moves the F-Statistic the most, while Group 1's mean, sitting below the Grand Mean, moves it the opposite way, because raising a below-average mean narrows rather than widens the between-group spread that line 22's sum of squares measures. What this does not account for: unequal-variance corrections such as Welch's ANOVA, post-hoc pairwise tests, and a literal 0 typed into Pooled Variance — that field reads `inputs.pooledVariance || 1` (line 10), so a real 0 is treated as missing and replaced with 1, never reaching the displayed 0.001 floor that Math.max applies after it.
Inputs
Results
F-Statistic
10.58
P-Value (approx)
0
How to Use This Calculator
- Enter the mean and sample size for each of the three groups being compared, plus the pooled within-group variance (MSW), the average of each group's variance.
- One-way ANOVA tests the null hypothesis that all group means are equal against the alternative that at least one differs.
- The F-statistic = (Between-group variance) / (Within-group variance); a larger F indicates greater between-group variation relative to noise.
- The approximate p-value is derived from the F-distribution with k−1 and N−k degrees of freedom (k = number of groups, N = total observations).
- If p < your significance level (typically 0.05), reject the null hypothesis — at least one group mean is significantly different.
- Use a post-hoc test (e.g., Tukey's HSD) after a significant ANOVA to determine which specific groups differ.
How the result changes with Group 3 Mean
| Group 3 Mean | F-Statistic | P-Value (approx) |
|---|---|---|
| 43 | 87.58 | 0 |
| 64 | 12.33 | 0 |
| 128 | 236.33 | 0 |
| 213 | 1,589.25 | 0 |
What each input means
- Group 1 Mean
- The mean value for the first group.
- Group 1 Sample Size
- Number of observations in the first group.
- Group 2 Mean
- The mean value for the second group.
- Group 2 Sample Size
- Number of observations in the second group.
- Group 3 Mean
- The mean value for the third group.
- Group 3 Sample Size
- Number of observations in the third group.
- Pooled Variance (MSW)
- The pooled within-group variance (mean square within). Average of group variances.
How this is calculated
Worked example, using the default values
- Identify Input Parameters4 parametersGroup 1 Mean = 72, Group 1 Sample Size = 25, Group 2 Mean = 78, Group 2 Sample Size = 25 = 7 input(s) provided
- Calculate F-StatisticF-Statistic10.5833 = 10.5833
- Calculate P-ValueP-Value0 = 0
- Calculate df Between Groupsdf Between Groups2 = 2
- Calculate df Within Groupsdf Within Groups72 = 72
Engine last updated . Checked against 2 independently-derived tests — how we verify calculators. Built by Paul Gunder, a software engineer, not a licensed financial, medical, or legal professional.
Frequently Asked Questions
Why does raising Group 1 Mean lower the F-Statistic while raising Group 3 Mean raises it?
Both feed the same between-group sum of squares, but from opposite sides of the Grand Mean. Group 1's mean (72) sits below the Grand Mean (78.33), so nudging it up pulls Group 1 toward the pack and shrinks the squared deviations line 22 sums; Group 3's mean (85) sits above the Grand Mean, so nudging it up pushes Group 3 further from the pack and grows those same deviations — same formula, opposite geometry.
Does this calculator compute Pooled Variance from the three groups' standard deviations?
No — there is no group standard-deviation input at all. Mean Square Within is exactly the number you type into Pooled Variance, subject only to a 0.001 floor (line 10); if your data comes as raw group standard deviations, you need to pool them into a single within-group variance yourself before entering it here.
What happens if I type 0 into Pooled Variance?
It does not fall through to the calculator's displayed 0.001 minimum. The line reading it is `inputs.pooledVariance || 1` (line 10), and JavaScript's `||` treats a literal 0 as falsy, so the calculator substitutes 1 before Math.max(…, 0.001) ever runs — the floor only takes effect for small positive entries like 0.0001, not for 0.
Why does P-Value show as 0 when ANOVA p-values are never exactly zero?
It's a display artifact of rounding to four decimal places (line 56), not a claim that the true p-value is zero. With F = 10.58 across 2 and 72 degrees of freedom, the chi-square approximation this calculator uses puts the real value well under 0.00005, which rounds down to the 0.0000 shown as "0" — a genuinely small result, not a literal zero probability.
Related Calculators
The questions that sit next to this one — chosen by subject, including calculators filed under a different category.
Kruskal-Wallis Test Calculator
Perform a Kruskal-Wallis H test to compare rank distributions across multiple independent groups.
StatisticsT-Test Calculator
Calculate the t-statistic, degrees of freedom, and approximate p-value for a one-sample t-test.
StatisticsZ-Score Calculator
Calculate the z-score (standard score) for any value in a normal distribution. Find the percentile ranking and probability associated with your data point.
More in Math & Statistics.