Gemini 3.1 Pro
| Maker | |
|---|---|
| Family | Gemini Pro |
| Released | 2026-02-19 |
| Context | 1M |
| Max output | 65.5K |
| Open weights | Closed |
|---|---|
| Modalities | text, image, video, audio, pdf → text |
| Input / 1M | $2.00 |
| Output / 1M | $12.00 |
| Cached input / 1M | $0.20 |
| Above 200K in | $4.00 / $18.00 |
|---|---|
| Review call | $0.0814 |
| Reasoning efforts | low, medium, high, xhigh, max |
| Hosts | Google Gemini, OpenRouter |
| Model id | gemini-3.1-pro-preview |
- Rank
- #2=
- of 17
- Bugs caught
- 67%
- 54%–80%
- False alarms
- 0.8
- per clean PR
- Cost / review
- $0.2499
- Cost / bug
- $0.4134
- Time
- 349s
- per review
Gemini 3.1 Pro is hard to recommend as a review seat: a measured review cost $0.2499, and it ranks 2 of 17 with 67% [54%–80%] recall.
On recall, Claude Opus 5.5 measurably beats it, and the run can't separate it from GPT-6.1 Sol or Gemini 4 Argon. Those two measurably beat 7 and 6 ranked models, this one 4. A Gemini 3.1 Pro review costs 6.2× a Sol review and 4.7× an Argon review. It also costs 88× a GPT-6 Luna review, with recall the benchmark cannot separate from this model's.
The list rate ($2.00 / $12.00 per 1M tokens) is part of the bill, but the larger part is how much it writes. The review-call price in the spec sheet assumes a typical reviewer's output, and it wrote several times that, and a review took 349s. One of the three judges is from Google, so its vote was dropped when scoring this model.
The upside is quiet output: 0.8 [0.4–1.2] false alarms per clean PR, fewer on average than Claude Sonnet 5.5 (2.0 [1.5–2.4], intervals do not overlap), and 89% of catches on the defect's own lines. That helps if noise is your main cost (see reducing false positives). Compare it with Gemini 4 Argon before choosing.
Figures follow the latest benchmark run and price check. Text checked Nov 5, 2026.
| Host | Model id | Input / 1M | Output / 1M |
|---|---|---|---|
| Google Gemini | gemini-3.1-pro-preview | $2.00 | $12.00 |
Source: Google pricing, Oct 16, 2026
By kind of bug
- Logic 14
- 61%
- Security 9
- 56%
- Concurrency 8
- 90%
- Error handling 5
- 70%
- API misuse 3
- 87%
- Resource handling 3
- 50%
Bug by bug
- Known bugs
- 42
- Caught every run
- 24
- Caught sometimes
- 8
- Missed
- 10
- Clean PRs
- 15
- False alarms on them
- 20
| Result | Pull request | Language | Kind |
|---|---|---|---|
| Caught sometimes2/3 | Refactor: MudDebouncedInput, ThrottleDispatcher and DebounceDispatcherMudBlazor/MudBlazor | C# | Concurrency |
| Caught sometimes3/5 | 4.x: Enhance Streamable/Streamer and DisposableContainer APIsReactiveX/RxJava | Java | API misuse |
| Caught sometimes1/2 | keep websocket compression state across interleaved control framesaio-libs/aiohttp | Python | Logic |
| Caught sometimes1/2 | Event Thread could stall when not notified of new queries on existing connections that are in a bad statec-ares/c-ares | C | Resource handling |
| Caught sometimes2/4 | Fixed #36540 -- Updated request.auser() in contrib.auth.alogin() and contrib.auth.alogout().django/django | Python | Logic |
| Caught sometimes1/2 | crypto/tls: add LocalCertificate to ConnectionStategolang/go | Go | Logic |
| Caught sometimes1/2 | Store cached child els in Attributes, not fieldjhy/jsoup | Java | Concurrency |
| Caught sometimes1/2 | reorganize nushell configurationnushell/nushell | Rust | Error handling |
| Missed | fix(query-core): fix hydration bugs for already resolved promisesTanStack/query | TypeScript | Logic |
| Missed | feat(v4): parse input containing reference cyclescolinhacks/zod | TypeScript | Resource handling |
| Missed | fix(serialization): cap codec allocationsdotnet/orleans | C# | Logic |
| Missed | rpc : cache and reuse compute graphsggml-org/llama.cpp | C++ | Security |
| Missed | feat: middleware.ClientIP, a replacement for middleware.RealIPgo-chi/chi | Go | Security |
| Missed | perf(gitdiff): optimize inline diff highlighting using cachego-gitea/gitea | Go | Error handling |
| Missed | Fix DataClassEq comparatorkotest/kotest | Kotlin | Logic |
| Missed | feat: add configurable maxPayloadSize for WebSocketnodejs/undici | JavaScript | Security |
| Missed | Add `weight` optionsindresorhus/p-throttle | JavaScript | Logic |
| Missed | [Security] Allow multiple OIDC discovery endpointssymfony/symfony | PHP | Security |
| Version | Released | Input / 1M | Output / 1M | Context |
|---|---|---|---|---|
| Gemini 2.5 Pro | 2025-03-25 | $1.25 | $10.00 | 1M |
| Model | Maker | Input / 1M | Output / 1M | Review call | Context | Bugs caught |
|---|---|---|---|---|---|---|
| GPT-5.6 Terra | OpenAI | $2.00 | $12.00 | $0.0814 | 1.1M | – |
| Claude Sonnet 5.5 | Anthropic | $2.00 | $10.00 | $0.0766 | 1M | 77% |
| Kimi K2.7 Code Highspeed | Moonshot | $1.90 | $8.00 | $0.0691 | 262.1K | – |
| Grok 4.7 | xAI | $2.00 | $6.00 | $0.0669 | 500K | – |
Updated Nov 5, 2026