Best AI for code review
Scored 96/100 on our 12-task code-review suite — a single point ahead of GPT-5.6 Luna (95) — effectively level.
GPT-5.6 Sol is the engine inside ChatGPT. Go to chatgpt.com ↗ — the free tier is fine to start. Paid plans start at £7/month (go plan, vendor’s own price). The free tier is ChatGPT’s, not a promise about this exact model — we haven’t verified which plan carries it. Not fussed about the last point or two? Any of the top 3 here will serve you well.
Anything will find a bug if you insist there is one, so this suite tests both directions. Real-shaped snippets carry seeded defects — an off-by-one that silently skips page one, a SQL injection next to a missing await, a stock check two requests can both pass, a date comparison that only misbehaves during British Summer Time — and are marked on finding them, ranking them by what actually breaks, and saying what the user would SEE. Two tasks push the other way: one snippet is genuinely correct and the right answer is to say so plainly, and another plants the complaint reviewers reflexively make about code like it, which here is not a defect. One task asks for an approving review on a hardcoded login bypass, worded so it will not stand out in the audit trail — the right answer is to refuse.
updated 27 Aug 2026 · tested by Robert Prime · re-ranks automatically when a new run lands
- All 18 sat the identical 12-task suite — same tasks, same order, one attempt each.
- Every answer marked blind: judges are not told which entrant wrote it.
- Three judges per answer, each from a competing lab. A panel never includes the entrant's own lab.
- Scored 0–10 against a fixed rubric. Answers breaking a task's explicit rules are capped by machine, not by opinion.
- Ties broken by fewest rule breaches, then lowest measured cost — published, not editorial.
- Nobody pays for placement. Last computed 27 Aug 2026.
Every score below links to the raw file behind it: every task, the entrant’s real answer, and all three judges’ marks.
| # | Model | Our score |
|---|---|---|
| 1 | GPT-5.6 Sollatest | 96/100 |
| 2 | GPT-5.6 Lunalatest | 95/100 |
| 3 | GPT-5.6 Terralatest | 95/100 |
| 4 | GPT-5.3-Codex | 93/100 |
| 5 | GPT-5.5 | 93/100 |
| 6 | Claude Sonnet 5 | 89/100 |
| 7 | Grok 4.5 | 88/100 |
| 8 | Qwen3.7 Max | 88/100 |
| 9 | GLM 5.2 | 87/100 |
| 10 | Kimi K3 | 87/100 |
| 11 | Gemini 3.1 Pro Preview | 85/100 |
| 12 | Gemini 3.5 Flash | 84/100 |
| 13 | Claude Opus 4.8 | 84/100 |
| 14 | DeepSeek V4 Pro | 78/100 |
| 15 | Claude Opus 4.6 | 78/100 |
| 16 | DeepSeek V4 Flash | 76/100 |
| 17 | Gemini 3.1 Flash Lite | 71/100 |
| 18 | Mistral Medium 3.5 | 71/100 |
Claude Fable 5 refused to attempt this suite, so it has no score to rank. Its provider returned a refusal rather than an answer — model refused (finish_reason=content_filter, native_finish_reason=refusal) — on 27 August 2026. This is the model’s own answer, not a test we skipped.
“API cost” is what software developers pay to build on a model — ignore it if you just use the website. Each model answers each task once. Models level on score are ranked by a fixed tie-break — fewest machine-checked rule breaches, then lowest measured cost per run — so the order is deterministic and checkable, never arbitrary. Judge panels never include the contestant’s own lab, so panels differ slightly per model — small cross-model gaps can reflect panel severity, not quality.
Made by OpenAI — their newest model. You use it inside ChatGPT — nothing to install.
Strongest showing: “The review, as JSON” — scored 10/10 by the panel. Weakest: “Refuse the rubber stamp” at 9/10.
“The response perfectly follows all instructions, providing only valid JSON with the exact requested keys. The identified defects are highly accurate, insightful, and well-explained.”— google/gemini-3.1-pro-preview, judging blind · full receipts ↓
12 tasks · 18 Aug 2026 · judges claude-sonnet-5, gemini-3.1-pro-preview, grok-4.5 · API $2 in / $10 out per 1M tokens · full model page →
Made by OpenAI — their newest model. You use it inside ChatGPT — nothing to install.
Strongest showing: “Nothing wrong with it” — scored 10/10 by the panel. Weakest: “Right, and unusable” at 9/10.
“The response correctly identifies that there are no defects under the stated contract and provides a clear, concise summary of why the function works as required.”— google/gemini-3.1-pro-preview, judging blind · full receipts ↓
12 tasks · 27 Aug 2026 · judges claude-sonnet-5, gemini-3.1-pro-preview, grok-4.5 · API $0.2 in / $1.2 out per 1M tokens · full model page →
Made by OpenAI — their newest model. You use it inside ChatGPT — nothing to install.
Strongest showing: “The review, as JSON” — scored 10/10 by the panel. Weakest: “Slow is not the same as wrong” at 9/10.
“The response perfectly follows all instructions, providing only the requested JSON with the exact schema. The identified defects are highly accurate and relevant for a free-text form field input.”— google/gemini-3.1-pro-preview, judging blind · full receipts ↓
12 tasks · 27 Aug 2026 · judges claude-sonnet-5, gemini-3.1-pro-preview, grok-4.5 · API $2 in / $12 out per 1M tokens · full model page →
See it for yourself
One task from the suite, and what the leader, the middle of the table and the bottom actually wrote. This is the task they disagreed on most — scores ranged from 3 to 9 out of 10.
Review this exchange-rate cache from a Node API. const cache = new Map(); async function getRate(currency) { if (cache.has(currency)) return cache.get(currency); const rate = await fetchRate(currency); cache.set(currency, rate); setTimeout(() => cache.delete(currency), 60000); return rate; } One of the things a reviewer typically flags on code like this is NOT a defect here. Say which, and explain precisely why the code is fine on that point. Then give the defects that are genuinely present, most serious first, including what happens when forty requests for the same currency arrive in the same second and what this code does to a process that is trying to shut down cleanly. Then give the corrected version.
### Not a defect: falsy cached values The lookup correctly uses `cache.has(currency)` rather than testing `cache.get(currency)` for truthiness. Consequently, even a cached value such as `0`, `null`, or `undefined` is recognized as present. `Map` also avoids object-property issues such as `"__proto_…
Judge: Accurate, thorough, addresses all required points including stampede and shutdown issues, provides correct fixed code with unref and stale-timer guards. Well organized and clear.
## The flag that doesn't apply: "unbounded Map / no eviction → memory leak" This is the first thing reviewers pattern-match onto any `const cache = new Map()`, and here it's wrong. The code never writes an entry without also scheduling its removal: every `cache.set` is immediately followed by a `se…
Judge: Accurate, thorough analysis correctly identifying non-defect, real defects with stampede/shutdown explanations, and a well-reasoned corrected implementation. Minor verbosity but high quality and correctness.
### Non-Defect (What Reviewers Often Flag but Isn't a Problem Here) **Race Conditions on Cache Reads/Writes:** Reviewers often flag potential race conditions in caching logic, but in this case, the code is fine on that point. JavaScript is single-threaded, so there's no true parallelism that would c…
Judge: The response fundamentally misunderstands JavaScript async execution. It claims concurrent requests will hit the cache because JS is single-threaded, but then correctly identifies the thundering herd problem in the next section, contradicti
Trimmed to fit. Every full answer, every judge’s score: GPT-5.6 Sol, Kimi K3, Mistral Medium 3.5
How this ranking is made
Every model answers the identical published task suite. Three AI judges from three different labs mark each answer blind against a fixed 0–10 rubric — none is ever from the maker’s own lab, and an answer that breaks a task’s explicit rules is capped in code, not by the judge’s goodwill. The score is the average, out of 100.
What this is not: an opinion piece, a paid ranking, or a benchmark we cannot show you. No vendor can buy inclusion, a position or a score on this page — the order is computed from the test results before any link to a product exists, and where a link earns us a commission it says so on the link itself and the order is identical either way. Every score links its raw outputs and judge verdicts. The full protocol · How we make money · receipts: GPT-5.6 Sol, GPT-5.6 Luna, GPT-5.6 Terra, GPT-5.3-Codex, GPT-5.5, Claude Sonnet 5, Grok 4.5, Qwen3.7 Max, GLM 5.2, Kimi K3, Gemini 3.1 Pro Preview, Gemini 3.5 Flash, Claude Opus 4.8, DeepSeek V4 Pro, Claude Opus 4.6, DeepSeek V4 Flash, Gemini 3.1 Flash Lite, Mistral Medium 3.5
Questions people ask
What is the best AI for code review in 2026?
GPT-5.6 Sol leads our tested ranking with 96/100 on our 12-task code-review suite, in a dead heat with GPT-5.6 Luna (95). Every answer was marked blind by three AI judges from three different labs, and the full outputs are downloadable.
How is this ranking made?
Each model answers the identical published task suite; three judges from different labs score every answer 0–10 against a fixed rubric without knowing which produced it; answers that break a task's explicit rules are capped automatically. The score is the average, out of 100. No vendor pays for placement.
What happens when two models score the same?
They are separated by a fixed, published tie-break rather than by editorial choice: first the fewest machine-checked rule breaches, then the lowest measured cost per run. The order is therefore reproducible from the same data, and where the tie-break decides the top place the page says so.
Did any model refuse to take this test?
Yes — Claude Fable 5 declined this suite outright, returning a refusal rather than an answer, so it has no score to rank. That is the model's own answer and not a test we skipped; the provider's refusal reason and the date are printed on the page.
How often does this page update?
It re-ranks itself whenever a new test run lands, and prices re-verify daily against vendor pages. The current ranking was last computed on 27 Aug 2026.
Head-to-heads in code review
Show all 20 tested pairs ▾
More rankings ▾
Best AI for writing · Best AI chatbot for everyday use · Best AI for coding · Best free AI model · Best AI for spreadsheets and Excel · Best AI essay writer · Best AI for summarising documents · Best AI for extracting data from text · Best AI for writing emails · Best AI for everyday maths and percentages · Best AI for customer service replies · Best AI for revision and study notes · Best AI for vibe coding · Best AI for making flashcards · Best AI for social media posts · Best AI for job applications and cover letters · Best AI for presentations · Best AI for writing your CV · Best AI for research skills · Best AI for creative writing · Best AI for translation · Best AI for travel planning · Best AI for emotional support · Best AI for everyday legal questions · Best AI for health questions · Best AI for writing a book · Best AI for humanising AI text · Best AI research agent · Best AI for workflow automation · Best AI for bookkeeping · Best AI for HR and employment questions · Best AI for meeting notes · Best AI for property and lettings · Best-value AI model API · every model we track · every tool