Do AI Personas Actually Improve Claude's Output? The Data Says No
A 162-persona test found role-play prompts don't help Claude. Here's what Anthropic's own guidance says to write instead.

Do persona prompts make Claude perform better?
No. A test covering 162 different personas across roughly 2,500 prompts found that adding a role like “you are a senior copywriter with 20 years of experience” produced no measurable improvement over simply asking the question directly. The model performed the same either way. This lines up with a broader shift inside Anthropic itself: the Claude Code team has reportedly cut its own system prompt by around 80%, and current guidance treats stuffing prompts with examples and role descriptions as no longer best practice.
TL;DR
- Testing across 162 personas and roughly 2,500 prompts found that persona prompts like “you are a senior copywriter” don’t improve Claude’s output compared to asking directly.
- Anthropic’s own prompting guidance favors three concrete elements instead: where to find context, a clear definition of done, and a self-check step before finishing.
- Negative instructions such as “do not return this as markdown” can confuse the model when they conflict with the actual task, so positive phrasing (“write it as flowing paragraphs”) works better.
- Claude Code’s system prompt itself runs around 50 instructions, and models reliably follow somewhere between 150 and 200 instructions, which is why bloated claude.md files backfire.
- The best-performing instruction files sit around 300 to 350 words, and the
/doctorcommand can suggest trims to an oversized claude.md without hurting performance. - Sub-agents don’t inherit conversation history, output style, or already-loaded files, and built-in explore/plan agents skip claude.md entirely, so critical rules need to be restated directly in their instructions.
Seven tools to build an app. Or just Remy.
Editor, preview, AI agents, deploy — all in one tab. Nothing to install.
Why doesn’t role-play prompting work?
The intuitive theory behind persona prompting was that giving Claude a role would prime it to draw on more relevant patterns, the same way asking a person to “think like a lawyer” nudges their reasoning. The testing didn’t bear that out. Across 162 personas and thousands of prompts, outputs with a persona attached scored no better than outputs from a plain, direct question.
The likely explanation is that large language models aren’t reading persona text as a behavioral instruction the way people assume. Lines like “take a deep breath, this is very important” or “you are an expert with 20 years of experience” add tokens to the prompt without adding information the model can actually act on. Claude doesn’t know what a 20-year copywriter would do differently from a competent one asked directly. What it can act on is specific, checkable information about the task itself.
That’s the reasoning behind Anthropic trimming its own system prompt substantially and moving away from example-heavy, persona-heavy prompting patterns. If the company building the model no longer thinks that structure is worth the tokens, it’s a reasonable signal for anyone writing prompts day to day.
What should you write instead of a persona?
Anthropic’s own prompting guidance points to three elements worth spending your words on:
- Where to look. Tell Claude specifically where additional context lives, such as a folder of client notes or a specific file, rather than assuming it will infer this.
- Definition of done. Describe what the finished output should actually look like: format, structure, length, what it needs to cover.
- A self-check. Anthropic’s documentation suggests literal phrasing like “before you finish, verify your answer against” followed by whatever the check should be.
Applied to a real example: instead of “You are a senior copywriter with 20 years of experience who writes all my marketing copy. Take a deep breath, this task is very important,” a rewritten prompt would say something like: “Look in the onboarding folder for the client notes. This should be a one-page proposal covering their three pain points with pricing listed at the bottom. Before you finish, check every number against our notes and flag anything you can’t back up.”
That’s roughly the same word count as the persona version, but every word does something. Claude has a location for context, a concrete definition of a finished output, and an explicit verification step.
Should you write negative instructions like “don’t use markdown”?
Generally, no. Negative instructions such as “do not return this as markdown text” can confuse the model, especially when they conflict with something else the prompt is implicitly asking for. The fix is to state the positive version of the instruction instead: “write it as smooth, flowing text paragraphs” tells Claude what to produce, rather than listing what to avoid. Positive, concrete instructions give the model something to aim for; negative ones just narrow a space without defining what should fill it.
How long should a claude.md file actually be?
Remy is new. The platform isn't.
Remy is the latest expression of years of platform work. Not a hastily wrapped LLM.
Shorter than most people think. Claude Code’s own system prompt runs around 50 instructions, and models are reported to reliably follow somewhere between 150 and 200 instructions before performance starts to degrade. The instruction files that perform best land around 300 to 350 words, not lines or instructions, words.
The diagnostic worth remembering: if Claude keeps ignoring a rule that’s clearly written in your claude.md, the usual instinct is to capitalize it or add “IMPORTANT” in front. The actual fix is different. A rule getting ignored is a signal the file is too long and the rule is getting lost in the noise, not that it needs stronger emphasis.
Two practical checks: see if your claude.md is under 100 to 200 lines, and if not, run the /doctor command, which acts as a health check on your Claude Code setup. Asking it to “propose trims to my claude.md that won’t impact performance” can surface sections worth cutting, sometimes saving several thousand tokens per session while improving how reliably Claude follows what’s left.
One related timing issue: claude.md files are read once at session start and held in memory. Editing the file mid-session doesn’t take effect until you compact or start a new session. If you add a rule while chatting, Claude will only pick it up in a new session, not the one you’re currently in.
What context do sub-agents actually receive?
Less than most people assume. A sub-agent gets its own system prompt, whatever task instructions you wrote, and the claude.md hierarchy, most of the time. What it doesn’t get: conversation history, output style, auto-injected memory from the main thread, or any files already read into the main context.
It gets narrower still with Claude’s built-in explore and plan agents, the ones automatically delegated when you haven’t created a custom sub-agent. These skip receiving claude.md entirely. Practically, that means any critical constraint your project depends on needs to be restated directly in the instructions you give a sub-agent, since you can’t rely on it inheriting rules from the main file. If a task genuinely needs full context, forking the conversation instead of delegating to a sub-agent preserves that context rather than starting fresh.
This also connects to cost. Agent teams running in plan mode reportedly use around seven times more tokens than a standard session, because each teammate maintains its own separate context window on the same underlying model. Sub-agents are well suited to broad, parallel investigation where little context is required. For tasks that need a lot of existing context to do well, keeping the work in the main session tends to be both cheaper and more reliable.
Frequently Asked Questions
Do persona prompts ever help with Claude?
Testing across 162 personas and about 2,500 prompts found no measurable benefit over asking directly. The tokens spent on a persona are better spent on context location, a definition of done, and a self-check.
What three things should a good Claude prompt include?
Anthropic’s guidance points to telling Claude where to find relevant context, describing what a finished output looks like, and giving it an explicit self-check to run before finishing.
Why does Claude ignore a rule in my claude.md even though it’s clearly stated?
Other agents start typing. Remy starts asking.
Scoping, trade-offs, edge cases — the real work. Before a line of code.
It’s usually a sign the file is too long, not that the rule needs stronger phrasing. Anthropic’s guidance suggests instruction files around 300 to 350 words perform best, and the /doctor command can suggest cuts.
Do sub-agents see my full claude.md and conversation history?
Not fully. They typically get their own system prompt, your task instructions, and the claude.md hierarchy, but not conversation history, output style, or already-loaded files. Built-in explore and plan agents skip claude.md entirely.
Is it better to tell Claude what not to do or what to do?
What to do. Negative instructions like “don’t use markdown” can conflict with other parts of a prompt and confuse the model. Positive phrasing, like specifying the exact format wanted, tends to work more reliably.