What we found
- We ran 9 language models on 25 checkable tasks, 3 runs each at temperature 0, every answer scored by a program (run of 6 November 2026; categories: reasoning, extraction, dates and units, instructions, knowledge). Five models answered all 25 tasks correctly (gpt-5.4, gpt-5.5, gpt-6-luna, gpt-6.1-sol, gpt-6.1-terra), two scored 24 of 25 (gpt-4.1, gpt-5.4-mini), one 23 of 25 (gpt-4o-mini) and one 22 of 25 (gpt-4.1-mini).
- Of the 36 possible pairs of those 9 models, 0 differ at the 5% level on an exact two-sided sign test over the 25 tasks. The closest case is gpt-4.1-mini against each model that scored 25 of 25: it lost 3 tasks and won none, which gives p = 0.25.
- The 4 November run of 6 models (15 pairs) gives the same picture: 0 of 15 pairs differ at the 5% level.
- Repeating a run did not add information about the tasks. Across the 225 model-and-task pairs of the 6 November run, none had runs that disagreed on whether the answer was correct (0 of 225), and none did on the 4 November run either (0 of 150).
- For the sign test to reach p below 0.05, the weaker model must lose at least 6 tasks that the stronger one gets right while winning none back: 2 x 0.56 = 0.031, whereas 5 tasks gives 2 x 0.55 = 0.0625.
- So the number of tasks needed for a gap to show is at least 6 divided by the gap as a share of tasks, in the best case: a 4-point gap needs 150 tasks, 8 points 75 tasks, 12 points 50 tasks, 16 points 38 tasks and 20 points 30 tasks (6 divided by 0.04, 0.08, 0.12, 0.16 and 0.20, rounded up). Each task the weaker model wins back raises the number needed.
- These results are for one task set of 25 checkable tasks and 9 models from one provider's API at temperature 0. A different task set, or answers that need a human or a model to judge, would change the numbers.
Where the numbers come from
The raw results (one row per model, task and run, with correct or not) and the scoring code are the bench's own; the counts above are read from them. The p-values are exact binomial (sign test on tasks where exactly one of the two models is right). A task counts as right for a model when all 3 of its runs are right.
What we are unsure of
The best-case table assumes the weaker model never wins a task back and that tasks are independent. Real task sets overlap in what they test, which makes the effective number smaller than the count.