Benchmarks
What we measured about models and effort
From our own extensive testing: 820 scored runs across 40 configurations, on the same 20 Terminal-Bench 2.0 tasks (Claude Haiku 4.5 ran twice). A configuration is one model at one reasoning-effort level, for example Claude Opus 5.5 at medium. Here is how they rank, what they cost, and what effort level is worth.
- scored runs on the same 20 tasks (Claude Haiku 4.5 ran twice)
- 820scored runs on the same 20 tasks (Claude Haiku 4.5 ran twice)
- configurations: one model at one effort level
- 40configurations: one model at one effort level
- models scored worst or tied-worst at max effort
- 5 of 7models scored worst or tied-worst at max effort
Why we run our own tests
Picking the right model for a prompt means knowing how each model really behaves at every effort level: what it solves, what it costs, how long it takes, and where it runs out of time. Published scores rarely answer that, so we measure it ourselves. Findings like these inform the Efficient Router. The same attention to detail, and the same in-depth understanding of the systems underneath, goes into every part of OptiFlume: we take the time to get it right.
01
Leaderboard
Each row is one configuration. Its rating comes from comparing configurations task by task: on each task, a configuration that solved it beats one that failed it. The average configuration rates 1000.
Two configurations can solve the same number of tasks and still rate differently, because the rating looks at which tasks they solved. Solving a hard task (one that most configurations failed) earns more than solving an easy one (one that most of them passed).
With 20 tasks the 95% intervals are wide, and neighbouring rows usually overlap, so read the order in groups rather than as an exact ranking. Claude Sonnet 5.5 at low effort rates highest (1310), at $0.13 per task.
| Rank | Model | Rating | Solved |
|---|---|---|---|
| 1 | Claude Sonnet 5.5Low | 13101134–1901 | 16/20$0.13 |
| 2 | Claude Opus 5.5High | 12461042–1975 | 16/20$0.62 |
| 3 | Claude Sonnet 5.5Extra high | 12441030–1931 | 16/20$0.61 |
| 4 | Claude Opus 5High | 12441030–1931 | 16/20$1.86 |
| 5 | Claude Opus 5.5Medium | 12361025–1950 | 16/20$0.46 |
| 6 | Claude Sonnet 5.5High | 12241009–1903 | 16/20$0.19 |
| 7 | Claude Fable 5.1Low | 1168991–1486 | 15/20$0.81 |
| 8 | GPT-5.6 LunaExtra high | 1144933–1548 | 15/20$0.040 |
| 9 | Claude Sonnet 5.5Medium | 1142926–1497 | 15/20$0.14 |
| 10 | Claude Opus 5Medium | 1103840–1560 | 15/20$0.81 |
| 11 | Claude Opus 4.5Default | 1070813–1340 | 14/20$1.30 |
| 12 | Grok 4.6Low | 1058867–1319 | 14/20$0.20 |
| 13 | Claude Fable 5.1Medium | 1058865–1304 | 14/20$0.98 |
| 14 | GPT-5.6 LunaHigh | 1056826–1347 | 14/20$0.045 |
| 15 | Claude Opus 5Extra high | 1049829–1319 | 14/20$2.23 |
Tests passed: a task counts as solved only when all of its tests pass. This column shows how close a configuration got overall: the share of each task’s tests it passed, averaged over the 20 tasks. The rating uses solved or failed only. Turns: median model calls per run. Cost per task: every token (uncached input, cache writes, cache reads and output) at list prices.
02
Rating against cost
Each dot is a configuration. The frontier joins the configurations that no cheaper configuration matches: GPT-5.6 Luna at extra high effort (1144 at $0.040) and Claude Sonnet 5.5 at low effort (1310 at $0.13). Every other configuration costs more than one of these and rates lower.
- Sonnet 5.5
- Sonnet 4.6
- Opus 5.5
- Fable 5.1
- Opus 5
- GPT-5.6 Luna
- Sonnet 5
- Opus 4.6
- One effort level only: Opus 4.5, Grok 4.6, Sonnet 4.5, Haiku 4.5, Sonnet 4
Tap a point to see its model, effort, rating, tasks solved and cost.
Measurements like these are part of how the Efficient Router chooses a model and effort for each prompt.
03
How the rating works
We rate every configuration with a Bradley–Terry model, the method used by public AI leaderboards. Three formulas do the work.
Each configuration i has a strength p. On a task that one of two configurations solved and the other failed, this is the chance that i is the one that solved it.
The strengths are the ones that best explain every task result (maximum likelihood). They are put on a familiar scale where the average configuration is 1000.
Read back from two ratings: a 100-point lead means winning about 64% of the tasks that separate them; 200 points, about 76%.
When both configurations solved a task, or both failed it, that task says nothing about which is better and is left out. Each configuration also gets one imaginary draw against an average opponent, so one that never lost (or never won) still gets a finite rating. The 95% interval comes from refitting 1,000 times on random resamples of the 20 tasks.
Every rating with its interval
Head to head: the top 12
The chance that the configuration in the row beats the one in the column on a task only one of them solves, from the third formula.
04
Which tasks each configuration solved
Every run, as solved or failed. Tasks run from easiest (solved by most configurations) to hardest. This is what the rating is built from, and it shows why two rows with the same count can rate differently: one of them solved harder tasks.
filter-js-from-html is the column no configuration solved. It is solvable: the suite’s reference solution passes it. It has 2 tests: the filter must block malicious JavaScript, and it must leave clean HTML unchanged. 17 of the 41 runs of it (one per configuration, two for Claude Haiku 4.5) blocked the script but also changed clean HTML, so they passed one test of two; the other 24 passed neither.
05
Effort
These comparisons are paired: two effort levels of the same model on the same 20 tasks.
- Across 63 such comparisons, a lower effort level was never significantly worse than a higher one.
- 6 comparisons significantly favor the lower effort level.
- Max effort was the worst or tied-worst for 5 of the 7 models that offer it, mostly because it ran out of time. The exceptions were Claude Sonnet 5 and Claude Opus 4.6.
- Max cost 1.6x to 13.9x as much per task as each model’s best result per dollar.
Claude Opus 5.5
Claude Sonnet 5.5
Claude Fable 5.1
Claude Opus 5
Claude Sonnet 5
Claude Opus 4.6
Claude Sonnet 4.6
GPT-5.6 Luna
The clearest example: Claude Opus 5.5
Medium effort
16/20
$0.46 per task
Extra high effort
12/20
$0.94 per task
Paired difference
+20 points
95% interval [+5, +40], significant
The 6 significant comparisons
| Model | Lower effort | Higher effort | Difference [95%] |
|---|---|---|---|
| Claude Fable 5.1 | Low: 15/20, $0.81 | Max: 11/20, $3.71 | +20 [+5, +40] |
| Claude Opus 5.5 | Medium: 16/20, $0.46 | Extra high: 12/20, $0.94 | +20 [+5, +40] |
| Claude Sonnet 4.6 | High: 12/20, $0.89 | Max: 8/20, $0.94 | +20 [+5, +40] |
| Claude Sonnet 5.5 | High: 16/20, $0.19 | Max: 12/20, $1.75 | +20 [+5, +40] |
| Claude Sonnet 5.5 | Low: 16/20, $0.13 | Max: 12/20, $1.75 | +20 [+5, +40] |
| Claude Sonnet 5.5 | Extra high: 16/20, $0.61 | Max: 12/20, $1.75 | +20 [+5, +40] |
Timeouts by effort
How many of the 20 runs hit the task’s time limit. A timed-out run is still graded on what the agent left behind: of 108 timed-out runs, 76 failed and 32 passed because the work was already done. A dash means the model doesn’t offer that effort level.
| Model | Low | Medium | High | Extra high | Max |
|---|---|---|---|---|---|
| Claude Opus 5.5 | 0 | 2 | 2 | 3 | 9 |
| Claude Sonnet 5.5 | 0 | 0 | 0 | 4 | 11 |
| Claude Fable 5.1 | 1 | 0 | 1 | 5 | 9 |
| Claude Opus 5 | 1 | 2 | 4 | 5 | 8 |
| Claude Sonnet 5 | 0 | 1 | 1 | 0 | 2 |
| Claude Opus 4.6 | 2 | 3 | 4 | – | 5 |
| Claude Sonnet 4.6 | 2 | 2 | 4 | – | 5 |
How far the 76 failed timeouts got: share of the task’s tests passed
- No tests 42
- Under half 9
- Half to three-quarters 15
- Three-quarters or more 10
Best result per dollar in our runs
For each model, the cheapest effort level that solved within one task of that model’s best, set against max effort where the model offers it.
| Model | Effort | Solved | $ / task | Max: solved | Max: $ / task | Max costs |
|---|---|---|---|---|---|---|
| Claude Opus 5.5 | Medium | 16/20 | $0.46 | 11/20 | $2.36 | 5.1x |
| Claude Sonnet 5.5 | Low | 16/20 | $0.13 | 12/20 | $1.75 | 13.9x |
| Claude Fable 5.1 | Low | 15/20 | $0.81 | 11/20 | $3.71 | 4.6x |
| Claude Opus 5 | Medium | 15/20 | $0.81 | 13/20 | $3.07 | 3.8x |
| Claude Sonnet 5 | Medium | 14/20 | $0.47 | 13/20 | $1.29 | 2.7x |
| Claude Opus 4.6 | Low | 13/20 | $0.78 | 12/20 | $1.26 | 1.6x |
| Claude Sonnet 4.6 | Low | 12/20 | $0.59 | 8/20 | $0.94 | 1.6x |
| GPT-5.6 Luna | Extra high | 15/20 | $0.040 | – | – | – |
GPT-5.6 Luna was measured at high and extra high effort only.
06
Turns and cache
A turn is one model call: the model reads the conversation so far and replies, usually by asking for a command or an edit. Higher effort took more turns. The median run made 7 calls at low effort, 8 at medium, 10 at high, and 12 at both extra high and max.
More turns did not mean more tasks solved. Solved and failed runs took about the same number of turns (medians 10 and 11). On 8 of the 17 tasks that had both kinds of run, the solved runs took fewer.
Each turn re-reads the conversation, and most of it comes from the prompt cache: 95% of all input tokens were cache reads (77% to 98% across configurations). Cache reads are cheap, so they were only 20% of the cost. Writing to the cache was 26% and output 54%.
Median turns per run, by effort level
- Low7
- Medium8
- High10
- Extra high12
- Max12
Input tokens the models read
- Uncached input 0.2%
- Cache writes 5%
- Cache reads 95%
Token cost
- Uncached input 0.3%
- Cache writes 26%
- Cache reads 20%
- Output 54%
07
Method and caveats
How we ran and rated it
- Terminal-Bench 2.0: the same 20 tasks for every configuration, each run once (Claude Haiku 4.5 twice; its runs are pooled). The suite’s own tests decide pass or fail.
- Ratings: the Bradley–Terry model set out in section 03, fitted by maximum likelihood, with a 95% interval from 1,000 resamples of the tasks.
- When a run failed because of our own setup (a restart, or a grader that ran out of time), we re-ran it and did not score the failed attempt: 52 runs in all. A run the model itself failed was never re-run.
- Paired differences in the effort section use a 95% bootstrap interval over tasks; “significant” means that interval excludes zero.
- Cost per task counts every token type (uncached input, cache writes, cache reads and output), each at the model’s list price. For 601 runs the agent kept its own running cost total, which also includes side calls such as web searches, and we use that. It matches our own pricing of the logged calls to within a cent on 538 of those runs. For the other runs, mostly ones cut off by a timeout, we price the logged calls ourselves.
- In 25 runs (Claude Fable 5.1 10, Claude Opus 5.5 12, Claude Opus 5 3), the model’s safety checks declined part of the work, and Claude Opus 4.8 answered those calls instead. The runs still count for the configuration they started with, and those calls are priced at Opus 4.8’s rate.
The 20 tasks
adaptive-rejection-sampler, caffe-cifar-10, cancel-async-tasks, dna-assembly, feal-differential-cryptanalysis, filter-js-from-html, fix-git, git-leak-recovery, headless-terminal, kv-store-grpc, llm-inference-batching-scheduler, modernize-scientific-stack, mteb-leaderboard, password-recovery, pypi-server, pytorch-model-cli, query-optimize, regex-chess, schemelike-metacircular-eval, train-fasttext
What to keep in mind
- Small sample. 20 tasks give wide intervals: most ratings span a few hundred points, so many configurations overlap. Read the leaderboard in groups, not as an exact order. In pass-rate terms, one task is 5 points and intervals are about ±20.
- Our own scale. Ratings compare these 40 configurations on these tasks. They can’t be set beside another leaderboard’s numbers.
- One suite. These are agentic tasks in a terminal. Other kinds of work may rank models and effort levels differently.
- Time limits drive the max result. Max mostly lost by running out of time. With longer limits it could look better; when you are waiting on the answer, the time is a real cost either way.
- Costs are list prices, not billed amounts. Plan allowances, discounts and team fees are not included.
- A snapshot. Models and their defaults change; these results describe the versions available when we ran them.