CodePanel

Claude Haiku 5.5 vs Gemini 3.8 Flash

Reading a 26.2K-token pull request costs $0.0197 on Gemini 3.8 Flash, 7.5× the $0.0026 it costs on Claude Haiku 5.5. Claude Haiku 5.5 is a economy model and Gemini 3.8 Flash a mid-range one. The benchmark cannot separate their recall: Claude Haiku 5.5 minus Gemini 3.8 Flash is −4 pts (95% interval −22 pts to +14 pts).

Side by side

Claude Haiku 5.5 and Gemini 3.8 Flash side by side
FigureClaude Haiku 5.5Gemini 3.8 Flash
Price tierEconomyMid-range
Bugs caughtshare of known bugs64%68% (better)
False alarmsper clean PR1.41.0 (better)
Cost per reviewmeasured$0.0038 (better)$0.0862
Cost per bug caught$0.0064 (better)$0.1166
Exact linecatches on the expected lines82%94% (better)
Review timemean15s (better)427s
Typical review calllist price$0.0038 (better)$0.0287
Input / 1M tokens$0.10 (better)$0.75
Output / 1M tokens$0.50 (better)$3.75
Context window1M1M

Head to head

The known bugs both were scored on, by who caught each in at least one run.

Of 42 known bugs both were scored on: Both 22Only Claude Haiku 5.5 6Only Gemini 3.8 Flash 9Neither 5

By language

Share of known bugs each model caught, by language
ModelAllTypeScript6 bugsGo4 bugsJava4 bugsRust4 bugsC#3 bugsJavaScript3 bugsKotlin3 bugsPHP3 bugsPython3 bugsRuby3 bugsSwift3 bugsC++2 bugsC1 bug
Claude Haiku 5.564%83%75%40%75%67%33%67%100%39%67%67%50%0%
Gemini 3.8 Flash68%83%75%43%75%78%67%0%50%83%100%100%50%50%

Where they differ

Of the 42 known bugs both were scored on, both caught 22 and neither caught 5. Claude Haiku 5.5 caught 6 bugs that Gemini 3.8 Flash missed: 2 in Kotlin, 1 in Go, 1 in JavaScript, 1 in PHP and 1 in TypeScript. Gemini 3.8 Flash caught 9 bugs that Claude Haiku 5.5 missed: 2 in JavaScript, 1 in C, 1 in C#, 1 in Go, 1 in Python, 1 in Ruby, 1 in Swift and 1 in TypeScript, most of them logic bugs.

On pull requests with no known bug, Claude Haiku 5.5 raised 1.4 false alarms per review and Gemini 3.8 Flash 1. A measured review cost $0.0038 on Claude Haiku 5.5, 96% less than $0.0862 on Gemini 3.8 Flash.

Each known bug, and how often each model caught it
Pull requestLanguage · kindClaude Haiku 5.5Gemini 3.8 Flash
colinhacks/zodfeat(v4): parse input containing reference cyclesTypeScript · Resource handling1/10/1
go-gitea/giteaperf(gitdiff): optimize inline diff highlighting using cacheGo · Error handling1/10/1
kotest/kotestRefactor eventually to ensure wall-clock time usageKotlin · Error handling1/10/1
ktorio/ktorKTOR-9171 Redesign ByteReadChannel.readUTF8Line APIKotlin · Logic1/10/1
nodejs/undicifeat: add configurable maxPayloadSize for WebSocketJavaScript · Security1/10/1
symfony/symfony[Security] Allow multiple OIDC discovery endpointsPHP · Security1/10/1
TanStack/queryfix(query-core): fix hydration bugs for already resolved promisesTypeScript · Logic0/11/1
aio-libs/aiohttpkeep websocket compression state across interleaved control framesPython · Logic0/12/2
c-ares/c-aresEvent Thread could stall when not notified of new queries on existing connections that are in a bad stateC · Resource handling0/11/2
dotnet/orleansfix(serialization): cap codec allocationsC# · Logic0/11/1
go-chi/chifeat: middleware.ClientIP, a replacement for middleware.RealIPGo · Security0/11/1
pinojs/thread-streamrefactor: replace setTimeout with Atomics.waitAsyncJavaScript · Concurrency0/12/2
pointfreeco/swift-navigationUIKit: Fix switch presented child double dismissSwift · Logic0/12/2
rails/railsReimplement Action Cable redis adapter with redis-clientRuby · Logic0/11/1
sindresorhus/p-throttleAdd `weight` optionJavaScript · Logic0/11/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 Haiku 5.5 and Gemini 3.8 Flash.