Custom GPTs
Custom GPTs are user-built GPT configurations with a defined persona, custom instructions, uploaded knowledge files, and optional API integrations (Actions). They let you package a specific use case — a domain-expert assistant, a writing coach with your style guide, a customer service bot — into a reusable, shareable configuration without writing any code.
What Custom GPTs Are
A Custom GPT is essentially a GPT-5 model with a curated setup applied on top:
- Name and persona: The GPT has a name, an optional profile picture, and a defined role or personality
- Custom instructions: A system prompt defining how the GPT behaves — its tone, what it focuses on, what it refuses to do
- Knowledge files: Uploaded documents the GPT references when answering questions, creating a retrieval-augmented knowledge base without you building RAG infrastructure
- Actions: API integrations via OpenAPI specs that let the GPT call external services on your behalf
The result is a specialised assistant that behaves consistently for a specific purpose every time you open it — no prompting preamble required.
Building a Custom GPT
Custom GPTs are built in the GPT Editor, accessible from ChatGPT:
- Open ChatGPT and click Explore GPTs in the left sidebar
- Click Create in the top right
- Use the Create tab to describe your GPT to a builder assistant (which generates instructions for you), or switch to Configure to edit everything manually
- Upload knowledge files, set the name, configure Actions if needed
- Choose visibility: private (only you), link-sharing, or public (GPT Store)
Knowledge Files
Knowledge files are documents uploaded to the GPT that it can search and reference during conversations. This effectively gives the GPT a domain-specific knowledge base. Limits per GPT:
- Up to 20 files per GPT
- Up to 512 MB per file
- Up to 2,000,000 tokens per file for retrieval use
Supported file types include PDF, Word documents, plain text, spreadsheets, code files, and more. ChatGPT's file search retrieves relevant passages at query time.
Actions (API Integrations)
Actions allow a Custom GPT to call external APIs during a conversation. You provide an OpenAPI specification describing the API endpoints, and the GPT can decide when to call them based on the conversation. For example: a travel planning GPT with an Action connected to a flight search API can look up live prices mid-conversation.
Actions use OAuth or API key authentication. Users of the GPT are prompted to authorise the connection the first time they trigger an Action.
GPT Store
The GPT Store is OpenAI's public marketplace for sharing and discovering Custom GPTs. Key points:
- A paid plan (Plus or above) is required to publish GPTs to the Store
- Free plan users can browse and use Store GPTs, subject to Free-tier message limits
- Categories include Writing, Productivity, Research & Analysis, Programming, Education, and Lifestyle
- OpenAI curates "Editor's Picks" and featured collections
Usage Limits by Plan
| Plan | Can Create GPTs | Can Publish to Store | Message Limits |
|---|---|---|---|
| Free | No | No | Can use Store GPTs within Free limits |
| Plus | Yes | Yes | ~80 GPT-4o messages per 3 hours |
| Pro / Enterprise | Yes | Yes | Higher limits; up to 10 active concurrent tasks |
Instructions Hierarchy
ChatGPT has three levels of instruction that interact when using Custom GPTs:
- Global Custom Instructions (Settings → Personalization): apply by default across all conversations
- GPT Instructions: defined when building the Custom GPT — these override global custom instructions when you use that GPT
- Project Instructions (if using the GPT within a Project): project-level context is also applied
Understanding this hierarchy prevents confusion when a GPT behaves differently than you expect — its instructions take precedence over your personal settings.
Checklist
- What are the four components you configure when building a Custom GPT?
- What is the maximum number of knowledge files per Custom GPT, and what is the per-file size limit?
- How do Actions differ from uploaded knowledge files in terms of data access?
- Which plan is required to publish a Custom GPT to the GPT Store?
- When GPT instructions conflict with your global custom instructions, which takes precedence?