A χ² of 40 can be a huge association or nothing at all: with N = 80 the V is .71 and with N = 2,000 it is .14. Same statistic, two opposite conclusions. Cramér’s V is what is left of the χ² once you take the sample size out, and it comes out <strong>exact</strong>: it is not an estimate or an adjustment.
Cramér’s V = √( χ² / (N · (k − 1)) ) with k = min(number of rows, number of columns)
2×2 table → k − 1 = 1 → V = √(χ² / N) = |φ|
Benchmarks by k − 1 k−1 = 1: .10 .30 .50 k−1 = 2: .07 .21 .35 k−1 = 3: .06 .17 .29
A 2×2 table with 30 and 20 against 20 and 30 returns χ² = 4.00, p = .046 and V = .20. Quadruple every cell without touching the proportions — 120 and 80 against 80 and 120 — and the χ² climbs to 16.00 with p < .001, while V stays pinned at .20. The association is literally identical: the four proportions are the same. The only thing that changed is how many people you measured, and that is exactly what χ² picks up and V discards.
It is not a flaw of χ². It is a test statistic and its job is to answer one specific question: can I rule out chance? With 4,000 people almost anything can be ruled out, including a two-percentage-point difference nobody cares about. V answers the other question, the one you are actually going to put in the discussion: how much association is there. They go together and neither replaces the other.
The practical effect is that a lone χ² cannot be interpreted or entered into a meta-analysis. With the χ² and N it can: V is recoverable from any paper that published its contingency table, even if the effect size appeared nowhere. It is the usual route for rescuing studies from before 2010. And it is why APA requires N inside the parentheses, χ²(1, N = 240) = 8.45: without that number the statistic cannot be reinterpreted.
φ² = χ²/N is Pearson’s mean-square contingency, the χ² spread per person. Its maximum is not 1 but k−1, where k is the smaller of the table’s two dimensions: in a 2×2 that maximum is 1 and in a 4×6 it is 3. V does nothing more than divide by that maximum and take the square root, so the result always falls between 0 and 1. It is a rescaling, not a model. If you have χ², N, rows and columns, V is determined.
What exactness does not fix is validity. V inherits everything that happens to the χ²: expected frequencies below 5, the same participant counted in two cells, observations that are not independent because they are siblings or repeated measures of the same person. With any of those, the χ² is wrong and V comes out just as wrong, only dressed as an effect size. The conversion is impeccable even when the test is not.
In a 2×2 table V coincides with the absolute value of φ, because k−1 = 1. That means you lose the sign: V never tells you which way the association went or which cell drives it. For direction, φ with its sign or the odds ratio; to locate the source, the table’s standardized residuals, which point to the cells that deviate most from expectation.
The .10 / .30 / .50 everybody quotes is Cohen’s w and only holds when k−1 = 1, that is, in 2×2, 2×3 or 2×n tables. For larger tables they are divided by √(k−1): with k−1 = 2 they become .07, .21 and .35; with k−1 = 3, .06, .17 and .29. A V of .40 is a large effect in a 3×4 table, where the threshold is .35, and still medium in a 2×2, where it is .50. Applying the usual benchmarks to a large table systematically undervalues what you found.
The second trap is bias. Under complete independence, the expected χ² equals its degrees of freedom, so a 3×3 table with N = 40 returns a V of around .22 even if the two variables have nothing to do with each other. With N = 200, that pure-noise V drops to .10. If your sample is small and your table is large, use the bias-corrected V (Bergsma, 2013) or, at the very least, keep N next to the number.
The confidence interval does not come from this formula. It needs the noncentral chi-square distribution or a bootstrap over the cells; in R, effectsize::cramers_v() and rcompanion::cramerV() do it. Under the hood, the noncentral route inverts the distribution over the noncentrality parameter λ to get its two limits and brings them back to the V scale with V = √((λ + df) / (N · (k − 1))): notice that the table’s degrees of freedom, (rows−1)(columns−1), enter there in addition to k − 1. More and more journals ask for it, and the point estimate alone is starting to fall short. Before anything else, check that your degrees of freedom are (rows−1)(columns−1): when they do not match it is usually because a category ended up empty and the real table is smaller than the one you describe.
All thirteen effect size conversions, grouped by what each one is for, are in the index.
If you use it in your thesis or in a paper, cite it so that readers of your Methods section know how the calculation was done.
Ciudad-Fernández, V. (2026). Chi-square to Cramér's V converter [Web application]. Ciudad Science. Retrieved October 14, 2026, from https://analisisdedatospsicologia.com/en/convert/chi-square-to-cramers-v
For your Methods section: Cramér's V was obtained from Pearson's χ² and the table size, using the Ciudad Science chi-square to Cramér's V converter (Ciudad-Fernández, 2026).
@misc{ciudadfernandez2026convchicuadradoavdecramer,
author = {Ciudad-Fern{\'a}ndez, V{\'i}ctor},
title = {{Chi-square to Cramér's V converter}},
year = {2026},
publisher = {Ciudad Science},
howpublished = {Web application},
url = {https://analisisdedatospsicologia.com/en/convert/chi-square-to-cramers-v},
urldate = {2026-10-14},
note = {Accessed 2026-10-14},
}No. Goodness of fit has one variable, and there are no rows and columns to take k from. The effect size that belongs to it is Cohen’s w, w = √(χ²/N), with benchmarks .10, .30 and .50. The formula looks alike, but what you measure is the distance to some theoretical proportions, not the association between two variables.
It is almost always N. SPSS uses the valid cases of the crosstab, which are fewer than the study’s as soon as there is a missing value on either variable. The second cause is having entered Yates’ continuity correction instead of Pearson’s χ²; in 2×2 tables with small samples that difference is visible to the naked eye.
With the test and the effect size in the same sentence: χ²(1, N = 240) = 8.45, p = .004, V = .19. The degrees of freedom are (rows−1)(columns−1) and the N in the parentheses is the table’s, not the study’s. If the table is 2×2 you may write φ instead of V, but not both: they are the same number.
Yes, but not from this formula. It takes the noncentral chi-square to put limits on the noncentrality parameter, or a bootstrap over the cells of the table. In R, effectsize::cramers_v() and rcompanion::cramerV() handle it. If your sample is small, the interval will come out uncomfortably wide, and that is useful information the point estimate hides.