RORK LABJP
SDK58 — The Expo SDK 58 beta is open. It ships the React Native 0.88 release candidate, and the beta period is stated as three to four weeks11/01 — For anyone who requested an extension, Google Play's target API deadline lands on November 1. Forty-four days outEASENV — A long-open report: secrets handed to a local build arrive as the literal variable name rather than its value, and the damage surfaces much laterNEW — The replacement the table recommended had already shut down. A record of reconciling all 74 rows of the deprecation listUISCENE — iOS 27 requires the new scene lifecycle. SDK 57 makes it something you opt into; it only becomes the default in 58CREDIT — What "AI errors don't cost credits" actually covers becomes clear once you record a day of asking for the same fix more than onceSDK58 — The Expo SDK 58 beta is open. It ships the React Native 0.88 release candidate, and the beta period is stated as three to four weeks11/01 — For anyone who requested an extension, Google Play's target API deadline lands on November 1. Forty-four days outEASENV — A long-open report: secrets handed to a local build arrive as the literal variable name rather than its value, and the damage surfaces much laterNEW — The replacement the table recommended had already shut down. A record of reconciling all 74 rows of the deprecation listUISCENE — iOS 27 requires the new scene lifecycle. SDK 57 makes it something you opt into; it only becomes the default in 58CREDIT — What "AI errors don't cost credits" actually covers becomes clear once you record a day of asking for the same fix more than once
Articles/AI Models
AI Models/2026-09-17Advanced

The recommended replacement was already gone — auditing all 74 rows of Gemini's deprecation table

Cross-checking Gemini's deprecation table turned up five rows where the recommended replacement had itself already shut down, including gemini-2.5-flash-image, which goes away on October 2. Here is how to verify a migration target, and how to catch the 404 before your users do.

Gemini8model deprecationmigration2error handlingRork568

Premium Article

I was changing the model name behind the category classifier for my wallpaper app one morning, and I fumbled it — the old ID stayed in place, the run went through, and every image came back with an empty category.

The cause took a minute to find. What kept me at the desk was the deprecation page I opened next. The model I had picked as my migration target had a date beside it, and the date was in the past.

I had assumed the "recommended replacement" column always pointed at something still running. That assumption was the expensive part of the morning.

Only a handful of rows actually carry a date

I pulled the Gemini deprecations page apart as a table. Sorting its 74 rows (page last updated 2026-09-15) against today's date, 2026-09-17, gives this:

BucketRowsWhat it means for you
Shutdown date already passed39Calling it is not an option
Shutdown date in the future4You can plan against a date
No shutdown date announced31You cannot plan against a date

Four rows out of seventy-four have a future date on them:

ModelShutdownDays from today
gemini-omni-flash-preview2026-09-3013
gemini-2.5-flash-image2026-10-0215
gemini-3.1-flash-lite2027-05-07232
gemini-embedding-0012028-05-14605

One correction while we are here. You will hear that "the 2.5 family all goes away in October." On today's table, gemini-2.5-flash, gemini-2.5-pro and gemini-2.5-flash-lite each read "no shutdown date announced." The October 2 date belongs to the image model, gemini-2.5-flash-image, and to nothing else in that family.

So the slice of the problem you can handle with a calendar is much thinner than it looks. Putting a reminder in your calendar works for four rows. For the other seventy, there is no date to remind you of.

Copying the replacement column sends you to a dead model

Then I went one step further with the same table. I took each model ID written in the "recommended replacement" column, looked it up as a row of its own, and checked whether it had a shutdown date.

Five rows came back. Five entries recommend a replacement that has itself already shut down.

ModelIts shutdownRecommended replacementReplacement's shutdown
gemini-2.5-flash-image2026-10-02gemini-3.1-flash-image-preview2026-06-25 (passed)
imagen-3.0-generate-0022025-11-10imagen-4.0-generate-0012026-08-17 (passed)
imagen-4.0-generate-preview-06-062026-02-17imagen-4.0-generate-0012026-08-17 (passed)
imagen-4.0-ultra-generate-preview-06-062026-02-17imagen-4.0-ultra-generate-0012026-08-17 (passed)
gemini-robotics-er-1.5-preview2026-04-30gemini-robotics-er-1.6-preview2026-08-31 (passed)

Look at the first row. The model disappearing in fifteen days points you at gemini-3.1-flash-image-preview, and that preview stopped on June 25. Anyone who copies the replacement column straight across migrates onto something that is already gone.

The target that is actually alive is the GA release, gemini-3.1-flash-image, with the preview suffix dropped. The table does say so — on a different row. You will not learn it by reading the gemini-2.5-flash-image row.

Six more rows recommend a replacement that has a future shutdown date of its own, which is to say the place you move to is also on a clock. And one row recommends a model that has no row at all: gemini-robotics-er-1.6-preview points at gemini-robotics-er-2-preview, which does not appear in the table.

The replacement column tells you where the family is heading. It does not tell you what is running today. Miss that distinction and you will do the same migration twice.

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 verify, on your own, whether an officially recommended replacement is still alive — including whether it has a shutdown date of its own
You will be able to put a landing pad under your AI calls so that a 404 arriving before the published date never turns into a silent failure in front of a user
You will be able to decide whether a model ID belongs inside your shipped app at all, knowing that only 4 of 74 rows carry a future shutdown date
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

Rork 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 $15 for lifetime access
View Membership →

Related Articles

AI Models2026-07-17
The Three-Minute Video That Kept Failing — Moving Rork's Gemini Uploads Off the Worker
How I rerouted video uploads to the Gemini Files API from a Cloudflare Workers relay to a direct device-to-Google path — why the 128MB isolate limit breaks the relay, how to hand out a resumable upload URL without leaking your API key, what Expo SDK 54 broke on the device side, and how the 20GB project ceiling and media resolution decide the bill.
AI Models2026-07-05
When Your Finance App's AI Keeps Dumping Everything Into 'Other' — Field Notes on Catching Silent Classification Drift
An AI expense classifier in a Rork finance app can be accurate at launch and quietly decay over months until the monthly advice goes wrong. Here is how I instrumented confidence and category distribution to get ahead of the drift, with working code.
AI Models2026-05-05
Build an AI-Powered Certification Exam App with Rork: Adaptive Learning That Targets Your Weak Spots
Build a certification exam prep app with Rork and Gemini API. Learn to implement adaptive quiz logic, AI-driven weakness analysis, and Supabase-backed progress tracking — from first prompt to App Store.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links