Custom GPT Retirement: What Moves to Plugins and What Breaks

2026-10-23

The goal: a migrated plugin that behaves like your Custom GPT, checked before the retirement date and not after your users report problems. You will need access to the GPT in My GPTs, ten or fifteen real prompts from its history, and a second account for the sharing check.

Custom GPT retirement is scheduled for December 11, 2026, according to Campus Technology's report on the plugin switch. Timing and migration availability can vary by account and workspace, so the date in your own workspace notice is the one that counts. For Enterprise workspaces, the same report says the migration schedule targets October 26 for ending creation of new Custom GPTs, and customers with approved deferrals can keep using existing GPTs until February 11, 2027.

What a plugin is

A plugin can hold one or more skills (instructions and resources for a repeatable workflow), an MCP server that exposes tools and outside systems, or both. A Custom GPT was one bundle of instructions, files and actions. A plugin splits those parts into separate pieces, and that split explains most of what follows.

What moves and what does not

Migration runs from the My GPTs interface. The table below follows the Campus Technology report, which describes each part in turn:

Part of your GPTIn the pluginWhat to check
InstructionsBecome a skillRead the skill text; wording that worked as a system prompt may need trimming
Knowledge filesCopied into plugin reference filesAsk questions only the files can answer
Connected appsCan be carried overConfirm each one still authenticates
Custom actionsDo not moveRecreate with an available app or a custom MCP server
Selected modelDoes not movePick and test again
Existing conversationsDo not moveExport anything you need to keep
Sharing settingsDo not moveMigrated plugins start private; set sharing again

The last row bites hardest. The same report states that existing GPT users do not automatically receive access to the replacement. A plugin that works perfectly in your account can be invisible to everyone else.

If your GPT calls a service such as Zapier through an action, that action is on the to-recreate list. The older note on Zapier GPTs and their actions describes the setup you are replacing, so use it as a map of what the new version has to cover.

Three ways to replace a custom action

The task: your GPT called an outside service through a custom action, and actions do not move. The report says an action may have to be recreated using an available app or a custom MCP server. That gives two routes, and a third is what you are left with when neither fits. The table compares them by what each one is good for.

RouteWhat it doesHow it connectsLimit
Available appCalls an outside service through a connector that already exists in your workspaceAdd the app to the plugin and authenticateOnly covers services that have an app; you get the operations the app exposes, not your own endpoint's shape
Custom MCP serverExposes your own API or internal system as tools the plugin can callYou host a server and register it with the pluginYou now run and maintain a service; workspace admins may have to allow it
Move the step into the skillThe plugin no longer calls anything; the skill tells the user what to do or what to pasteEdit the skill textNothing is automated, so it fits only actions that were rarely used

How to choose

Start from what the action did. If it called a well-known service and an app for it is listed, use the app, because it is the least to maintain. If it called your own API or a system with no app, a custom MCP server is the only route that keeps the behavior, and you should budget time for hosting it. If the action was a convenience that few people used, the third route may be enough. The deadline matters too: a replacement that needs a server and an admin approval is a poor fit for the last week.

Behavior changes are the real risk

OpenAI's Custom GPT retirement and migration FAQ is quoted in both reports as saying: "A migrated plugin may respond differently." Reports collected by Virtualization Review on September 30, 2026 show what that can mean in practice:

  • one user wrote that instructions and knowledge files "seem to be completely ignored";
  • another saw replies drift back toward ordinary ChatGPT behavior after several messages;
  • a conversation starter was cut short during migration;
  • a business owner found a migrated assistant stuck as private with the sharing control disabled.

These are user reports, not a measured failure rate. Nobody has published numbers on how often it happens, and this note does not claim any. Treat them as a list of places to look.

A test plan before December 11

  1. Finish any edits to the original GPT first, and copy its instructions into a text file so you have a reference to diff against.
  2. Collect ten or fifteen real prompts from your history, including the awkward ones.
  3. Run each prompt in the old GPT and the plugin, and keep the outputs side by side.
  4. Check three things in the plugin: does it follow the instructions, does it use the reference files, and is the output in the format you require.
  5. Ask one question that only a knowledge file can answer, and one that must be refused under your instructions. Both fail quietly more often than the happy path does.
  6. Recreate each action, then test it with a real call, not by reading the config.
  7. Open the plugin from a second account to confirm sharing works.

If the plugin fails step 4 and you cannot fix it by editing the skill, you have a decision to make about the deadline rather than a bug to patch. A list of which GPTs anyone still uses will show which ones can be dropped instead of ported.

Where this advice stops

Both sources are news reports that quote OpenAI's FAQ, not the FAQ itself, and they do not give a full inventory of every setting. The plugin editor is changing while people use it. Treat every date and table row above as what the two reports say, and compare them with the notice shown in your own workspace.

Next step: open My GPTs today, list every GPT with a custom action, and pick the replacement route for each one before you migrate anything.