GPT-6 Sol & Claude Opus 5.5 are liveGPT-6 Sol at half the price of 5.6 Sol

Gemini 2.5 Pro Deprecated: What Changes on December 1

The calls keep working. Three request changes will not.

Kiki, OmniaKey COO8 min read
On this page

On December 1, 2026, Google sends every Gemini 2.5 Pro request to Gemini 3.8 Flash and bills it at 3.8 Flash rates: $0.75 per million input tokens and $3.75 per million output tokens through December 31, 2026 (Google's deprecations page, checked November 4, 2026). Calls keep succeeding on the day. Payloads written for the old model do not, and most of the fixes are small.

Three edits cover most of the work:

  • change the model string to gemini-3.8-flash;
  • replace thinking_budget with thinking_level;
  • remove temperature, top_p, top_k, candidate_count and prefilled model turns.

The other three steps cover multi-turn state, function calling and the SDK. Each one gets a number below, with what you see if you skip it.

What happens on December 1?

The date comes from Google's release notes, not a countdown page. The entry headed November 2, 2026 marks gemini-2.5-pro as deprecated and says all API requests will automatically go to gemini-3.8-flash and be billed at Gemini 3.8 Flash rates (Google's release notes, checked November 4, 2026).

The deprecations table adds the dates around it: released June 17, 2025, shutdown December 1, 2026, replacement gemini-3.8-flash (checked November 4, 2026). The model page is narrower still: API access is limited to existing users who have actively used it, and only until December 1, 2026. The AI Studio picker has already dropped the model.

One detail is worth reading twice. The same table row gives December 1, 2026 as a shutdown date and promises automatic forwarding to 3.8 Flash. Google does not say whether a forwarded call reports gemini-2.5-pro or gemini-3.8-flash in the response, so log the model ID you get back on the first day.

Whatever the response says, the replacement is stable: gemini-3.8-flash shipped September 2, 2026, has one stable version ID, and has no shutdown date announced (Google's deprecations page, checked November 4, 2026).

What the reroute means for your code and your bill

The existing-users rule applies now, before December 1: Google's 2.5 Pro model page says API access is limited to existing users who have actively used it, and only until December 1, 2026 (checked November 4, 2026). Test the key your team actually deploys with before you plan the rest of the work.

The two models are closer than that rule suggests. Both models take 1,048,576 input tokens and return up to 65,536, both read text, images, video, audio and PDF, and both return text (Google's model pages, checked November 4, 2026). Differences show up at the edges: the 3.8 Flash page lists computer use as supported, and the 2.5 Pro page has no computer-use row. Audio generation, image generation and Live API are marked unsupported on both.

Then the bill. From December 1 you pay 3.8 Flash rates for the same request. Before that date, 2.5 Pro keeps its own price and its 200,000-token tier.

What breaks when you move to 3.8 Flash

Six request shapes change behavior, and function calling needs the most careful pass. Google's 3.8 Flash migration checklist names each change (checked November 4, 2026).

What you sendWhat happensWhat to change
thinking_budgetreplaced in the 3.8 requestsend thinking_level
thinking_level: "minimal"returns an erroruse low, medium or high
temperature, top_p, top_kignored now, HTTP 400 in future generationsdelete them
candidate_countunsupported in Gemini 3 and laterone candidate per call
a final turn with role: "model"HTTP 400move the rule into system_instruction
FunctionResponse without call_id and nameMalformed_Function_Calladd both fields

The sampling parameters are the quiet failure. Google's 3.6 notes say temperature, top_p and top_k are deprecated and ignored today, and that supplying them returns an HTTP 400 in future model generations (checked November 4, 2026). Ignored is worse than rejected for a tuned prompt: your determinism settings stop doing anything and no error tells you.

Prefill is the loud one. A request whose last non-empty turn is a model turn returns HTTP 400, and the fix is system_instruction or structured outputs (Google's 3.6 notes, checked November 4, 2026). Multi-turn conversations should carry previous_interaction_id instead of a rebuilt transcript with a prefilled last turn.

For function calling, put multimodal assets inside the response payload, separate inline instructions with \n\n, and use Google's workaround if Malformed_Function_Call appears around pre-tool text. On the legacy generateContent call, every FunctionResponse needs call_id and name.

Thought signatures are the sixth item, and they matter when your SDK is older than the model. Google's checklist sends you to its thought-signature page for SDK updates and signature preservation.

The six code changes, step by step

Work in this order. The first two touch every request; the rest touch specific features.

  1. Change the model string. Send gemini-3.8-flash instead of gemini-2.5-pro, in config rather than in a retry helper, so logs show the ID you meant to call.
  2. Replace the thinking budget. thinking_budget becomes thinking_level with low, medium or high. medium is the default and minimal returns an error.
  3. Delete the sampling parameters and the prefilled turn. temperature, top_p, top_k, candidate_count and a trailing model turn all go.
  4. Move multi-turn state. Standardize on server-side previous_interaction_id.
  5. Audit function calling. Assets inside the response payload, \n\n between inline instructions, call_id and name on every FunctionResponse.
  6. Update the SDK and keep thought signatures. The 3.8 checklist links Google's thought-signature page for this.

The request diff fits in one block. Before:

json
{
  "model": "gemini-2.5-pro",
  "contents": [{"role": "user", "parts": [{"text": "Summarize the attached invoice."}]}],
  "generation_config": {
    "thinking_budget": 8192,
    "temperature": 0.7,
    "top_p": 0.9
  }
}

After:

json
{
  "model": "gemini-3.8-flash",
  "contents": [{"role": "user", "parts": [{"text": "Summarize the attached invoice."}]}],
  "generation_config": {
    "thinking_level": "medium"
  }
}

Run one real request on gemini-3.8-flash before December 1 and log the model ID in the response.

If you want another way to call gemini-3.8-flash during the changeover, the Gemini 3.8 Flash model page lists the ID, the 1M context and the three thinking levels. Current rates for both models are on the pricing page.

The price difference

On the standard paid tier, 3.8 Flash costs less than half of 2.5 Pro on output and 40% less on input until December 31, 2026 (Google's pricing page, checked November 4, 2026).

ModelInput per 1MOutput per 1M
gemini-2.5-pro, up to 200k$1.25$10.00
gemini-2.5-pro, over 200k$2.50$15.00
gemini-3.8-flash, to Dec 31 2026$0.75$3.75
gemini-3.8-flash, from Jan 1 2027$1.50$7.50

A request with 100,000 input tokens and 20,000 output tokens makes the gap concrete. On 2.5 Pro it costs $0.125 + $0.20 = $0.325. On 3.8 Flash it costs $0.075 + $0.075 = $0.15 through December 31, 2026, and $0.15 + $0.15 = $0.30 from January 1, 2027.

Read the 2027 row before you celebrate. Input rises 20% above 2.5 Pro's $1.25, and output stays 25% below 2.5 Pro's $10.00. A request that is mostly input will cost more next year than it does on 2.5 Pro today.

Batch pricing keeps the same shape: 2.5 Pro charges $0.625 input and $5.00 output up to 200k tokens, and 3.8 Flash charges $0.375 and $1.875 through December 31, 2026 (Google's pricing page, checked November 4, 2026).

The full rate card, with caching, Priority and the 2027 numbers, is in the Gemini 3.8 Flash pricing guide.

2.5 Flash and 2.5 Flash-Lite

2.5 Flash takes the same December 1 date; 2.5 Flash-Lite does not.

ModelShutdownReplacement
gemini-2.5-flashDecember 1, 2026gemini-3.5-flash-lite
gemini-2.5-flash-litenone announcedstays available

Google's deprecations page (checked November 4, 2026) puts gemini-2.5-flash on the same terms as 2.5 Pro: released June 17, 2025, requests go to gemini-3.5-flash-lite from December 1, 2026, and billing moves to 3.5 Flash-Lite rates. gemini-2.5-flash-lite is not deprecated and remains available until further notice.

Two audio IDs need their own calendar entry. gemini-2.5-pro-preview-tts and gemini-2.5-flash-preview-tts shut down on November 17, 2026, replaced by gemini-3.8-flash-tts or gemini-3.8-flash-lite-tts.

The older pinned 2.5 Pro previews are already off. gemini-2.5-pro-preview-03-25, -05-06 and -06-05 have a December 2, 2025 shutdown date, so a config that still names one of them is failing today.

Frequently asked questions

Is gemini 2.5 pro deprecated?

Yes. Google's release notes dated November 2, 2026 mark gemini-2.5-pro as deprecated, and the deprecations page sets December 1, 2026 as the date every API request moves to gemini-3.8-flash (checked November 4, 2026). The model is already gone from the AI Studio picker.

What happens to my calls on December 1, 2026?

They keep returning answers. Google says requests to gemini-2.5-pro automatically go to gemini-3.8-flash and are billed at 3.8 Flash rates. The same table also lists December 1, 2026 as a shutdown date, and Google does not say which model ID the response reports, so log it on the first day.

Is Gemini 2.5 Pro still in AI Studio?

No. Google removed gemini-2.5-pro from the AI Studio picker and limits API access to existing users who have actively used it, until December 1, 2026 (Google's deprecations and model pages, checked November 4, 2026).

Will my code break if I change nothing?

Expect failures where 3.8 Flash rejects an old field: thinking_level: "minimal", candidate_count, a final model turn, and FunctionResponse objects without call_id and name. thinking_budget has to become thinking_level, and temperature, top_p and top_k are already ignored. Google's migration guide lists each change, and a request ending on a non-empty model turn already returns HTTP 400.

How much cheaper is Gemini 3.8 Flash?

Through December 31, 2026 it is 40% cheaper on input and 62.5% cheaper on output than 2.5 Pro below 200k tokens: $0.75 against $1.25, and $3.75 against $10.00 per million. From January 1, 2027, input costs 20% more than 2.5 Pro and output costs 25% less.

Sources checked

Models in this article

Gemini 2.5 ProdeprecationGemini 3.8 FlashAPI migrationGoogle Gemini

Related articles

Recent posts

Popular guides