One-Way ANOVA Calculator

Compare the means of three or more independent groups. Paste raw scores or enter each group's n, mean and SD to get the ANOVA table, F, p-value and η², Welch's ANOVA for unequal variances, Tukey HSD pairwise comparisons, and an APA 7 sentence — computed entirely in your browser.

Results
StatisticValue
F30.52
df2.00, 12.00
p-value1.97e-5
η².84
ω².80
Welch F32.40 (p < .001)

APA report

F(2.00, 12.00) = 30.52, p < .001, η² = .84

Tukey HSD

  • A − B: Δ = -8.00, p = 0.008
  • A − C: Δ = 8.80, p = 0.004
  • B − C: Δ = 16.80, p = 1.33e-5
Have full study data?

Upload your dataset and generate a complete paper draft with statistics, figures, and references—free preview.

Generate paper

How to use the ANOVA calculator

1. **Choose an input mode.** - *Raw data:* paste one column per group, or load a CSV and pick the columns (or a group column plus a value column). - *Summary statistics:* enter the sample size, mean and standard deviation of each group — useful when you only have a table from a paper. 2. **Add at least two groups** (ANOVA is normally used for three or more; with exactly two it is equivalent to an independent-samples t test). 3. **Read the ANOVA table:** sums of squares, degrees of freedom, mean squares, F and the p-value, plus eta squared (η²) as the effect size. 4. **Check Welch's ANOVA** if group standard deviations or sample sizes differ noticeably. 5. **Look at Tukey HSD** to see which pairs of groups differ, with adjusted p-values and confidence intervals. 6. **Copy the APA 7 sentence.**

Your data stays on your device; the calculator runs entirely in the browser.

What one-way ANOVA tests

One-way analysis of variance (ANOVA) tests whether the means of several independent groups are all equal:

  • H0: μ1 = μ2 = … = μk
  • H1: at least one group mean differs

It does this by comparing the variation **between** group means with the variation **within** groups. If the group means are further apart than the within-group noise would lead you to expect, F is large and p is small.

Use it when you have **one categorical factor** with independent groups (three teaching methods, four fertiliser types, control vs two drug doses) and a **continuous outcome**. Running a separate t test for every pair inflates the chance of a false positive; ANOVA tests all groups at once, and a post hoc test such as Tukey HSD then controls the error rate across the pairwise comparisons.

If you have repeated measurements on the same participants, you need repeated-measures ANOVA instead. With two or more factors you need factorial ANOVA. Neither is covered here.

Assumptions

  • **Independence:** each observation belongs to one group, and observations do not influence each other.
  • **Normality:** the outcome is approximately normal within each group. ANOVA is fairly robust to mild departures, especially with similar group sizes of about 15 or more.
  • **Homogeneity of variance:** groups have similar variances. A common rule of thumb is that the largest SD should be less than about twice the smallest. When this fails, especially with unequal group sizes, report **Welch's ANOVA**, which does not assume equal variances.

If the outcome is ordinal or strongly skewed with small groups, the Kruskal–Wallis test is the usual non-parametric alternative. For two groups, see the [Mann–Whitney U test calculator](/tools/mann-whitney-u-test-calculator).

Formulas

With k groups, group sizes n_i, group means ȳ_i, grand mean ȳ and total N:

`SS_between = Σ n_i (ȳ_i − ȳ)²`, df_between = k − 1

`SS_within = Σ Σ (y_ij − ȳ_i)² = Σ (n_i − 1) s_i²`, df_within = N − k

`MS = SS / df`

`F = MS_between / MS_within`, compared with the F distribution on (k − 1, N − k) df.

Effect size: `η² = SS_between / SS_total`.

Tukey HSD compares each pair with `q = |ȳ_i − ȳ_j| / √[ (MS_within / 2)(1/n_i + 1/n_j) ]` against the studentised range distribution.

Welch's ANOVA weights each group by `w_i = n_i / s_i²` and uses adjusted denominator degrees of freedom, so it remains valid when variances differ.

Worked example

A researcher compares exam scores under three teaching methods, five students per method:

| Method | Scores | Mean | SD | |---|---|---|---| | A (lecture) | 78, 82, 75, 80, 85 | 80.0 | 3.81 | | B (active learning) | 85, 88, 90, 84, 93 | 88.0 | 3.67 | | C (self-study) | 70, 72, 68, 75, 71 | 71.2 | 2.59 |

ANOVA table (verified with Python and SciPy):

| Source | SS | df | MS | F | p | |---|---|---|---|---|---| | Between groups | 706.13 | 2 | 353.07 | 30.52 | < .001 | | Within groups | 138.80 | 12 | 11.57 | | | | Total | 844.93 | 14 | | | |

  • **F(2, 12) = 30.52, p < .001** (p = 0.00002)
  • **η² = .84**: group membership accounts for about 84% of the variance in scores.
  • Welch's ANOVA: F(2, 7.73) = 33.42, p < .001 — same conclusion.

Tukey HSD post hoc comparisons:

| Comparison | Mean difference | 95% CI | p (adj.) | |---|---|---|---| | B − A | 8.0 | [2.26, 13.74] | .008 | | A − C | 8.8 | [3.06, 14.54] | .004 | | B − C | 16.8 | [11.06, 22.54] | < .001 |

All three pairs differ: active learning scored highest, self-study lowest.

Interpreting the results

  • **A significant F** says only that not all means are equal. It does not say which groups differ — that is what the post hoc test is for.
  • **η² (eta squared)** is the proportion of total variance explained by the grouping. Rough benchmarks often cited from Cohen are .01 small, .06 medium and .14 large. In small samples η² overestimates the population effect; omega squared is a less biased alternative.
  • **Welch vs classic F:** if they agree, you can report either (many journals now prefer Welch by default). If they disagree, trust Welch when variances are unequal.
  • **Tukey HSD** controls the family-wise error rate across all pairwise comparisons and assumes equal variances. Read the adjusted p-values and the confidence intervals for each mean difference.
  • **A non-significant F** does not prove the means are equal, especially with small groups.

For the standardised difference between two specific groups, the [effect size calculator](/tools/effect-size-calculator) gives Cohen's d.

Reporting ANOVA in APA 7 style

Give the test, the two degrees of freedom, F, the p-value and an effect size, then the post hoc results and the group means and SDs (often in a table):

> A one-way ANOVA showed that exam scores differed significantly across teaching methods, *F*(2, 12) = 30.52, *p* < .001, η² = .84. Tukey HSD tests indicated that active learning (*M* = 88.0, *SD* = 3.67) outperformed lecture (*M* = 80.0, *SD* = 3.81), *p* = .008, and self-study (*M* = 71.2, *SD* = 2.59), *p* < .001, and that lecture outperformed self-study, *p* = .004.

If you used Welch's ANOVA, report its fractional df, e.g. *F*(2, 7.73) = 33.42.

With a full dataset — several outcomes, covariates, demographics — Data2Paper's [Generate Paper](/generate-paper) can run the analysis and draft the complete paper, and you can preview the first half for free.

Common mistakes

  • **Running multiple t tests** instead of ANOVA plus a post hoc test, which inflates the false-positive rate.
  • **Stopping at a significant F** without saying which groups differ.
  • **Running post hoc tests after a non-significant F** and reporting only the significant pairs.
  • **Using one-way ANOVA for repeated measures** (the same participants in every condition).
  • **Ignoring unequal variances**, especially when the smallest group has the largest SD. Use Welch.
  • **Reporting only p.** Always include an effect size and the group means and SDs.
  • **Treating a Likert item as continuous** without justification when groups are small and responses are bunched at one end.

FAQ

Related calculators