Publishing ChatGPT App

How to Publish a ChatGPT App
ChatGPT now has an App Directory, and any developer can submit an app to it. Since OpenAI opened submissions in December 2025, the process has become more structured. That's good news for serious builders and harder news for anyone who expected it to work like the old GPTs Store.
This article walks through everything you need to know to get from idea to published app - what to prepare, what the review process actually evaluates, and what gets apps rejected.
Before You Submit: Build with the Apps SDK
Publishing a ChatGPT app is not the same as sharing a Custom GPT or calling an API. Apps in ChatGPT are built using the Apps SDK, which uses the Model Context Protocol (MCP) as its foundation. That means your app needs two components:
- An MCP server - this is the backend. It exposes the tools ChatGPT can call, defines what each tool does, and handles the logic when a user triggers an action.
- A frontend widget - this is the visual interface users see inside the chat. Widgets render inside ChatGPT's sandboxed iframe environment and must follow OpenAI's UI guidelines.
The MCP server needs to be publicly accessible via HTTPS before you can submit. During development, tools like ngrok work fine. For submission and production, you need a real public endpoint.
OpenAI has published example apps, an open-source UI component library, and a quickstart guide to help developers get started. These are worth reading before writing a single line of code. The UI guidelines in particular matter more than most developers expect - apps that don't match ChatGPT's design patterns are a common rejection reason.
What You'll Submit
Once testing is complete, you submit through the OpenAI Developer Platform at platform.openai.com. Each submission includes:
- App name and logo - name should be clear and specific, not generic; logo must meet size and format requirements.
- Description - this is public-facing text users see in the directory. Write it in natural language around what the app helps users accomplish, not how it's built.
- Company and privacy policy URLs - a privacy policy is mandatory, not optional. OpenAI will not approve apps without one.
- MCP and tool information - you'll document your tools, their descriptions, and their action annotations.
- Screenshots - multiple, taken inside Developer Mode in ChatGPT (not local environments).
- Test prompts and expected responses - realistic user inputs and your app's expected output for each.
- Country availability settings - you define which countries your app will be visible in.
- Localization information - if your app is available in multiple regions, language settings matter.
How OpenAI Reviews Your App
Submission starts a review process, and you'll receive email updates as it moves through stages. According to developers who have been through the process, typical review time is 2 to 3 months for standard apps. Complex integrations can take longer.
After Approval: What Changes
Once approved, your app becomes visible in the ChatGPT App Directory. Users can connect it from chatgpt.com/apps or through the tools menu inside ChatGPT.
You can update your app after approval. Minor changes - bug fixes, small improvements - generally don't require resubmission. Major changes to functionality or tool definitions typically do.
You can only have one published version per app at a time. If you want to update while keeping the current version live, you submit a new version for review and swap them when it's approved.
Final Words
Publishing to the ChatGPT App Directory is more structured than what most developers expect if they're coming from the Custom GPT era. The review bar is real. But it exists for a reason - to keep the directory useful for users rather than cluttered with experiments that don't work.
If your app solves a real problem and the tools are correctly defined, the path to publication is predictable.
AI is evolving. Your product should too.