Compare the means of 2 to 10 groups with the F test, the full ANOVA table and eta squared
Updated October 2026
With k groups and N values in total: the between-groups (treatment) sum of squares is Σ nᵢ(meanᵢ − grand mean)², with k − 1 degrees of freedom; the within-groups (error) sum of squares is the squared deviations of each value from its own group mean, with N − k degrees of freedom; the two add to the total sum of squares. Each sum of squares divided by its degrees of freedom is a mean square, and F = MST ÷ MSE. The p-value is the chance of an F at least that large from the F distribution with (k − 1, N − k) degrees of freedom if all population means were equal.
Worked example (NIST 7.4.3.4). Group totals are 26.7, 38.6 and 42.8, the grand total 108.1, so the correction for the mean is 108.1² ÷ 15 = 779.041. The raw sum of squares is 829.390, giving SS(Total) = 45.349. SST = 26.7²/5 + 38.6²/5 + 42.8²/5 − 779.041 = 27.897, and SSE = 45.349 − 27.897 = 17.452. MST = 27.897 ÷ 2 = 13.949, MSE = 17.452 ÷ 12 = 1.454, and F = 9.59 with p = 0.00325.
| Source | SS | df | MS | F |
|---|---|---|---|---|
| Treatments (between) | 27.897 | 2 | 13.949 | 9.59 |
| Error (within) | 17.452 | 12 | 1.454 | |
| Total (corrected) | 45.349 | 14 |
If the group means were all equal, both mean squares would estimate the same error variance and F would be near 1. A large F says the group means differ more than the scatter within groups would explain.
| Data | df | F | p | η² |
|---|---|---|---|---|
| NIST resistor example (3 temperatures, n = 5 each) | 2, 12 | 9.59 | 0.00325 | 0.615 |
| Three teaching methods (made-up test scores, n = 6 each) | 2, 15 | 31.63 | 4.16e-06 | 0.808 |
| Unequal group sizes (made-up, n = 4, 7, 3) | 2, 11 | 7.07 | 0.01063 | 0.562 |
| No real difference (made-up, n = 5 each) | 2, 12 | 0.05 | 0.94800 | 0.009 |
The last three data sets are made up to show the patterns: well-separated means give a huge F, unequal group sizes are handled by weighting each group mean by its n, and overlapping groups give F below 1 and a large p.
Use one-way ANOVA to compare the means of three or more independent groups on one numeric outcome, such as yields under several fertilizers. With exactly two groups it gives the same answer as the pooled two-sample t-test (F = t²). The test assumes independent observations, roughly normal data within each group and similar variances across groups. Check by plotting each group and comparing standard deviations; with very unequal variances, Welch’s ANOVA is safer, and with strongly non-normal data or ranks, the Kruskal–Wallis test.
A small p-value says the means differ; it does not say by how much. Eta squared, η² = SS(between) ÷ SS(total), is the share of the total variation explained by group membership: 0.615 in the NIST example. With large samples, tiny differences become significant, so report η² (or the group means themselves) alongside p.
A significant F says at least one mean differs, not which one. Tukey’s honestly significant difference test compares every pair while holding the overall error rate at α; running many separate t-tests instead inflates false positives. If you have two grouping factors, such as fertilizer and watering level, use a two-way ANOVA, which also tests their interaction. This calculator does not run post-hoc tests or two-way designs.
Running many t-tests instead of one ANOVA. Three pairwise tests at 0.05 have a much larger combined chance of a false positive.
Using it for repeated measures. The same subjects measured several times need a repeated-measures design.
Reading “not significant” as “equal.” A large p means the data cannot show a difference, not that none exists.
Ignoring very unequal variances, especially with unequal group sizes.