UTILS.
Private by default
📊

One-Way ANOVA Calculator (F-Test)

Compare the means of 3+ groups with a one-way ANOVA: full SS, df, MS and F table, the F-distribution p-value and eta-squared.

Your files stay on this device

Files are processed in your browser, never uploaded. The site downloads code and assets to run the tools. No accounts or trackers.

Use Download to save this tool as one HTML file for offline use.

Privacy →

One group per line. An optional "name:" prefix is ignored; separate values with commas, spaces, tabs or semicolons.

SS_between = Σnᵢ(x̄ᵢ−x̄)², SS_within = ΣΣ(x−x̄ᵢ)²; F = MSB/MSW; p from the F-distribution upper tail via the regularized incomplete beta function.

About this tool

The One-Way ANOVA Calculator tests whether the means of two or more independent groups differ by more than chance. Paste one group per line — an optional label before a colon is ignored, so "Group A: 6, 8, 4" works just as well as bare numbers separated by commas, spaces, tabs or semicolons. Everything runs locally in your browser; nothing you enter is uploaded.

It splits the total variation into a between-groups and a within-groups part. The between-groups sum of squares is SS_between = Σ nᵢ(x̄ᵢ − x̄)² with df₁ = k − 1, and the within-groups sum of squares is SS_within = ΣΣ(x − x̄ᵢ)² with df₂ = N − k, where k is the number of groups and N the total sample size. Dividing each by its degrees of freedom gives the mean squares MSB and MSW, and the test statistic is F = MSB / MSW. The p-value is the upper-tail area of the F distribution, computed exactly from the regularized incomplete beta function Iₓ(df₂/2, df₁/2) rather than a lookup table.

The effect-size measure eta-squared (η² = SS_between / SS_total) reports the proportion of total variance explained by group membership. A result is flagged significant when p < 0.05, meaning you would reject the null hypothesis that all group means are equal. You need at least two groups and more observations than groups so the within-groups degrees of freedom is positive.

Frequently asked questions

How is the p-value calculated?
From the F distribution's upper tail: p = Iₓ(df₂/2, df₁/2) with x = df₂/(df₂ + df₁·F), where Iₓ is the regularized incomplete beta function evaluated with a Lentz continued fraction and a Lanczos log-gamma. This is exact, not a table interpolation.
What counts as significant?
By convention the tool flags significance at α = 0.05: if p < 0.05 you reject the null hypothesis that all group means are equal. A significant F tells you at least one group differs, but not which — use a post-hoc test like Tukey's HSD to find out.
What does eta-squared mean?
Eta-squared (η² = SS_between / SS_total) is the share of total variance explained by the grouping variable, from 0 to 1. Rough benchmarks are 0.01 small, 0.06 medium and 0.14 large. It is a descriptive effect size that complements the significance test.
How do I enter my groups?
One group per line. You may prefix a name and colon ("Control: 5, 7, 6") or just list the numbers; values can be separated by commas, spaces, tabs or semicolons. You need two or more groups and more total values than groups.

More tools