A gemini-2.5-pro call on December 2 will not fail. It will answer as a different model. Google deprecated gemini-2.5-pro and gemini-2.5-flash on November 2, 2026, and from December 1, 2026 the Gemini Developer API auto-routes those IDs to gemini-3.8-flash and gemini-3.5-flash-lite at the replacement rates. The catch is that the replacement is a tier change with breaking parameters, so pinning the old string through December is the risky option.
What Google announced for December 1
Google deprecated gemini-2.5-pro and gemini-2.5-flash on the Gemini Developer API. Both identifiers disappeared from the Google AI Studio picker, and API access is now limited to developers who used each model in the past. From December 1, 2026, requests keep succeeding but run on different models and bill at different rates.
The mapping comes from Google's Gemini API deprecations page:
| Old ID you call | Model that answers from Dec 1, 2026 | Billing from Dec 1 |
|---|---|---|
gemini-2.5-pro | gemini-3.8-flash | Gemini 3.8 Flash rates |
gemini-2.5-flash | gemini-3.5-flash-lite | Gemini 3.5 Flash-Lite rates |
gemini-2.5-flash-lite | unchanged, no reroute | unchanged |
Google lists December 1, 2026 as the routing date for both stable IDs, with the November 2, 2026 changelog entry as the notice. Google DeepMind staff member Patrick Loeber linked it in a PSA warning that advanced integrations need migration-guide work.
This notice covers the Gemini Developer API and AI Studio only. Vertex AI tracks Gemini 2.5 on a separate retirement schedule, with Google Cloud listing October 2026 dates for the same model names, and Firebase AI Logic documents its own supported-model list. Vertex users should check the Cloud console instead of assuming December 1 applies everywhere.
Google called 2.5 "not deprecated" on September 18, then deprecated it November 2, so treat December 1 as firm. See the changelog history for that reversal.
What rerouted calls cost in December and January
Gemini 2.5 Pro traffic gets cheaper in December, then input gets more expensive in January. Gemini 2.5 Flash text traffic costs the same after the move, while audio input gets much cheaper. All figures below are paid-tier list prices per 1M tokens from Google's Gemini API pricing page, as captured November 3, 2026. For model-level context see Gemini 3.8 Flash pricing and Gemini 3.5 Flash-Lite.
| Model and period | Input / 1M | Output incl. thinking / 1M |
|---|---|---|
gemini-2.5-pro, prompts ≤200k tokens, until Nov 30 | $1.25 | $10.00 |
gemini-2.5-pro, prompts >200k tokens, until Nov 30 | $2.50 | $15.00 |
gemini-3.8-flash, Dec 1–31, 2026 | $0.75 | $3.75 |
gemini-3.8-flash, from Jan 1, 2027 | $1.50 | $7.50 |
Gemini 3.8 Flash has a single price band regardless of prompt length, so long-context workloads over 200,000 tokens see the largest drop. A 300k-input, 4k-output long-document prompt costs about $0.81 on Gemini 2.5 Pro at $2.50/$15.00, about $0.24 on Gemini 3.8 Flash December pricing at $0.75/$3.75, and about $0.48 on January pricing at $1.50/$7.50. Short-prompt input-heavy chat is the one pattern that ends up near the old bill in January.
The Flash move is simpler:
| Model | Text/image/video input | Audio input | Output |
|---|---|---|---|
gemini-2.5-flash until Nov 30 | $0.30 | $1.00 | $2.50 |
gemini-3.5-flash-lite from Dec 1 | $0.30 | $0.30 | $2.50 |
Context caching, batch, and priority follow the same pattern with text rates carrying over and audio rates falling. One wrinkle matters for budgets: thinking tokens bill as output, and replacement models can emit different thinking-token counts on long tasks, so equal output counts cannot be assumed. Compare usage_metadata from real traffic before locking a forecast.
Why the same model string breaks working code
Automatic routing preserves the HTTP 200 while changing the runtime underneath. Gemini 3.x enforces request rules that Gemini 2.5 accepted, so code that never touched the model name can start failing or silently drifting after December 1.
Gemini 3.x replaces thinking_budget with thinking_level. Gemini 3.8 Flash accepts low, medium, and high and rejects minimal; Gemini 3.5 Flash-Lite defaults to minimal. Sending both fields returns HTTP 400, and sharing one minimal config across both replacements breaks the 3.8 Flash path. Google recommends minimal for extraction, routing, and classification, and medium or high for subagents, tool calls, code execution, and multi-step reasoning to avoid premature tool termination.
Sampling and history controls change too, per the Gemini 3 migration guide. temperature, top_p, and top_k are currently ignored on Gemini 3.x and are expected to return HTTP 400 in future generations. candidate_count is unsupported. Any request whose last non-empty turn has role model, the classic prefill trick of ending with Translation:, returns HTTP 400. Google points to system_instruction and structured outputs instead.
Function calling gets stricter. Gemini 3.x validates thought_signature and requires each FunctionResponse to carry the matching call ID and name. Dropping the signature or rebuilding the model turn without it produces empty STOP responses or MISSING_THOUGHT_SIGNATURE finishes instead of a clean error. Regression tests must assert on response text, not only the absence of an exception.
Real users flagged exactly this failure mode within hours of the announcement:
Google just put a date on the end of Gemini 2.5, and the detail that matters is not the deprecation. It's the auto-routing. ... So your code won't throw a 404. It will quietly start answering with a different model. — @VarunChopr17597
If your agent still calls gemini-2.5-flash, on Dec 1 it starts running on Gemini 3.5 Flash-Lite, which defaults to minimal thinking. — @MarMarLabs
Migrate in November: the 7-step checklist
The safest path is an explicit model-ID change plus a parameter pass in November, then a side-by-side eval against the December replacement. Do not rely on the router as a migration strategy.
- Find each reference, plus preview aliases. Search code, configs, eval harnesses, and docs for the two affected IDs while excluding the unaffected Lite model:
grep -rnE 'gemini-2\.5-(pro|flash)([^-]|$)' .
- Swap the IDs explicitly. Change
gemini-2.5-protogemini-3.8-flashandgemini-2.5-flashtogemini-3.5-flash-litein a branch, not on December 1 morning. - Fix thinking config. Replace
thinking_budgetwiththinking_level, set it per model (mediumorhighfor agents on 3.8 Flash; explicitminimalversusmedium/highfor Flash-Lite workloads), and avoid sharingminimalwith 3.8 Flash. - Strip legacy parameters. Remove
temperature,top_p,top_k,candidate_count, and prefilled trailing model turns before testing. - Update the SDK and tool plumbing. Upgrade to a current SDK, preserve full model turns including
thoughtSignature, constructFunctionResponsewith both call ID and name, and re-test multi-turn tool calls end to end. - Re-run baselines on the replacement. Compare quality, latency, output length, and
usage_metadatatoken counts on production prompts; a Flash model will not match a Pro model's style on each task. - Recalculate cost twice. Budget December at $0.75/$3.75 for the Pro route and January onward at $1.50/$7.50, and re-check audio and cache lines for the Flash route.
Teams already on Gemini 3.x or on gemini-2.5-flash-lite can skip this migration. Everyone else should finish step 6 before November 30, because a green test suite on December 1 may only mean the router is answering, not that behavior is preserved.
Agent builders should also read the Gemini 3.8 Flash agent-task pricing breakdown before setting thinking levels for tool-heavy workloads.
FAQ
Is Gemini 2.5 Pro shut down on December 1, 2026?
No. Google lists December 1, 2026 as a routing date on the Gemini Developer API: gemini-2.5-pro requests route to gemini-3.8-flash instead of returning an error.
Will rerouted requests bill at old or new prices?
New prices. A request sent as gemini-2.5-pro after December 1 bills at Gemini 3.8 Flash rates, and a gemini-2.5-flash request bills at Gemini 3.5 Flash-Lite rates.
Do I need to change code if routing is automatic?
Yes. Thinking config, sampling parameters, prefilled turns, and function-call plumbing differ on Gemini 3.x. Unchanged code may get ignored parameters, HTTP 400s, or silently different reasoning behavior.
Does December 1 apply to Vertex AI?
No. December 1 is the Gemini Developer API date. Google Cloud documents separate October 2026 retirement dates for Gemini 2.5 on Vertex AI and the Enterprise Agent Platform.
Is Gemini 2.5 Flash-Lite affected?
No. Google states gemini-2.5-flash-lite is not deprecated and remains available until further notice.
Which replacement should each workload use?
Match by task, then eval. Do not assume a Flash model equals the old Pro model.
| Current workload | Explicit target | Watch out |
|---|---|---|
| General Pro prompts, coding, long docs | gemini-3.8-flash at medium+ | Pro-to-Flash tier change; re-eval quality, output length, January input price |
| Agents with tools | gemini-3.8-flash at medium or high | thought_signature, response IDs, premature STOP on minimal |
| Classification, extraction, routing | gemini-3.5-flash-lite at minimal | Cheapest fit; raise to medium if tools get added |
| Audio transcription pipelines | gemini-3.5-flash-lite | Audio input falls $1.00 to $0.30; re-check cache lines |
Your move before November 30
Change the two model strings this week, fix thinking and tool plumbing, and bank a fresh baseline on the replacement models while Gemini 2.5 still answers. December routing keeps the lights on, but only a November migration keeps the behavior and the bill under your control.