◉GEMINI LABJP
●TTS — The three TTS preview models shut down on 12/18 per the deprecations page, not 11/17●CLI 0.68 — Gemini CLI stable is v0.68.0, with v0.69.0-preview.0 (11/10) on the preview channel●GEMINI 2.5 — gemini-2.5-pro and 2.5-flash shut down on the API on 12/1, 16 days left. Move to 3.8 Flash or 3.5 Flash-Lite●NODE 26 — On Node 26, Gemini CLI's timeout settings reportedly stop applying to model requests●OMNI 1.1 — From 12/3, requests to gemini-omni-1.1-flash are routed to 1.2 Flash automatically●NEW — Getting Consistent JSON Through the OpenAI-Compatible Layer, in Three Steps●TTS — The three TTS preview models shut down on 12/18 per the deprecations page, not 11/17●CLI 0.68 — Gemini CLI stable is v0.68.0, with v0.69.0-preview.0 (11/10) on the preview channel●GEMINI 2.5 — gemini-2.5-pro and 2.5-flash shut down on the API on 12/1, 16 days left. Move to 3.8 Flash or 3.5 Flash-Lite●NODE 26 — On Node 26, Gemini CLI's timeout settings reportedly stop applying to model requests●OMNI 1.1 — From 12/3, requests to gemini-omni-1.1-flash are routed to 1.2 Flash automatically●NEW — Getting Consistent JSON Through the OpenAI-Compatible Layer, in Three Steps
Articles/API / SDK
◈ API / SDK/2026-08-16Intermediate

Moving to the Batch Tier Cancels Out the Gemini 3.7 Flash Price Increase Exactly

Introductory pricing for Gemini 3.7 Flash ends on December 31, 2026, and the rate doubles the next day. Here is which models are affected, which are not, and how to project your January bill from the usage you already have.

Gemini API256Pricing5Cost designModel selectionIndie development3

✦ Premium Article

Gemini 3.7 Flash went generally available on August 13. The announcement mentioned introductory pricing through December 31, 2026, so I opened the pricing page to see how much of a discount that was.

The numbers were identical to Gemini 3.6 Flash.

$0.75 in, $3.75 out. Not a discount attached to the new model — the same deadline applies across the Flash line. And a little further down the page, the story shifted. This is not a discount that expires. It is a rate that doubles.

Some models double. Some do not. If you cross into January with that line blurred, the invoice will draw it for you.

The introductory rate is not exclusive to 3.7 Flash

Here are the published numbers. Checked on August 16, 2026 against the Gemini Developer API pricing page, in USD per 1M tokens, paid tier, Standard.

ModelInput (2026)Input (2027+)Output (2026)Output (2027+)
gemini-3.7-flash$0.75$1.50$3.75$7.50
gemini-3.6-flash$0.75$1.50$3.75$7.50
gemini-3.5-flash$1.50$1.50$9.00$9.00
gemini-3.5-flash-lite$0.30$0.30$2.50$2.50

3.7 Flash and 3.6 Flash match on both input and output. So the usual assumption — newer means pricier — does not hold here. There is no cost argument against moving from 3.6 to 3.7.

The row that surprised me was 3.5 Flash. An older generation, at twice the rate of 3.7 Flash, with no introductory pricing at all, so it stays at $1.50 / $9.00 into next year. Put that next to 3.7 Flash after the change ($1.50 / $7.50) and the input is level while the output is cheaper on 3.7. There is no financial reason to sit on 3.5 Flash, this year or next.

If you have been deferring the move to a newer model until things settle down, that deferral is not saving you anything.

Some models rise, some hold

Look again at the right half of that table. Only 3.7 Flash and 3.6 Flash move. 3.5 Flash and 3.5 Flash-Lite hold.

This is not an across-the-board increase. It changes the ratio between models.

Comparison20262027+
3.7 Flash ÷ 3.5 Flash-Lite (input)2.5×5.0×
3.7 Flash ÷ 3.5 Flash-Lite (output)1.5×3.0×

If you route between a light model and a heavy one, that shift lands directly on your design. A "when in doubt, escalate" policy that is affordable today may not be affordable in January. I will put numbers on the escalation rate later in this article, but the point to hold onto is that the increase acts on your architecture, not on a single model.

There is a second reading of the same fact. Because Flash-Lite holds, the incentive to push work down to it gets stronger next year. If quality allows, the next few months are a good window to widen the range of tasks Flash-Lite can handle.

✦

Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
✦You will be able to project how much your Gemini spend rises on January 1, 2027 from your current usage, without waiting for the invoice
✦You will be able to tell which models are affected by the increase and which are not, so you are not hunting for a migration target in January
✦You will be able to separate the work that can wait from the work that cannot, and assign each to the Standard or Batch tier on your own criteria
Secure payment via Stripe · Cancel anytime
✦

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
Share

Thank You for Reading

Gemini Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • ✦Copy-paste ready implementation code
  • ✦New advanced guides published daily
  • ✦$5/mo or $10 for lifetime access
View Membership →

Related Articles

◈ API / SDK2026-11-14
When JSON Shapes Drift Through Gemini's OpenAI Compatibility Layer: Three Steps to response_json_schema Without Rewriting Callers
If your OpenAI SDK code points at Gemini and structured output seems ignored, here is how to check whether a schema is actually sent, and how to move to the Gemini SDK's response_json_schema while keeping the same function boundary.
◈ API / SDK2026-10-30
An 'API key expired' Error Doesn't Always Mean Expired. Check Which Key Is Actually Sent Before You Renew It
A 400 with API_KEY_INVALID from the Gemini API cannot tell you whether the key expired or something else is wrong. A small diagnostic script checks env-var precedence and stray quotes first, run here against dummy keys.
◈ API / SDK2026-10-30
My ADK Agent Never Ran and Said 'API key expired' — Reading the Reason Code Gave Me a Triage Order
When ADK returns 400 INVALID_ARGUMENT 'API key expired. Please renew the API key.' on every run, check this order before assuming the key expired: read the reason code, compare shell and .env keys by their last four characters, then test the key alone over REST.