Claude Opus 5.5 vs Claude Sonnet 5.5
Reading a 26.2K-token pull request costs $0.1048 on Claude Opus 5.5, 2.0× the $0.0524 it costs on Claude Sonnet 5.5. Claude Opus 5.5 is a frontier model and Claude Sonnet 5.5 a mid-range one. The benchmark cannot separate their recall: Claude Opus 5.5 minus Claude Sonnet 5.5 is +13 pts (95% interval −1 pt to +27 pts).
Side by side
| Figure | Claude Opus 5.5 | Claude Sonnet 5.5 |
|---|---|---|
| Price tier | Frontier | Mid-range |
| Bugs caughtshare of known bugs | 90% (better) | 77% |
| False alarmsper clean PR | 1.7 (better) | 2.0 |
| Cost per reviewmeasured | $0.1525 | $0.0571 (better) |
| Cost per bug caught | $0.1921 | $0.083 (better) |
| Exact linecatches on the expected lines | 89% (better) | 82% |
| Review timemean | 33s | 11s (better) |
| Typical review calllist price | $0.1532 | $0.0766 (better) |
| Input / 1M tokens | $4.00 | $2.00 (better) |
| Output / 1M tokens | $20.00 | $10.00 (better) |
| Context window | 1M | 1M |
Head to head
The known bugs both were scored on, by who caught each in at least one run.
By language
| Model | All | TypeScript6 bugs | Go4 bugs | Java4 bugs | Rust4 bugs | C#3 bugs | JavaScript3 bugs | Kotlin3 bugs | PHP3 bugs | Python3 bugs | Ruby3 bugs | Swift3 bugs | C++2 bugs | C1 bug |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Claude Opus 5.5 | 90% | 100% | 50% | 78% | 100% | 100% | 100% | 67% | 100% | 100% | 89% | 100% | 100% | 100% |
| Claude Sonnet 5.5 | 77% | 83% | 50% | 45% | 100% | 56% | 100% | 67% | 67% | 67% | 100% | 100% | 100% | 100% |
Of the 42 known bugs both were scored on, both caught 31 and neither caught 1. Claude Opus 5.5 caught 8 bugs that Claude Sonnet 5.5 missed: 2 in Java, 1 in C#, 1 in Go, 1 in Kotlin, 1 in PHP, 1 in Python and 1 in TypeScript, most of them logic bugs. Claude Sonnet 5.5 caught 2 bugs that Claude Opus 5.5 missed: 1 in Go and 1 in Kotlin.
On pull requests with no known bug, Claude Opus 5.5 raised 1.7 false alarms per review and Claude Sonnet 5.5 2. A measured review cost $0.1525 on Claude Opus 5.5, 2.7× the cost of $0.0571 on Claude Sonnet 5.5.
| Pull request | Language · kind | Claude Opus 5.5 | Claude Sonnet 5.5 |
|---|---|---|---|
| TanStack/queryfix(query-core): fix hydration bugs for already resolved promises | TypeScript · Logic | 1/1 | 0/1 |
| aio-libs/aiohttpkeep websocket compression state across interleaved control frames | Python · Logic | 1/1 | 0/1 |
| doctrine/ormFix collection filtering API for IN/NOT IN comparisons that require type conversions | PHP · Logic | 1/1 | 0/1 |
| dotnet/orleansfix(serialization): cap codec allocations | C# · Logic | 1/1 | 0/1 |
| iBotPeaches/Apktoolrefactor: Improve renaming/injection of resources in stripped APKs | Java · Security | 1/1 | 0/1 |
| ktorio/ktorKTOR-9171 Redesign ByteReadChannel.readUTF8Line API | Kotlin · Logic | 1/1 | 0/1 |
| traefik/traefikAdd the option to define custom cipher suites for backend serversTransport | Go · API misuse | 1/1 | 0/1 |
| jhy/jsoupStore cached child els in Attributes, not field | Java · Concurrency | 1/2 | 0/2 |
| go-chi/chifeat: middleware.ClientIP, a replacement for middleware.RealIP | Go · Security | 0/1 | 1/1 |
| kotest/kotestFix DataClassEq comparator | Kotlin · Logic | 0/1 | 1/1 |
Defects caught over all runs: a PR reviewed three times with one known bug shows 3/3 when it was caught every time.
Every bug each was scored on: Claude Opus 5.5 and Claude Sonnet 5.5.