How to use a system prompt in Claude
Last checked
Claude has three places in the app for standing instructions, plus the system parameter in the API. The prompts on this site are between about 9,000 and 25,500 characters long, with most around 14,000. For how they are structured and what the bracketed slot at the end is for, see How to use the prompts on this site.
Projects
A project is a workspace with its own chats, knowledge and instructions. Anthropic's help centre says projects are available to all users, including free accounts, and that free users can create up to five projects.
To create a project and add a prompt as its instructions:
- Select Projects in the left sidebar, or go to claude.ai/projects.
- Select + New Project.
- Give the project a name and description. Claude does not have access to the name or description, so they do not affect answers.
- In the project, select Set project instructions.
- Paste the prompt, after deleting the closing label and bracketed slot, such as
[REQUEST]. Select Save instructions. - Start a chat in the project and type your request.
Claude uses the project instructions in every chat within that project. Anthropic's help articles do not state a character limit for project instructions.
Project knowledge
The project knowledge area is on the right side of a project's main page. Anything added there is used across all chats in the project. To add a file, select the + button and upload it. Each prompt page on this site has a Raw .txt link that serves the prompt as a plain text file.
Limits for project files:
- Up to 30 MB per file.
- No fixed number of files, but the total content has to fit within Claude's context window.
- On paid plans (Pro, Max, Team and Enterprise), when project knowledge approaches the context limit, Claude switches to retrieval mode, which Anthropic says expands capacity by up to 10 times.
A prompt from this site is roughly 9 to 26 KB as a text file, well within the per-file limit. If you put the prompt in knowledge rather than in the instructions, you can add a short project instruction telling Claude to follow that file.
Context is not shared between chats in a project unless it is added to project knowledge.
Instructions for Claude
This is an account-wide setting, applied to all your conversations:
- Click your initials in the lower left corner.
- Select Settings.
- Enter text under Instructions for Claude.
Anthropic's help articles do not state a character limit for this field. Because it applies to every chat, a role-specific prompt placed here also shapes chats unrelated to that role. Project instructions keep a prompt limited to one project.
Skills
Skills are folders of instructions, and optionally scripts and resources, that Claude loads when they are relevant to a task. Anthropic says they are available on Free, Pro, Max, Team and Enterprise plans and require code execution to be turned on. Unlike project instructions, which apply to every chat in a project, a skill is used when Claude judges it relevant, or when you ask for it. Anthropic describes custom skills as written in Markdown; see its articles on creating custom skills for the format.
Anthropic's current personalization article lists instructions, project instructions and skills. It no longer lists styles, so styles are not covered here.
Pasting into a chat
This works on every plan:
- On the prompt page, select Copy prompt.
- Start a new chat in Claude and paste.
- Replace the bracketed slot at the end with your request and any material, then send.
The instructions stay in effect for that chat. A new chat starts without them. Files you attach in a chat can be up to 500 MB each, with up to 20 files per chat.
The Claude API
In the Messages API, the system prompt goes in the top-level system parameter, as a string or an array of text blocks. Anthropic's reference describes it as "a way of providing context and instructions to Claude, such as specifying a particular goal or role". There is no system role for the first entry in the messages array; the request itself goes in a user message.
{
"model": "MODEL_ID",
"max_tokens": 4096,
"system": "You are an email assistant. ...",
"messages": [
{"role": "user", "content": "Reply to my landlord about the broken heater."}
]
}
The Messages API is stateless: each request carries the full conversation history, and the system parameter is sent with every request. Replace MODEL_ID with a current model ID from Anthropic's models page.
Sources
Menu names and labels in Claude change from time to time. These are the official pages used for this guide, checked on 2026-10-03: