How to migrate custom GPTs to plugins: a practical guide

OpenAI plans to retire custom GPTs on 11 December 2026. The change affects all ChatGPT plans. This guide explains how to prepare your GPTs, check integrations and help your team switch. Follow the deadline shown in your account.

Source: OpenAI: Custom GPT retirement and migration FAQ

3D illustration: an arrow connects a chat application and documents to a plugin represented by a docking puzzle piece.

At a glance

Who is affected?
Anyone whose work relies on custom GPTs. For another provider’s GPT, the provider or an authorised admin handles migration.
Which deadline applies?
The scheduled date is 11 December 2026. A deferral requires explicit approval. Check your account’s notice.
What transfers?
Instructions, knowledge files and connected apps. The plugin bundles them for reuse.
What still needs work?
Replace custom actions, test results and check team access. Switch only after successful testing.

When do custom GPTs retire?

11 December 2026: scheduled retirement
Check the notice in the account or workspace where the GPT was created. Its timeline applies even if you use the GPT from a different account.

11 February 2027: approved Enterprise deferrals only
This extension applies only to eligible workspaces with an approved deferral. Ask your administrator to confirm your workspace’s deadline.

26 October 2026: planned creation freeze in affected Enterprise workspaces
Publish any drafts you need before your workspace’s cutoff. Public sharing is not required. The creation freeze is separate from the retirement of existing GPTs, and announced dates may change.

What transfers, and what needs your attention?

What transfers, and what needs your attention?
ComponentAfter migrationWhat to check
Instructions and knowledge filesA skill and reference files in the pluginUse familiar tasks to check that instructions and source material are used correctly.
Connected appsIncluded in the pluginTest sign-in, permissions and the actions you need.
Custom actionsDo not transferAssess a replacement using an available app or a custom MCP server.
Sharing and installationNeed to be set up againAsk an intended user to check access.
Model selection and resultsDo not assume the same setup or behaviourCompare outputs and test required tools before switching.

Six steps to plan and carry out your migration

Download checklist (PDF)
Choose a migration step
  1. Migrations

    Take stock

    At a glance
    • ApplicationsEvery GPT in use
    • OwnersA named person responsible
    • PriorityAssess the impact of an outage

    OutcomeA prioritised inventory with named owners and a fallback for important workflows.

    Full instructions
  2. Migrations

    Prepare your GPT for migration

    At a glance
    • InstructionsReview and finish edits
    • FilesCurrent and still needed
    • Published versionFinish drafts first

    OutcomeA reviewed, published version and a clear list of outstanding work.

    Full instructions
  3. Migrations

    Review integrations

    At a glance
    • AppsCheck access and sign-in
    • Custom actionsDo not transfer. Set up a replacement.
    • ReplacementA suitable app or MCP server

    OutcomeAn integration inventory with a verified replacement or an explicit unresolved requirement for each connection.

    Full instructions
  4. Migrations

    Run the migration

    At a glance
    • InstructionsBecome a skill
    • Knowledge filesBecome reference files
    • Connected appsAre added to the plugin

    OutcomeA private replacement plugin with reviewed content and documented differences, not yet approved for routine use.

    Full instructions
  5. Migrations

    Test the workflow

    At a glance
    • Familiar tasksCompare with known results
    • Edge casesCheck missing and conflicting information
    • System accessUse test data and minimal permissions

    OutcomeA documented test status. Approve the workflow only when it meets your business criteria; a successful migration does not guarantee identical results.

    Full instructions
  6. Migrations

    Help your team switch

    At a glance
    • AccessShare with the team
    • InstallationSet up the plugin and apps
    • Trial taskComplete a familiar task

    OutcomeThe team can use the replacement in the correct account and knows who to contact when something goes wrong.

    Full instructions

Take stock

List every GPT your team actually uses. Record its name and link, account or workspace where it was created, business task, owner and users. Separate your own GPTs from other providers’ applications.

Describe the impact of an outage in one sentence: what work would stop, who would be affected and is there a manual alternative? Use this to set a priority, such as high for a daily workflow with no fallback.

Keep a few familiar prompts and their expected results as a test baseline. Use anonymised example data. Record unresolved questions and your intended switch date in the checklist.

Prepare your GPT for migration

Open each GPT you own in the correct account. Read its instructions, check that knowledge files are current and decide which content is still needed. Record existing sharing settings and users.

Finish essential changes and publish the version you want to migrate. Drafts do not transfer, but publishing does not require public sharing. Check your workspace notice for any creation cutoff.

Document the chosen version and any gaps. After migration, the original GPT becomes read-only. Make subsequent changes to the plugin.

Review integrations

Record each connection to an external system: which data does it read, which records does it change and which account does it use? Custom actions are individually configured calls to external interfaces. They are not transferred automatically during migration.

For each custom action, check whether an available app supports the tasks you need. Otherwise, you may need a custom MCP server, a technical service that gives an AI system access to defined tools and data. Availability, permissions and setup need a separate review.

For each replacement, record supported and missing capabilities, the owner and a test with no real business impact. A rebuilt connection may have a different scope. Even transferred apps still need their own access permissions and may require sign-in.

Run the migration

Sign in to the account or workspace where the GPT was created. Check the notice, plugin availability and your permissions. The creator can migrate it; in Enterprise, a workspace administrator can also do so when access is enabled. Simply using someone else’s GPT does not let you migrate it.

Open My GPTs. Choose Migrate to plugin for the relevant GPT once the option is available. Read the migration details and follow the steps to create the plugin. If the option is missing, use the troubleshooting checks below.

Review the transferred content: GPT instructions become a skill, a reusable set of working instructions. Knowledge files become reference files, and connected apps are added to the plugin. Custom actions and the previous model selection do not transfer. Enterprise model defaults apply in Enterprise workspaces.

The new plugin starts private. Migration does not install it automatically or copy existing sharing settings. The original GPT remains usable until its applicable retirement date but becomes read-only. Built-in Enterprise migration does not require Upload plugins or Upload plugins with custom MCP servers; building a separate integration may need additional permissions.

Test the workflow

Run the same tasks with anonymised data through the existing GPT and the replacement. Include typical cases and at least one difficult case with missing or conflicting information. Define what an acceptable result must contain before testing.

Check that the right skill is used, instructions are followed, reference files inform the output and answers or files have the required format. Different wording may be acceptable; invented facts, missing required information or incorrect data changes are not.

Test connections separately using test data and minimal permissions. For write access, verify the actual record changed and check for unwanted side effects. Record the test date, result, defect and correction; rerun failed cases after fixing them.

Help your team switch

Share the tested plugin with its intended users and ask one of them to check access. In Enterprise, Share plugins for people or groups and Publish plugins to workspace for the workspace directory are separate permissions. Making a personal plugin public requires a separate submission process.

In the intended account, open the plugin directory, select the plugin, review its included apps and choose Install plugin if shown. If prompted, select Connect and sign in to the correct provider account. Some apps need no individual sign-in or use an administrator-configured connection. A Desktop only label means the desktop app is required.

In Enterprise, check Use plugins permission and a policy that allows installation or installs the plugin automatically. Installation, plugin sharing and app permissions are separate requirements. They do not extend access to data in the connected system.

Ask a team member to complete a familiar task using suitable test data. In ChatGPT, an installed plugin can be selected through an @ mention or the available composer options. Depending on the interface, these are labelled +, More or Plugins; in a supported Codex task view, use Sources → Use plugins. Automatic skill selection will not necessarily happen for every request.

Update internal links and short working instructions. Assign an owner for maintenance and issues, agree a switch date and check actual use afterwards. If a critical test remains unresolved, use the agreed fallback and record the decision.

How to check that your migration worked

Use these examples to plan your own tests. They are suggestions, not verified client projects.

Customer enquiry with missing details

Task
“We need a solution for our team. Please send us a quote.”
Expected result
The assistant asks about the task, number of users and constraints.
Passes when …
it asks targeted questions about the missing information without inventing facts or commitments.

Quote draft without approved prices

Task
Provide a clear service request without an approved price list.
Expected result
The draft flags unresolved prices and terms. A responsible person decides whether to send it.
Passes when …
it invents no prices or delivery commitments and follows the agreed output format.

Update exactly one record

Task
In a test system, request a change to one allowed field using a unique test ID.
Expected result
Only the intended field in that record is updated.
Passes when …
other data remains unchanged and an unknown ID or missing permissions cannot cause an unintended write.

When you run into a problem

Why is the migration option missing?

First check the originating account, the GPT’s notice and plugin availability. Confirm the GPT is published and you are its creator or an authorised Enterprise administrator. A target date having passed does not prove access is enabled. If the prerequisites are met, ask your administrator to check plugin settings or contact OpenAI Support.

Why can’t a team member access the replacement?

The replacement starts private; the GPT’s sharing settings are not carried over. Check the account, sharing for this specific plugin, installation and, in Enterprise, Use plugins permission and the installation policy. Ask the affected person to open the plugin themselves. Then check app access separately.

Why does a connection need additional setup?

Custom actions do not transfer. Check whether the connection is a custom action or an included app. For an app, review its setup, sign-in and permissions; an app template may first need administrator configuration. For a custom action, assess a suitable app or a separately configured MCP server and test the required capabilities.

What should I do if results differ?

Repeat the same test and compare instructions, reference material, skill selection, output format and tools. The previous model selection is not transferred. Correct the replacement and test again. If errors affect the business task, keep using the manual fallback until the workflow passes.

Book a call

A free migration check for your custom GPTs

Would you like to discuss your next steps with Dawid? In a free introductory call, we will review your situation and explore:

The call provides an initial assessment. It does not include a full technical review or a binding estimate of the work required.

Dawid Troska
Dawid Troska · Founder of AKSORT
I’ve been building and integrating software for businesses since 2010. Today I design and build AI workflows and support teams until they can run them on their own.
What we’ll cover
  • Which applications should take priority?
  • Where will additional work be needed?
  • What is the most useful next step?
Have these details ready for the call
  • Number of GPTs.
  • Most important business task.
  • Existing system connections.

You do not need every answer yet. Bring what you know about your GPTs and how your team uses them.

Your details Choose a time

Let’s talk.

Dawid Troska · 30 min · Microsoft Teams

Choose a calling code or enter a full international phone number starting with +.

Choose a time

Please fill in your details first, then choose a time.

We use your details to arrange this conversation.

Open the calendar in a new tab