Stats for

Agreement and Reliability

Cohen's Kappa

Cohen's kappa measures how much two raters agree beyond chance.

Cohen's kappa takes two raters' category codes for the same cases and measures how much they agree beyond the agreement chance alone would produce.

Example

Do two clinicians agree on whether an intake interview points to depression, anxiety or neither? Two clinicians each read the same 100 recorded intake interviews and, working separately, coded each one's main concern as depression, anxiety or neither.

Two Raters, Same Cases + Nominal Categories → Cohen's Kappa
Tests
Agreement beyond chance between two raters
Observations
Related
Parametric
No
Headline Statistic
\kappa
Key Estimate
Cohen's Kappa
Groups
1

The Basics

When to Use It

Use it when two raters each sort the same cases into the same set of unordered categories, working separately, and you want to know how well they agree once chance agreement is taken out. Cohen (1960) introduced kappa for this design. The same works for one rater coding the same cases twice, as long as enough time passes, or the cases are reordered, that the rater can't remember the first codes; remembered codes inflate κ. For example:

  • Do two clinicians agree on whether an intake interview points to depression, anxiety or neither?
  • Do two coders watching the same videos agree on whether each toddler's play episode is solitary, parallel or cooperative?
  • Do two trained observers agree on which Strange Situation attachment category (secure, avoidant, resistant or disorganized) each infant shows?

With three or more raters, Fleiss' kappa (Fleiss, 1971) is a common choice when every case gets the same number of codes. It allows different cases to have different raters, and it describes two raters picked at random, not a particular fixed panel. With missing codes or different numbers of raters per case, consider Krippendorff's alpha. With ordered categories, such as mild, moderate and severe, use weighted kappa (Cohen, 1968), which counts a near miss as partial agreement.

Vocabulary You Need

Definition Inter-Rater Reliability

How consistently different raters (observers, coders or judges) rate the same cases. It describes the whole rating procedure, the raters, their training and the coding scheme, as used on a particular kind of case, not the raters alone. Categorical codes are usually summarized with a kappa (Cohen's for two raters, Fleiss' for more), and numeric ratings with an intraclass correlation. Krippendorff's alpha covers any number of raters, missing ratings and any scale. High inter-rater reliability means the ratings depend on the cases more than on who happened to rate them; it doesn't mean the ratings are correct, since raters can agree and all be wrong. Glossary →

Definition Contingency Table

A table that cross-classifies people on two categorical variables, one along the rows and one along the columns, so each cell counts the people with that combination. The row and column totals (the margins) show how each variable is spread on its own; the cells show how the two go together. Tables are described by their size, rows × columns, such as a 2 × 3 table. Glossary →

Definition Observed Agreement (p_o)

For two raters, the number of cases they put in the same category, divided by the number of cases: the diagonal of their table over the total. With more raters, it's the average agreement across every pair of raters for each case (Fleiss' kappa's P̄). Multiplied by 100 it is percent agreement. It is easy to read, but it counts the agreements that would happen by chance too, so it flatters raters when one category is very common. Glossary →

Definition Chance Agreement (p_e)

How often raters would be expected to agree if they assigned categories independently, at the rates the categories were actually used. For two raters (Cohen's kappa), it's a share of cases: multiply the share of cases the first rater put in each category by the second rater's share, then add up across categories. With several raters (Fleiss' kappa), it's the chance that two ratings picked at random agree: square each category's overall share and add them up. “Chance” doesn't mean the raters guess: their category rates can reflect real judgment. It's the agreement a model of unrelated codes predicts from those rates. It is high when one category dominates: raters who all call most cases “neither” will often agree even if their codes are unrelated. Glossary →

Assumptions

1. Independent Raters Each rater rates each case they're given without knowing anyone else's ratings.
What It Means
The raters reach their ratings separately: they don't discuss cases, see each other's ratings or share notes before rating. Agreement statistics such as kappa, Krippendorff's alpha and the intraclass correlation treat each rating as a separate judgment. Raters who confer agree more than the rating procedure would on its own, so the result overstates how reliable it is.
Applies To
Raters
How to Check
By design, not by a test. Did each rater work from the same material (a recording, a transcript, the same case file) without access to anyone else's ratings, and were disagreements resolved only after all had finished?
How Much It Matters
A lot, and always in the same direction. Raters who talk cases over or see each other's codes agree more than the coding scheme would on its own, so κ comes out too high. No statistic can undo it afterward.

If It's Violated

  • Design Change Have each rater code from the same recording, transcript or notes without seeing the other's codes, and settle disagreements only after both have finished.
  • Proceed with Caveat If some cases were discussed before coding, compute κ from the independent codes only, or say plainly that it overstates independent agreement.
2. Independent Observations The people (or other units) in your study don't influence each other.
What It Means
Each person's data comes from a separate, unconnected source, so knowing one person's scores tells you nothing about anyone else's. In designs that measure people more than once, their own scores are meant to be related; it's different people who must be independent. Methods built for clustered data, such as multilevel models and GEE, also allow members of the same group to be related, as long as the analysis names the grouping; then it's the groups that must be independent.
Applies To
Observations
How to Check
By design, not by a test. Did each person contribute their own data, with no clusters such as roommates, couples, therapy groups or classrooms whose members influence each other? If there are clusters, does the analysis model every one of them?
How Much It Matters
Moderate. κ still describes the agreement in your table, but cases that are linked, such as several interviews with the same client, make the standard error too small, so the interval comes out too narrow and p too small.

If It's Violated

  • Design Change Rate one case per person, or pick one at random from each person.
  • Robust Estimation Resample people rather than cases to build the interval, so the clustering is kept intact.
3. Same Distinct Categories Every rater puts every case into one of the same set of distinct categories.
What It Means
Each case gets exactly one code from each rater, chosen from a list fixed before rating that every rater uses, and the categories don't overlap. Unweighted kappa counts every disagreement as equally serious and ignores any order among the categories, so it suits unordered (nominal) codes; with ordered categories, weighted kappa gives partial credit for near misses.
Applies To
Raters
How to Check
By design: read the codebook. Then tabulate each rater's use of each code, checking that every code is spelled the same way by every rater. With two raters, cross-tabulate their codes: the table should be square, with the same categories along the rows and the columns, and a category only one rater used still needs its own row and column.
How Much It Matters
It decides what κ means. Overlapping categories (a client with both depression and anxiety) force arbitrary choices that show up as disagreements, and with ordered categories a near miss counts as a full disagreement, so κ understates agreement.

If It's Violated

  • Design Change Add decision rules, such as coding the main presenting concern, or add a category for cases that fit more than one, and pilot the codebook before the study.
  • Alternative Test Weighted Kappa. For ordered categories (mild, moderate, severe), use weighted kappa, which gives partial credit for near misses (Cohen, 1968).

Limitations

This Is Not Your Test If…

What It Doesn't Tell You

  • Whether the codes are right. Two clinicians can agree and both be wrong. Agreement is reliability, not accuracy; checking codes against a structured diagnostic interview is a separate question.
  • Whether it's good enough. A κ of .67 might be fine for sorting a waiting list and not good enough for deciding treatment. The benchmarks can't make that call.
  • Who else. The result describes these two clinicians, this codebook and this clinic's mix of intakes. With a different mix, say mostly anxiety referrals, the same clinicians could get a noticeably different κ (Feinstein & Cicchetti, 1990). How often each code is used and how differently the two raters use the codes both move κ (Sim & Wright, 2005), in opposite directions (see Effect Size).
  • Where they disagree. One number hides the pattern. Here most disagreements involve anxiety, so that's where to look first: the codebook's rules for anxiety, how each clinician applies them, or intakes that mix anxiety and depression. The table shows where they disagree, not why.

Common Mistakes

  • Don'tReport percent agreement alone as inter-rater reliability.

    InsteadReport κ alongside the percent agreement and the table, so readers can compare the agreement with what chance alone would produce (McHugh, 2012).

  • Don'tTreat a significant test of κ against zero as evidence of good agreement.

    InsteadJudge the size of κ and its interval. The test only rules out agreement at chance level, a very low bar.

  • Don'tCompare kappas from samples where the categories are much more or less common.

    InsteadCompare them only with similar base rates, and report agreement for each category too (Feinstein & Cicchetti, 1990).

  • Don'tUse Cohen's kappa for ordered categories or for three or more raters.

    InsteadUse weighted kappa for ordered codes (Cohen, 1968) and, for three or more raters, Fleiss' kappa (Fleiss, 1971) when every case gets the same number of codes, or Krippendorff's alpha when some are missing.

  • Don'tRead κ = .67 as “the raters agreed on 67% of cases.”

    InsteadRead it as the share of possible agreement beyond chance, and give the percent agreement separately.

  • Don'tRead a p-value as the chance that the null hypothesis is true.

    InsteadRead it as: if the null were true, how often data at least this extreme would turn up.

Result Decoder

Significance and Interpretation Guidelines

Benchmarks Significance (p Value)
  • p < .001

    Very strong evidence against the null hypothesis.

  • .001 ≤ p < .01

    Strong evidence against the null hypothesis.

  • .01 ≤ p < .05

    Statistically significant at α = .05. Moderate evidence against the null hypothesis.

  • .05 ≤ p < .10

    Not significant. Weak evidence; sometimes called a “trend.” Treat it as inconclusive.

  • p ≥ .10

    Not significant. Little evidence against the null, which is not the same as evidence of no effect.

These evidence labels are one common convention for describing p in graded language rather than as significant or not; the boundaries are rough guides, not rules, and other authors draw them differently. Muff et al. (2022) argue for this kind of language of evidence over a single cutoff. α is chosen before the analysis, and p never says how big or important an effect is.

More about statistical significance ↓

Benchmarks Cohen's Kappa
  • κ < .00 Poor

    The raters agree less often than chance would produce.

  • .00–.20 Slight

    Barely more agreement than chance.

  • .21–.40 Fair

    Some agreement beyond chance, well short of what was possible.

  • .41–.60 Moderate

    About half the possible agreement beyond chance.

  • .61–.80 Substantial

    Most of the possible agreement beyond chance.

  • .81–1.00 Almost Perfect

    Nearly all the possible agreement beyond chance.

Landis and Koch (1977) proposed these labels while discussing one example and called the divisions “clearly arbitrary.” McHugh (2012), who attributes the same bands to Cohen, argues they are too lenient for health research, where a kappa of .41 shouldn't count as acceptable. On her stricter scale, which calls .60–.79 moderate, our κ = .67 would be moderate rather than substantial: the label depends on the convention chosen, not only on the data.

More about effect size ↓

How It's Reported

Equation Form

Example

po = .80, κ = .67, SE = .066, 95% CI [.54, .79], z = 9.13, p < .001

Table 1. Agreement by Category

Example
Clinician AClinician BBothSpecific Agreement
Depression 252519.76
Anxiety 202114.68
Neither 555447.86

Note. N = 100 interviews. Specific agreement = 2 × Both ÷ (Clinician A + Clinician B): of the codes the two clinicians gave a category, the share that were matched by the other clinician.

Full Text (APA Style)

Example

The two clinicians gave the same code to 80 of the 100 intake interviews (po = .80). Because both coded more than half the interviews as neither, 40% agreement would be expected by chance alone (pe = .40). Agreement beyond chance was substantial by Landis and Koch's (1977) benchmarks, Cohen's κ = .67, SE = .066, 95% CI [.54, .79], although the interval reaches down into the moderate range. Agreement was clearly better than chance, z = 9.13, p < .001. It was highest for neither (specific agreement .86) and lowest for anxiety (.68; Table 1).

  • Give the percent agreement and the table (or agreement for each category) along with κ, so readers can compare the agreement with what chance alone would have produced.
  • Report κ's standard error and 95% interval, and say which standard error you used. R's psych package and Python's statsmodels use Fleiss, Cohen and Everitt's (1969) formula.
  • Name the benchmark scale if you use one, and read the whole interval against it, not just the point estimate.
  • The test against κ = 0 is optional. If you report it, don't present it as evidence that agreement is good. Greek κ isn't italicized; p, z and SE are.

Reading Each Piece

The equation form above, piece by piece, in this order: how big, how certain, then how surprising.

po = .80 The two clinicians gave the same code to 80 of the 100 interviews, counting agreements that could have happened by chance.
κ = .67 The clinicians reached about two thirds of the agreement beyond chance that was possible. That's substantial by the Landis and Koch labels above, and a good deal lower than the 80% raw agreement, because 40% agreement was expected by chance. Benchmarks ↑
95% CI [.54, .79] The true kappa is plausibly anywhere from .54, moderate by the benchmarks, to .79, the top of substantial. With 100 interviews we can't pin down which label fits.
SE = .066 If the study were repeated with another 100 interviews like these, κ would typically vary by about .07 from study to study.
z = 9.13 Kappa is 9.13 standard errors above zero, the value it would have if the clinicians agreed only by chance.
p < .001 If the clinicians were agreeing only by chance, a kappa at least this far from zero, in either direction, would essentially never turn up. That rules out chance-level agreement, which no one suspected; it says nothing about whether .67 is good enough. Benchmarks ↑

Calculations

The Running Example

Example

The intake-coding study: two clinicians, working separately, each coded the same 100 intake interviews as depression, anxiety or neither.

Null Hypothesis:
\kappa = 0
Alternative (Two-Sided):
\kappa \neq 0

κ (“kappa”) here is the population value: how far beyond chance these two clinicians, using this codebook, would agree across all intakes like these, which the sample's .67 estimates. The interval reflects the sampling of interviews, not of clinicians; saying how well clinicians in general agree takes a design with more of them. κ = 0 means agreeing only as often as two clinicians coding independently at their own rates would. That's a very low bar; the interval, not the test, says how good the agreement is.

What Your Data Should Look Like

One row per case and one column per rater, with both columns using exactly the same codes, spelled the same way. Software counts the rows into a square table of the first rater's codes by the second's. A code only one rater used still needs its own row and column; SPSS won't compute kappa unless the table is square.

Example
interviewclinician_aclinician_b
1neitherneither
2neitherdepression
3neitherneither
4neitherneither
5depressiondepression
6depressiondepression
… 94 more rows
B: DepressionB: AnxietyB: NeitherTotal
A: Depression19 (76%)3 (12%)3 (12%)25
A: Anxiety2 (10%)14 (70%)4 (20%)20
A: Neither4 (7%)4 (7%)47 (85%)55
Total252154100

Counts, with each row's percentages.

Simulated data.

Download all 100 rows (data.csv)

Napkin Math

The whole test, one idea at a time. Under each heading, a line says why the step matters, and the green note reads the equation in plain English with the intake-coding study's numbers. Collapse all to read just the headings: they tell the whole story on their own.

  1. 1. Count How Often the Two Clinicians Gave Each Pair of Codes

    Each interview lands in one cell of a 3 × 3 table, depending on the code each clinician gave it. The diagonal holds the agreements; every other cell is a particular kind of disagreement.

    \begin{array}{l|ccc} & \text{B: Dep.} & \text{B: Anx.} & \text{B: Neither} \\ \hline \text{A: Dep.} & n_{11} & n_{12} & n_{13} \\ \text{A: Anx.} & n_{21} & n_{22} & n_{23} \\ \text{A: Neither} & n_{31} & n_{32} & n_{33} \end{array} =\begin{array}{l|ccc} & \text{Dep.} & \text{Anx.} & \text{Neither} \\ \hline \text{Dep.} & 19 & 3 & 3 \\ \text{Anx.} & 2 & 14 & 4 \\ \text{Neither} & 4 & 4 & 47 \end{array}

    n_{11} = 19 interviews

    n_{22} = 14 interviews

    n_{33} = 47 interviews

    n_{11}, n_{22} and n_{33} are the agreements, 19 depression, 14 anxiety and 47 neither. Clinician A's rows add up to 25, 20 and 55; clinician B's columns to 25, 21 and 54. All 100 interviews are in the table.

  2. 2. Find How Often They Gave the Same Code

    The simplest summary is the share of interviews on which the two clinicians agreed. It's easy to read, but it doesn't yet ask how much agreement two clinicians would reach by chance alone.

    p_o = \dfrac{\sum_i n_{ii}}{n} =\dfrac{19 + 14 + 47}{100}

    = .80

    \sum n_{ii} adds up the diagonal, 19 + 14 + 47 = 80 agreements, and n is our 100 interviews. 80 ÷ 100 = .80, so they agreed on 80% of the interviews.

  3. 3. Work Out How Often They Would Agree by Chance Alone

    Two clinicians who each call most interviews “neither” will agree often even if their codes are unrelated. “Chance” here doesn't mean they guess. It's the agreement expected if each kept their own code rates, which reflect real judgment, but the two sets of codes were unrelated interview by interview. That depends only on how often each uses each code.

    p_e = \sum_i p_{i\cdot}\, p_{\cdot i} =.25 \times .25 + .20 \times .21 + .55 \times .54

    = .4015

    p_{i\cdot} and p_{\cdot i} are each clinician's share for a code. Depression .25 × .25 = .0625, anxiety .20 × .21 = .0420 and neither .55 × .54 = .2970, which add up to .4015. Chance alone would produce about 40% agreement, mostly on neither.

  4. 4. Measure Agreement beyond Chance as a Share of What Was Possible

    Take the agreement beyond chance that the clinicians reached, and divide it by the agreement beyond chance there was room for. That's kappa.

    \kappa = \dfrac{p_o - p_e}{1 - p_e} =\dfrac{.80 - .4015}{1 - .4015} = \dfrac{.3985}{.5985}

    = .67

    p_o - p_e = .80 − .4015 = .3985 is how far the clinicians got beyond chance. 1 - p_e = .5985 is how far they could have got. .3985 ÷ .5985 = .67, about two thirds of the way from chance to perfect agreement.

  5. 5. Figure Out How Precisely Kappa Is Estimated

    A different 100 interviews would give a somewhat different kappa. The standard error measures how much; this is Fleiss, Cohen and Everitt's (1969) formula, which works from every cell of the table. It's the standard error for the interval. The test against zero in a later step uses a different one, worked out as if the clinicians agreed only by chance.

    SE = \dfrac{1}{(1 - p_e)^2}\sqrt{\dfrac{\sum_i p_{ii}\big[(1 - p_e) - (p_{\cdot i} + p_{i\cdot})(1 - p_o)\big]^2 + (1 - p_o)^2 \sum_{i \neq j} p_{ij}\,(p_{\cdot i} + p_{j\cdot})^2 - (p_o p_e - 2p_e + p_o)^2}{n}} =\dfrac{1}{(1 - .4015)^2}\sqrt{\dfrac{.1526 + .0040 - .1013}{100}}

    = .066

    The first sum runs over the three agreement cells and comes to .1526; the second, over the six disagreement cells, is .0040 once multiplied by (1 - p_o)^2; the correction term is .1013. So √(.0553 ÷ 100) = .0235, and dividing by (1 - .4015)^2 = .3582 gives SE = .066.

  6. 6. Give a Range of Plausible Values for the True Kappa

    Instead of a single best guess, give the range of kappas for these two clinicians that fit the data. This is a large-sample (Wald) interval. With few cases, a rare code or kappa near 1 it can be off, and can even run past 1. Other intervals, such as a well-built bootstrap interval, may do better, though with very little data none is fully trustworthy.

    \kappa \pm z^{*} \times SE =.6658 \pm 1.96 \times .0657

    = [.54, .79]

    z^{*} = 1.96 holds the middle 95% of a normal distribution. 1.96 × .0657 = .1288, so the range is .6658 ± .1288, from .5370 to .7946, or .54 to .79.

  7. 7. Compare Kappa with No Agreement beyond Chance

    The test asks whether kappa is further from zero than sampling error would explain. It uses a different standard error, worked out as if the clinicians were coding independently.

    z = \dfrac{\kappa}{SE_0}, \quad SE_0 = \dfrac{1}{1 - p_e}\sqrt{\dfrac{\sum_i p_{i\cdot}p_{\cdot i}\big[1 - (p_{\cdot i} + p_{i\cdot})\big]^2 + \sum_{i \neq j} p_{i\cdot}p_{\cdot j}\,(p_{\cdot i} + p_{j\cdot})^2 - p_e^2}{n}} =\dfrac{.6658}{.0729}

    = 9.13

    SE_0 = .073

    SE_0 is the standard error if the clinicians agreed only by chance, .0729 from the two clinicians' code rates. .6658 ÷ .0729 puts kappa 9.13 of those standard errors above zero.

  8. 8. Ask How Surprising This Agreement Would Be If It Were Only Chance

    Finally, ask how often clinicians agreeing only by chance would produce a kappa at least this far from zero. With 100 interviews, almost any real agreement passes this test.

    p = 2 \times P(Z \ge |z|) =2 \times P(Z \ge 9.13) < .001

    P(Z \ge 9.13) is the chance that a standard normal value lands 9.13 or more above zero. It's far smaller than .001, even doubled to count both directions.

Run It in Software

The code below reads the running example's data from data.csv; save it in the same folder you run the code from.

SPSS (version 30, as documented by IBM)
  1. Analyze → Descriptive Statistics → Crosstabs.
  2. Move clinician_a into Row(s) and clinician_b into Column(s).
  3. Click Statistics, check Kappa, and click Continue.
  4. Click OK.

Or paste this syntax:

CROSSTABS
  /TABLES=clinician_a BY clinician_b
  /STATISTICS=KAPPA
  /CELLS=COUNT.

Reading the Output

Read the Crosstabulation first: the diagonal holds the agreements (14 + 19 + 47 = 80 of 100, so po = .80). SPSS sorts the codes alphabetically, so anxiety comes first. Then read Kappa and its Asymptotic Standard Error in the Symmetric Measures table. SPSS doesn't print a confidence interval; build it as κ ± 1.96 × SE from the unrounded values (double-click the table to see more decimals): .6658 ± 1.96 × .0657 = [.54, .79]. With the three-decimal values the upper limit comes out at .795 instead. Approximate T is the z test against κ = 0.

clinician_a * clinician_b Crosstabulation (Count)

clinician_b anxiety depression neither Total
clinician_a anxiety 14 2 4 20
depression 3 19 3 25
neither 4 4 47 55
Total 21 25 54 100

Symmetric Measures

Value Asymptotic Standard Errorᵃ Approximate Tᵇ Approximate Significance
Measure of Agreement Kappa .666 .066 9.130 .000
N of Valid Cases 100

a. Not assuming the null hypothesis. b. Using the asymptotic standard error assuming the null hypothesis.

An Approximate Significance of .000 means p < .001; report it that way.

Output laid out from this page's computed results, not captured from a live run; labels and layout may differ slightly in your version.

R
library(psych)

intake <- read.csv("data.csv")
table(intake$clinician_a, intake$clinician_b)

ck <- cohen.kappa(intake[, c("clinician_a", "clinician_b")])
ck
sqrt(ck$var.kappa)   # Fleiss, Cohen & Everitt's SE
ck$confid[1, ]
             anxiety depression neither
  anxiety         14          2       4
  depression       3         19       3
  neither          4          4      47

Call: cohen.kappa1(x = x, w = w, n.obs = n.obs, alpha = alpha, levels = levels, 
    w.exp = w.exp)

Cohen Kappa and Weighted Kappa correlation coefficients and confidence boundaries 
                 lower estimate upper
unweighted kappa  0.54     0.67  0.79
weighted kappa    0.49     0.65  0.82

 Number of subjects = 100 
[1] 0.06567259
    lower  estimate     upper 
0.5371153 0.6658312 0.7945472 

Printing ck shows an “unweighted kappa” row and a “weighted kappa” row. Read the unweighted row. The weighted row uses quadratic weights on the codes' alphabetical order, which means nothing for unordered categories like these. psych's interval uses Fleiss, Cohen and Everitt's (1969) standard error, the same one as this page; it doesn't print the test against zero.

Output from a real run: R 4.6.1 (psych 2.6.5), run 2026-10-10.

Python
import pandas as pd
from sklearn.metrics import cohen_kappa_score
from statsmodels.stats.inter_rater import cohens_kappa

intake = pd.read_csv("data.csv")
cohen_kappa_score(intake["clinician_a"], intake["clinician_b"])   # 0.6658

table = pd.crosstab(intake["clinician_a"], intake["clinician_b"])
table
# clinician_b  anxiety  depression  neither
# clinician_a
# anxiety           14           2        4
# depression         3          19        3
# neither            4           4       47

result = cohens_kappa(table)
print(result)
                  Simple Kappa Coefficient
              --------------------------------
              Kappa                     0.6658
              ASE                       0.0657
              95% Lower Conf Limit      0.5371
              95% Upper Conf Limit      0.7945

                 Test of H0: Simple Kappa = 0

              ASE under H0              0.0729
              Z                         9.1302
              One-sided Pr >  Z         0.0000
              Two-sided Pr > |Z|        0.0000

scikit-learn's cohen_kappa_score gives κ only. statsmodels' cohens_kappa takes the square table and gives the standard error (ASE), the 95% interval, and the test against zero with its own standard error under the null (ASE under H0). A two-sided p of 0.0000 means p < .001 (it's about 7 × 10⁻²⁰).

Output laid out from this page's computed results, not captured from a live run; labels and layout may differ slightly in your version.

Impact

Effect Size

Kappa is this test's measure of size. It rescales agreement so that 0 means chance level and 1 means perfect, which puts agreement in context: 80% agreement means less when chance alone would give 70% than when it would give 30%. It doesn't make kappas comparable across samples with different mixes of cases, as the examples below show.

\kappa = \dfrac{p_o - p_e}{1 - p_e} = \dfrac{.80 - .40}{1 - .40} = .67

The clinicians agreed on 80% of interviews, but 40% agreement was expected by chance because both called over half the interviews “neither.” Of the 60 points of agreement beyond chance that were possible, they reached about 40, so κ = .67: substantial, by convention.

Kappa depends on how common each category is, not just on how well the raters agree. When one category dominates, chance agreement is high and even a few disagreements pull kappa down sharply; Feinstein and Cicchetti (1990) call this the first of kappa's paradoxes.

Suppose the same two clinicians coded 100 interviews only for depression, yes or no, and depression was rare: they agreed on 5 yes and 85 no, and split on 10, five each way. That's 90% agreement, but chance alone would give 82%, so κ is only .44. With yes and no equally common, the same 90% agreement would give κ = .80.

Kappa also moves when the two raters use the codes at different rates, but the other way: for the same raw agreement, unequal totals lower chance agreement and so raise kappa, Feinstein and Cicchetti's second paradox. Unequal totals also cap kappa below 1 for that table, because with those totals some cases must be coded differently; raters whose code rates differ here could still match perfectly on another sample. So compare the two raters' totals too. Here they nearly match (depression 25 and 25, anxiety 20 and 21, neither 55 and 54), so the most kappa could reach is .98.

That's why kappa should travel with the raw agreement and the table (McHugh, 2012), and why agreement for each category is worth reporting too (Cicchetti & Feinstein, 1990), especially for a rare code. Byrt, Bishop and Carlin (1993) also suggest reporting how unbalanced the categories and the two raters' totals are. Benchmarks are conventions. Whether two clinicians who disagree on one intake in five, mostly about anxiety, are consistent enough depends on what the codes will be used for.

Benchmarks Cohen's Kappa at a Glance
Poor
κ < .00
Slight
.00–.20
Fair
.21–.40
Moderate
.41–.60
Substantial
.61–.80
Almost Perfect
.81–1.00

Full benchmarks and caveats ↑

Statistical Significance

p answers one narrow question: if the two raters agreed only as often as chance would produce, how often would kappa land at least this far from zero, in either direction? Below the conventional α = .05, the result is called statistically significant. The test uses a standard error worked out as if the raters were coding independently (Fleiss, Cohen & Everitt, 1969), which is why it differs from the one behind the interval.

If the clinicians were agreeing only by chance, a kappa at least as far from zero as .67, in either direction, would essentially never turn up across 100 interviews: z = 9.13, p < .001.

For reliability, that's rarely the interesting question. Nobody trains two clinicians expecting chance-level agreement, and with a reasonable number of cases almost any real agreement beats zero, including agreement far too poor to use. The question that matters is how high κ is and how precisely it's estimated, which is what the interval answers. If you need a pass mark, set it before collecting the data, say κ = .60, and check whether the interval's lower limit clears it. Here it doesn't: .54 is below .60.

p is not the probability that the clinicians agree only by chance, and it says nothing about whether their agreement is good enough. That's what κ and its interval are for.

Benchmarks p at a Glance
Very Strong
p < .001
Strong
.001 ≤ p < .01
Significant
.01 ≤ p < .05
Weak
.05 ≤ p < .10
Little
p ≥ .10

Strength of evidence against the null hypothesis.

Full benchmarks and caveats ↑

Power and Sample Size

Power is the chance that a study detects an effect that's really there. For kappa, a test of agreement better than chance is usually a low bar, though power can still matter with few cases, a rare code, or a test against a minimum other than zero. The more useful planning question is usually precision: how many cases you need for the interval around κ to be narrow enough to be useful, say no wider than ±.10. Cantor (1996) frames it that way: choose the sample size so that the standard error won't exceed a value you set in advance.

The standard error shrinks with the square root of the number of cases, and it also depends on how often each code is used, so a pilot study or an earlier study with a similar mix of categories gives a workable guess.

Suppose the true kappa were our .67, with the clinicians using depression, anxiety and neither at our rates (about 25%, 20% and 55%), and their disagreements spread across codes in proportion to how often each is used, as the planner below assumes. Fleiss, Cohen and Everitt's (1969) standard error then works out to √(0.4375 ÷ n), .066 for 100 interviews (our own table gives almost exactly the same, .066), so the interval runs about ±.13. To get it to ±.10 we'd need SE ≤ .10 ÷ 1.96 = .051, which takes 0.4375 × 1.96² ÷ .10² = 168.1, rounded up to 169 interviews. Even then, an interval of .57 to .77 would straddle the .61 line between moderate and substantial; telling those labels apart near the line takes several hundred cases.

Plan a kappa study around the width of the interval you need, not around the test against zero, using the category mix you expect. The planner assumes both raters use the codes at the rates you enter and that disagreements are spread across codes in proportion to how often they're used; with two codes, that's the table Cantor (1996) plans from when both raters use them equally often, and it reproduces his Table 1. Try it:

Other Info

Follow-Up and Post Hoc Tests

None needed. This test answers a single question, so there are no planned contrasts or post hoc tests to run.

References

  • Cohen, J. (1960). A coefficient of agreement for nominal scales. Educational and Psychological Measurement, 20(1), 37–46. https://doi.org/10.1177/001316446002000104
  • Byrt, T., Bishop, J., & Carlin, J. B. (1993). Bias, prevalence and kappa. Journal of Clinical Epidemiology, 46(5), 423–429. https://doi.org/10.1016/0895-4356(93)90018-V
  • Fleiss, J. L., Cohen, J., & Everitt, B. S. (1969). Large sample standard errors of kappa and weighted kappa. Psychological Bulletin, 72(5), 323–327. https://doi.org/10.1037/h0028106
    “Formulas for the standard errors of these two statistics have been given in the literature, but they are in error.” (Abstract, p. 323)
  • Landis, J. R., & Koch, G. G. (1977). The measurement of observer agreement for categorical data. Biometrics, 33(1), 159–174. https://doi.org/10.2307/2529310
    “κ is directly analogous to the intraclass correlation coefficient obtained from ANOVA models for quantitative measurements” (p. 163)
    “Although these divisions are clearly arbitrary, they do provide useful “benchmarks” for the discussion of the specific example in Table 1.” (p. 165)
  • Feinstein, A. R., & Cicchetti, D. V. (1990). High agreement but low kappa: I. The problems of two paradoxes. Journal of Clinical Epidemiology, 43(6), 543–549. https://doi.org/10.1016/0895-4356(90)90158-L
    “In one paradox, a high value of p0 can be drastically lowered by a substantial imbalance in the table's marginal totals either vertically or horizontally.” (Abstract)
  • Cicchetti, D. V., & Feinstein, A. R. (1990). High agreement but low kappa: II. Resolving the paradoxes. Journal of Clinical Epidemiology, 43(6), 551–558. https://doi.org/10.1016/0895-4356(90)90159-M
    “the omnibus value of kappa should always be accompanied by separate individual values of ppos and pneg” (Abstract)
  • McHugh, M. L. (2012). Interrater reliability: The kappa statistic. Biochemia Medica, 22(3), 276–282. https://doi.org/10.11613/BM.2012.031
    “Perhaps the best advice for researchers is to calculate both percent agreement and kappa.” (Conclusions)
    “Cohen's suggested interpretation may be too lenient for health related studies because it implies that a score as low as 0.41 might be acceptable.” (Cohen's kappa)
  • Cantor, A. B. (1996). Sample-size calculations for Cohen's kappa. Psychological Methods, 1(2), 150–153. https://doi.org/10.1037/1082-989X.1.2.150
    “When designing a study to produce an estimate κ̂ of kappa, the sample size should be chosen so that the standard error of κ̂ will not exceed a preassigned value.” (p. 151)
    “can be written in the form Q/N” (p. 151)
  • Sim, J., & Wright, C. C. (2005). The kappa statistic in reliability studies: Use, interpretation, and sample size requirements. Physical Therapy, 85(3), 257–268. https://doi.org/10.1093/ptj/85.3.257
    “Factors that can influence the magnitude of kappa (prevalence, bias, and non-independent ratings) are discussed” (Abstract)
  • Cohen, J. (1968). Weighted kappa: Nominal scale agreement with provision for scaled disagreement or partial credit. Psychological Bulletin, 70(4), 213–220. https://doi.org/10.1037/h0026256
  • Fleiss, J. L. (1971). Measuring nominal scale agreement among many raters. Psychological Bulletin, 76(5), 378–382. https://doi.org/10.1037/h0031619
  • Muff, S., Nilsen, E. B., O'Hara, R. B., & Nater, C. R. (2022). Rewriting results sections in the language of evidence. Trends in Ecology & Evolution, 37(3), 203–210. https://doi.org/10.1016/j.tree.2021.10.009
    “we suggest language of evidence that allows for a more nuanced approach to communicate scientific findings as a simple and intuitive alternative to statistical significance testing” (Abstract)

Spot an error? Something still confusing? Tell us at support@statsforpsychology.com.