AI code review leaderboard
How well each model reviews real pull requests: the known bugs it catches, the false alarms it raises on clean changes, and what a review costs. Every model a CodePanel panel can run is listed at current list price, and quality scores are published as each model completes the full test set.
- Best overall90%caughtClaude Opus 5.5
- Best value$0.0514per bug caughtGPT-6.1 Sol
- Fewest false alarms0.9per clean PRGPT-6.1 Sol
- Best open-weight61%caughtGLM-5.3 Flash (Workers AI)
All providers
| Compare | |||||
|---|---|---|---|---|---|
| 1= | Claude Opus 5.5Anthropic · Frontier | 90% | 1.7 | $0.1525 | |
| 1= | GPT-6.1 SolOpenAI · Mid-range | 89% | 0.9 | $0.0401 | |
| 1= | Gemini 4 ArgonGoogle · Mid-range | 82% | 1.1 | $0.0527 | |
| 1= | Claude Sonnet 5.5Anthropic · Mid-range | 77% | 2.0 | $0.0571 | |
| 1= | GPT-5.6 SolOpenAI · Frontier | 72% | 1.2 | $0.1127 | |
| 1= | Gemini 3.8 FlashGoogle · Mid-range | 68% | 1.0 | $0.0862 | |
| 1= | GPT-6 LunaOpenAI · Economy | 67% | 0.7 | $0.0028 | |
| 1= | Claude Haiku 5.5Anthropic · Economy | 64% | 1.4 | $0.0038 | |
| 2= | Gemini 3.1 ProGoogle · Mid-range | 67% | 0.8 | $0.2499 | |
| 2= | GLM-5.3 Flash (Workers AI)Z.ai · Economy · open weights | 61% | 1.8 | $0.0035 | |
| 3 | GLM-5.3 (Workers AI)Z.ai · Mid-range · open weights | 61% | 1.9 | $0.0311 | |
| 4 | DeepSeek V4 Pro (Workers AI)DeepSeek · Mid-range · open weights | 54% | 2.9 | $0.0643 | |
| 5 | DeepSeek V4 Flash (Workers AI)DeepSeek · Economy · open weights | 49% | 1.3 | $0.0178 | |
| 8 | GPT-OSS 120B (Workers AI)OpenAI · Economy · open weights | 40% | 2.5 | $0.0075 | |
| 11 | Kimi K2.7 Code (Workers AI)Moonshot · Mid-range · open weights | 38% | 2.6 | $0.0567 | |
| 13 | Gemma 4 26B A4B (Workers AI)Google · Economy · open weights | 26% | 0.4 | $0.0048 | |
| 16 | Gemini 3.5 Flash-LiteGoogle · Economy | 11% | 0.4 | $0.0059 | |
| – | Claude Fable 5Anthropic · Frontier | – | – | $0.3829 | |
| – | Claude Fable 5.1Anthropic · Frontier | – | – | $0.3829 | |
| – | Claude Haiku 4.5Anthropic · Mid-range | – | – | $0.0383 | |
| – | Claude Opus 4.6Anthropic · Frontier | – | – | $0.1915 | |
| – | Claude Opus 4.7Anthropic · Frontier | – | – | $0.1915 | |
| – | Claude Opus 4.8Anthropic · Frontier | – | – | $0.1915 | |
| – | Claude Opus 5Anthropic · Frontier | – | – | $0.1915 | |
| – | Claude Sonnet 4.6Anthropic · Mid-range | – | – | $0.1149 | |
| – | Claude Sonnet 5Anthropic · Mid-range | – | – | $0.0766 | |
| – | Codestral 25.08Mistral · Economy | – | – | $0.01 | |
| – | DeepSeek FlashDeepSeek · Economy · open weights | – | – | $0.0108 | |
| – | DeepSeek V4 ProDeepSeek · Mid-range · open weights | – | – | $0.0442 | |
| – | Gemini 2.5 FlashGoogle · Economy | – | – | $0.0139 | |
| – | Gemini 2.5 Flash-LiteGoogle · Economy | – | – | $0.0036 | |
| – | Gemini 2.5 ProGoogle · Mid-range | – | – | $0.0569 | |
| – | Gemini 3.1 Flash-LiteGoogle · Economy | – | – | $0.0102 | |
| – | Gemini 3.6 FlashGoogle · Mid-range | – | – | $0.0287 | |
| – | Gemini 3.7 FlashGoogle · Mid-range | – | – | $0.0287 | |
| – | GLM-4.7Z.ai · Economy | – | – | $0.0189 | |
| – | GLM-5Z.ai · Mid-range | – | – | $0.0339 | |
| – | GLM-5.2Z.ai · Economy | – | – | $0.0178 | |
| – | GPT-5OpenAI · Mid-range | – | – | $0.0569 | |
| – | GPT-5.2OpenAI · Mid-range | – | – | $0.0797 | |
| – | GPT-5.3 CodexOpenAI · Mid-range | – | – | $0.0797 | |
| – | GPT-5.4OpenAI · Mid-range | – | – | $0.1018 | |
| – | GPT-5.4 MiniOpenAI · Mid-range | – | – | $0.0305 | |
| – | GPT-5.4 NanoOpenAI · Economy | – | – | $0.0083 | |
| – | GPT-5.5OpenAI · Frontier | – | – | $0.2035 | |
| – | GPT-5.6 LunaOpenAI · Economy | – | – | $0.0081 | |
| – | GPT-5.6 TerraOpenAI · Mid-range | – | – | $0.0814 | |
| – | GPT-6 AstraOpenAI · Frontier | – | – | $0.3829 | |
| – | GPT-6 SolOpenAI · Mid-range | – | – | $0.0766 | |
| – | Grok 4.20xAI · Mid-range | – | – | $0.0388 | |
| – | Grok 4.3xAI · Mid-range | – | – | $0.0388 | |
| – | Grok 4.5xAI · Mid-range | – | – | $0.0669 | |
| – | Grok 4.6xAI · Mid-range | – | – | $0.0669 | |
| – | Grok 4.7xAI · Mid-range | – | – | $0.0669 | |
| – | Grok Build 0.1xAI · Mid-range | – | – | $0.031 | |
| – | GPT-OSS 120B (Groq)Groq · OpenAI · Economy · open weights | – | – | $0.0054 | |
| – | GPT-OSS 20B (Groq)Groq · OpenAI · Economy · open weights | – | – | $0.0027 | |
| – | Qwen3.8 27B (Groq)Groq · Qwen · Mid-range · open weights | – | – | $0.0306 | |
| – | InklingThinking Machines · Mid-range | – | – | $0.036 | |
| – | Inkling SmallThinking Machines · Economy | – | – | $0.0147 | |
| – | Kimi K2.6Moonshot · Mid-range · open weights | – | – | $0.0346 | |
| – | Kimi K2.7 CodeMoonshot · Mid-range · open weights | – | – | $0.0346 | |
| – | Kimi K2.7 Code HighspeedMoonshot · Mid-range · open weights | – | – | $0.0691 | |
| – | Kimi K3Moonshot · Mid-range · open weights | – | – | $0.1149 | |
| – | MiMo-V2.6-Pro (OpenRouter)Xiaomi · Economy · open weights | – | – | $0.0135 | |
| – | MiMo-V2.6-Pro UltraSpeed (OpenRouter)Xiaomi · Mid-range · open weights | – | – | $0.135 | |
| – | Mistral Large 3Mistral · Economy | – | – | $0.0167 | |
| – | Mistral Large 4Mistral · Mid-range | – | – | $0.0457 | |
| – | Mistral Medium 3.5Mistral · Mid-range · open weights | – | – | $0.0574 | |
| – | Muse Spark 1.1Meta · Mid-range | – | – | $0.043 | |
| – | Muse Spark 1.2Meta · Mid-range | – | – | $0.043 | |
| – | Nemotron 3 Super (Workers AI)NVIDIA · Economy · open weights | – | – | $0.0167 | |
| – | Qwen3.7 MaxQwen · Mid-range | – | – | $0.0494 | |
| – | Qwen3.8 27B (Workers AI)Qwen · Economy · open weights | – | – | $0.0195 | |
| – | Qwen3.8 Max (OpenRouter)Qwen · Mid-range · open weights | – | – | $0.0669 | |
| – | Step 5 Preview (OpenRouter)StepFun · Mid-range · open weights | – | – | $0.0327 |
| Model | Arena WebDev, newest snapshot Oct 16, 2026 | Arena Agent, newest snapshot Oct 16, 2026 | Epoch Capabilities Index, newest model release Oct 7, 2026 |
|---|---|---|---|
| Claude Fable 5.1 | 1741Max · range 1732 to 1751 | 0.140Max · range 0.120 to 0.160 | 165range 162 to 169 |
| Claude Fable 5 | 1625High · range 1619 to 1631 | 0.082High · range 0.068 to 0.096 | 162range 160 to 166 |
| Claude Opus 5.5 | 1807Max · range 1793 to 1822 | 0.189Max · range 0.161 to 0.216 | 167range 164 to 171 |
| Claude Opus 5 | 1689Max · range 1683 to 1696 | 0.087Max · range 0.070 to 0.104 | 163range 160 to 166 |
| Claude Opus 4.8 | 1556High · range 1550 to 1561 | – | 158range 156 to 161 |
| Claude Opus 4.7 | 1558High · range 1552 to 1563 | – | 156range 155 to 159 |
| Claude Opus 4.6 | 1547High · range 1541 to 1552 | – | 155range 154 to 157 |
| Claude Sonnet 5.5 | 1768xHigh · range 1754 to 1781 | 0.130Max · range 0.099 to 0.161 | 165range 161 to 168 |
| Claude Sonnet 5 | 1541High · range 1535 to 1547 | 0.046High · range 0.029 to 0.063 | 156range 154 to 159 |
| Claude Sonnet 4.6 | 1523range 1518 to 1528 | – | 152range 150 to 155 |
| Claude Haiku 5.5 | 1585High · range 1573 to 1596 | 0.015High · range 0.005 to 0.024 | 159range 157 to 162 |
| Claude Haiku 4.5 | 1330range 1325 to 1335 | – | 142range 139 to 144 |
| GPT-6 Astra | 1777Max · range 1767 to 1788 | 0.141Max · range 0.118 to 0.164 | 166range 163 to 171 |
| GPT-6.1 Sol | 1756Max · range 1742 to 1769 | 0.136Max · range 0.117 to 0.155 | 166range 163 to 171 |
| GPT-6 Sol | 1683Max · range 1672 to 1693 | 0.103Max · range 0.082 to 0.124 | 163range 160 to 166 |
| GPT-5.6 Sol | – | 0.071xHigh · range 0.057 to 0.085 | 162range 160 to 165 |
| GPT-5.6 Terra | – | 0.004xHigh · range -0.009 to 0.017 | 159range 157 to 162 |
| GPT-6 Luna | 1578Max · range 1572 to 1584 | 0.030Max · range 0.025 to 0.035 | 156range 154 to 159 |
| GPT-5.6 Luna | – | -0.021xHigh · range -0.028 to -0.013 | 156range 154 to 159 |
| GPT-5.5 Pro | – | – | 162range 159 to 165 |
| GPT-5.4 Pro | – | – | 159range 157 to 162 |
| GPT-5.5 | – | 0.031xHigh · range 0.019 to 0.044 | 159range 156 to 162 |
| GPT-5.4 | 1402range 1392 to 1412 | 0.014High · range 0.004 to 0.025 | 157range 155 to 159 |
| GPT-5.4 Mini | 1398High · range 1391 to 1404 | – | 149range 147 to 151 |
| GPT-5.4 Nano | – | – | 146range 144 to 149 |
| GPT-5.3 Codex | – | – | 157range 153 to 161 |
| Gemini 4 Argon | 1678High · range 1663 to 1694 | 0.132High · range 0.119 to 0.146 | 165range 162 to 169 |
| Gemini 3.1 Pro | 1447range 1442 to 1452 | -0.040range -0.054 to -0.026 | 155range 153 to 157 |
| Gemini 2.5 Pro | 1226range 1210 to 1242 | – | 145range 144 to 147 |
| Gemini 3.8 Flash | 1585High · range 1578 to 1593 | 0.037High · range 0.026 to 0.049 | 157range 155 to 161 |
| Gemini 3.6 Flash | 1538High · range 1531 to 1546 | – | 154range 153 to 156 |
| Gemini 2.5 Flash | – | – | 141range 139 to 142 |
| Gemini 3.5 Flash-Lite | 1441range 1401 to 1482 | – | 145range 143 to 147 |
| Gemini 3.1 Flash-Lite | – | – | 145range 142 to 146 |
| Grok 4.7 | 1639xHigh · range 1629 to 1649 | 0.032xHigh · range 0.016 to 0.048 | 154range 153 to 157 |
| Grok 4.6 | 1617High · range 1610 to 1625 | 0.009xHigh · range -0.002 to 0.020 | 156range 155 to 159 |
| Grok 4.5 | 1553range 1546 to 1560 | – | 154range 153 to 156 |
| Grok 4.3 | 1358range 1351 to 1364 | – | – |
| Grok 4.20 | – | – | 152range 150 to 154 |
| DeepSeek V4 Pro | 1447range 1441 to 1454 | – | 149range 147 to 151 |
| Kimi K3 | 1655Max · range 1649 to 1661 | 0.019Max · range 0.012 to 0.027 | 157range 155 to 160 |
| Kimi K2.6 | 1510range 1502 to 1517 | – | 151range 149 to 153 |
| Kimi K2.7 Code | 1474range 1464 to 1483 | – | 150range 148 to 152 |
| Qwen3.8 27B (Groq) | 1593range 1587 to 1600 | -0.034range -0.042 to -0.026 | 152range 150 to 153 |
| Qwen3.8 Max (OpenRouter) | 1672range 1660 to 1684 | 0.018range 0.011 to 0.024 | 157range 155 to 159 |
| Step 5 Preview (OpenRouter) | 1565High · range 1555 to 1575 | -0.014range -0.030 to 0.002 | – |
| MiMo-V2.6-Pro (OpenRouter) | 1625range 1615 to 1635 | 0.040range 0.029 to 0.050 | – |
| Gemini 3.7 Flash | 1591High · range 1584 to 1597 | -0.007High · range -0.016 to 0.002 | 157range 155 to 160 |
| Muse Spark 1.2 | 1534xHigh · range 1520 to 1547 | -0.064xHigh · range -0.072 to -0.056 | 155range 153 to 157 |
| Muse Spark 1.1 | 1543range 1535 to 1550 | -0.064range -0.071 to -0.058 | 154range 152 to 156 |
| Mistral Large 4 | 1542range 1529 to 1555 | -0.040range -0.060 to -0.021 | 147range 144 to 151 |
| Mistral Large 3 | 1231range 1205 to 1256 | – | – |
| GPT-5.2 | 1417range 1394 to 1439 | – | 154range 152 to 155 |
| GPT-5 | 1418Medium · range 1402 to 1433 | – | 150 |
| Qwen3.7 Max | 1515range 1508 to 1523 | -0.063range -0.074 to -0.051 | 154range 152 to 156 |
| Inkling | 1414range 1408 to 1420 | -0.143range -0.158 to -0.129 | 149range 146 to 151 |
| Inkling Small | 1409range 1400 to 1418 | -0.151range -0.169 to -0.133 | 150range 147 to 152 |
| GLM-5.2 | 1605Max · range 1599 to 1611 | 0.023Max · range 0.014 to 0.031 | 152range 150 to 154 |
| GLM-5 | 1435range 1427 to 1444 | – | 146range 144 to 148 |
| GLM-4.7 | 1435range 1423 to 1447 | – | 144range 142 to 146 |
- Arena WebDev: Human preference between two models' answers on web development tasks. It is not code review accuracy. From LMArena, CC BY 4.0, newest snapshot Oct 16, 2026.
- Arena Agent: Score from people's real coding-agent sessions on the Arena agent leaderboard. It is not code review accuracy. From LMArena, CC BY 4.0, newest snapshot Oct 16, 2026.
- Epoch Capabilities Index: One general capability number combining a model's results on many benchmarks. It does not test code review. From Epoch AI, CC BY 4.0, newest model release Oct 7, 2026.
| 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% |
| GPT-6.1 Sol | 89% | 83% | 75% | 70% | 100% | 89% | 100% | 100% | 100% | 100% | 100% | 100% | 50% | 100% |
| Gemini 4 Argon | 82% | 83% | 50% | 83% | 75% | 89% | 67% | 100% | 100% | 83% | 100% | 100% | 100% | 0% |
| Claude Sonnet 5.5 | 77% | 83% | 50% | 45% | 100% | 56% | 100% | 67% | 67% | 67% | 100% | 100% | 100% | 100% |
| GPT-5.6 Sol | 72% | 67% | 50% | 69% | 75% | 56% | 100% | 67% | 100% | 100% | 67% | 100% | 50% | 0% |
| Gemini 3.8 Flash | 68% | 83% | 75% | 43% | 75% | 78% | 67% | 0% | 50% | 83% | 100% | 100% | 50% | 50% |
| GPT-6 Luna | 67% | 83% | 25% | 65% | 75% | 56% | 67% | 67% | 67% | 100% | 67% | 100% | 50% | 0% |
| Claude Haiku 5.5 | 64% | 83% | 75% | 40% | 75% | 67% | 33% | 67% | 100% | 39% | 67% | 67% | 50% | 0% |
| Gemini 3.1 Pro | 67% | 67% | 38% | 78% | 88% | 56% | 33% | 67% | 67% | 67% | 100% | 100% | 50% | 50% |
| GLM-5.3 Flash (Workers AI) | 61% | 57% | 31% | 45% | 88% | 30% | 67% | 89% | 33% | 78% | 67% | 67% | 100% | 67% |
| GLM-5.3 (Workers AI) | 61% | 78% | 19% | 46% | 73% | 48% | 33% | 72% | 44% | 58% | 67% | 100% | 100% | 67% |
| DeepSeek V4 Pro (Workers AI) | 54% | 79% | 25% | 49% | 54% | 59% | 17% | 30% | 69% | 72% | 67% | 75% | 38% | 33% |
| DeepSeek V4 Flash (Workers AI) | 49% | 46% | 25% | 55% | 46% | 22% | 56% | 61% | 78% | 61% | 44% | 67% | 50% | 0% |
| GPT-OSS 120B (Workers AI) | 40% | 42% | 13% | 46% | 71% | 41% | 11% | 44% | 33% | 78% | 33% | 44% | 33% | 0% |
| Kimi K2.7 Code (Workers AI) | 38% | 75% | 26% | 31% | 46% | 19% | 8% | 14% | 42% | 62% | 33% | 46% | 6% | 40% |
| Gemma 4 26B A4B (Workers AI) | 26% | 33% | 0% | 30% | 38% | 7% | 0% | 56% | 33% | 44% | 67% | 0% | 0% | 0% |
| Gemini 3.5 Flash-Lite | 11% | 33% | 0% | 5% | 0% | 0% | 0% | 33% | 0% | 17% | 0% | 0% | 50% | 0% |
Few test PRs per group, so small differences here are noise. The model page shows each result.
What is the best AI model for code review?
Claude Opus 5.5 caught the most known bugs (90%). The data can't separate it from 7 other models, which share rank 1. The right choice also depends on false alarms and cost, which the leaderboard sorts by.
Which model is the best value for code review?
GPT-6.1 Sol found bugs most cheaply among models that catch at least 75% as many as the best: $0.0514 per bug caught, counting every review, clean PRs included.
Which open-weight model is best for code review?
GLM-5.3 Flash (Workers AI), at 61% of bugs caught. Open-weight models such as GLM, DeepSeek, Kimi, Qwen and gpt-oss run here on hosts like Cloudflare Workers AI and Groq, and the leaderboard's Open weights filter lists them. You can also self-host them.
What does “bugs caught” measure?
Each of the 47 bug test PRs replays a real upstream change that contained a bug, later found and fixed in the project. A model catches it when one of its findings names the same root cause at the right place. The score is the share caught across all of its reviews, with a 95% range.
What counts as a false alarm?
Any warning or worse on one of the 15 clean PRs, real changes that nothing later fixed or reverted. A reviewer that flags problems that aren't there costs the reader time and teaches people to ignore it, so false alarms are shown next to bugs caught rather than folded into one score.
How is this different from SWE-bench and other coding benchmarks?
SWE-bench and similar tests ask a model to write a fix. This benchmark asks it to read a change and spot what's wrong, the job a reviewer does, inside CodePanel's real review pipeline. It also counts false alarms and cost, which a fix-the-bug score doesn't.
Why can two models with the same price score differently?
List price is per token. Models differ in how many bugs they find, how much they flag that isn't wrong, and how many tokens they spend on a review, so the same rate card can give very different results. Compare any two on their head-to-head page, which says whether the gap is larger than run-to-run noise.
Why do some models share a rank?
When the gap between two models is smaller than the run-to-run spread, the data can't say which is better, so they share a rank (shown with =). Ranks come from paired comparisons on the same PRs, corrected for comparing many pairs at once.
Could models have memorized these bugs?
The headline counts only bugs introduced from 2025 on, after most training cut-offs, and the test set is kept private, with a canary string so training pipelines can exclude it. Older bugs are still run and reported separately on each model's page.
Who decides whether a finding matches the bug?
Three judge models from different providers (Claude Sonnet 5.5, GPT-6.1 Sol, Gemini 3.1 Pro) vote. Judges tend to favour their own family, so a model is never judged by its own maker: that judge's vote is left out and the other two must agree. A model from another maker needs two of the three. A judge only decides whether a finding names the known bug, never how good the review is.
How is cost measured?
From the tokens each review actually used, at each provider's standard list price (checked 2026-10-16), without batch or cache discounts. Cost per bug divides the spend on every review, clean PRs included, by the bugs caught. A model with no score shows the list price of a typical review call.
Which reasoning effort and prompt are used?
Every model runs as CodePanel's Bugs & Security reviewer with the same prompt and context, at medium reasoning effort or the nearest level the model supports. A model that takes no effort setting runs at its default.
How often is it updated, and how are new models added?
A run starts every week, and new models are added as providers release them. A model is ranked only once it has been scored on 80% of the test PRs, never on a handful of them.
Can I check a score?
The test set and harness stay private so they stay out of training data, but every finding and judge vote behind a published run is kept with it, so any score can be re-checked or re-judged. The methodology page explains each step and its limits.
Can I use these models in my own reviews?
Yes. Every model listed here can sit on a CodePanel review panel, with your own provider key, alongside other models. Each model page links to setting one up.
- Anthropic12 models · $0.0038–$0.3829 a call · 3 measured
- OpenAI15 models · $0.0038–$0.3829 a call · 4 measured
- Google11 models · $0.0033–$0.0814 a call · 5 measured
- xAI6 models · $0.031–$0.0669 a call
- DeepSeek4 models · $0.0108–$0.0442 a call · 2 measured
- Moonshot5 models · $0.0346–$0.1149 a call · 1 measured
- Mistral4 models · $0.01–$0.0574 a call
- Groq3 models · $0.0027–$0.0306 a call
- Z.ai5 models · $0.0051–$0.0473 a call · 2 measured
- Qwen3 models · $0.0195–$0.0669 a call
- NVIDIA1 model · $0.0167 a call
- StepFun1 model · $0.0327 a call
- Xiaomi2 models · $0.0135–$0.135 a call
- Meta2 models · $0.043 a call
- Thinking Machines2 models · $0.0147–$0.036 a call