# CRISPE Prompt Framework (and 4 Others): Templates and Worked Examples
The CRISPE prompt framework is a five-part template for writing AI prompts: Capacity and Role, Insight, Statement, Personality, Experiment. Fill in each part and the model gets the persona, context, task, tone and number of variations it needs to produce something you can use on the first try. This guide covers CRISPE in full, then four other frameworks that solve different problems: RACE for structured work briefs, RISEN for multi-step tasks, TAG for quick bounded requests, and CO-STAR for anything where audience and tone decide whether the output lands.
Each framework below has a one-line definition, a fill-in template you can copy, and a filled example. None of them is "the best." The acronyms are memory aids; what matters is whether your prompt contains the elements the task in front of you needs. If you would rather skip the memorising entirely, describe your task to the prompt generator and it applies the right structure for you. This is the featured guide of the prompt frameworks and techniques hub, which also covers chain-of-thought and zero-shot versus few-shot prompting.
What is a prompt framework?
A prompt framework is a reusable structure for writing AI prompts. Each letter in the acronym stands for one type of information the model benefits from: who it should act as, what it should do, what background it needs, what format to return, and so on. Frameworks exist because most weak prompts fail the same way - they leave out a piece of context the writer had in their head and assumed the model would guess.
Frameworks are model-agnostic. The same CRISPE or CO-STAR prompt works in ChatGPT, Claude, Gemini, Llama or any other conversational model, because every one of them responds to role, context, task, constraints and format. What changes between models is how strictly they follow constraints, not whether the structure helps.
They are also optional. A December 2025 benchmark that tested RTF, TAG, RACE and others on a classification task found a plain, clearly written prompt scored as well as any framework, and a couple of frameworks slightly hurt accuracy on that specific task. The lesson is not "frameworks don't work" - it is that frameworks are scaffolding for specificity, and on a simple task the scaffolding is overhead. They pay off when the task is complex, when you need the same quality every time, or when a team needs to prompt consistently. How to structure AI prompts walks through the underlying elements if you want them without the acronyms.
Quick comparison: the 5 frameworks at a glance
If you only want the prompt frameworks list, this table is it. Each row links to a full section below with a template and a filled example.
| Framework | Stands for | Elements | Best for | Weak at |
|---|---|---|---|---|
| CRISPE | Capacity & Role, Insight, Statement, Personality, Experiment | 5 | Creative and copy work where persona, tone and variations matter | Quick factual or extraction tasks |
| RACE | Role, Action, Context, Expectation | 4 | Briefs, plans and structured deliverables | Tone-sensitive writing |
| RISEN | Role, Instructions, Steps, End goal, Narrowing | 5 | Multi-step processes, tutorials, anything sequential | One-line requests |
| TAG | Task, Action, Goal | 3 | Summaries, extraction, reformatting | Anything needing voice or persona |
| CO-STAR | Context, Objective, Style, Tone, Audience, Response | 6 | Audience-facing writing: emails, announcements, reports | Code, lookups, fixed-format output |
The CRISPE prompt framework
CRISPE definition
CRISPE was published by Matt Nigh in early 2023 in his open-source ChatGPT prompt list on GitHub. He built it for his own experimentation, and it spread because it was the first widely shared template that treated a prompt as a set of named slots rather than a sentence. The CRISPE components are:
- CR - Capacity and Role: who the model should be. One element, not two - the "capacity" is the expertise (an email copywriter), the "role" is how it acts in this conversation (a direct-response specialist advising a client). Many guides split these into separate letters, which is why you will see "six-part" versions of CRISPE online; the original is five.
- I - Insight: the background and context the model needs. Nigh's own note on this element was that "context" would have been the clearer word. This is where most of the prompt's value lives.
- S - Statement: the actual task - what you want produced.
- P - Personality: the tone, style and manner of the output.
- E - Experiment: a request for multiple variations, so you can pick rather than iterate.
The Experiment element is CRISPE's distinctive feature. Most frameworks ask for one answer. CRISPE assumes you will want two or three options to compare, which suits creative work where the first draft is rarely the keeper.
CRISPE fill-in template
[Capacity and Role] You are a [expertise], acting as [role in this task].
[Insight] Context: [who the audience is, what the situation is, what has already been tried, any constraints or facts the model cannot know].
[Statement] [The task, stated as a deliverable with a length or scope].
[Personality] Tone: [adjectives]. Avoid: [things you do not want].
[Experiment] Give me [N] different versions, each taking a different angle.CRISPE filled example
[Capacity and Role] You are an experienced email copywriter, acting as a direct-response specialist for a B2B software company.
[Insight] This is a re-engagement email for users of a project-management tool who signed up but have not logged in for 60 days. Onboarding data shows the main drop-off point is the first project setup, which users describe as "too many steps." A new three-click setup wizard shipped last week.
[Statement] Write a re-engagement email under 150 words that invites them back to try the new setup wizard. Include a subject line.
[Personality] Warm and direct. No guilt-tripping, no "we miss you," no exclamation marks.
[Experiment] Give me 3 versions: one leading with the time saved, one leading with a customer result, one leading with a single question.What the CRISPE prompt changes: a side-by-side
To see what the structure buys you, here is the same re-engagement task given two ways and what each produces. The plain prompt was "Write a re-engagement email for users who haven't logged in for 60 days."
| Plain prompt | CRISPE prompt above | |
|---|---|---|
| Subject line | "We miss you! Come back and see what's new" | "Project setup is now three clicks" |
| Opening | Generic apology for their absence, mention of "exciting updates" | Names the exact friction (setup took too many steps) and the fix |
| Length | ~210 words, four paragraphs | 128 words, three short paragraphs |
| Tone | Upbeat, two exclamation marks, "we'd love to have you back" | Neutral-warm, no exclamation marks, no guilt language |
| Variations | One | Three, each with a different lead (time saved, customer result, question) |
| Usable without edits? | No - too long, wrong tone, no concrete reason to return | Yes - version two ("customer result") went out with one word changed |
The difference is not that the model got smarter. It is that the Insight slot told it the one fact that makes the email worth opening, and the Personality slot ruled out the clichés it would otherwise default to.
When to use CRISPE (and when not to)
Use CRISPE for copywriting, creative writing, brainstorming and any task where you want options rather than a single answer. The Personality and Experiment elements earn their place there. For a summary, a data extraction or a reformat, CRISPE is more structure than the task needs - the Personality slot sits empty and the Experiment slot produces three near-identical outputs. Use TAG instead.
The RACE framework
RACE definition
RACE stands for Role, Action, Context, Expectation. Some versions write the E as "Execute" - the meaning is the same: define what a finished output looks like. RACE is CRISPE stripped of personality and variations and pointed at deliverables. It is the framework that comes closest to how you would brief a contractor.
- Role: the expertise the model should bring.
- Action: the specific thing to do, as a verb.
- Context: the audience, goal and situation.
- Expectation: the shape of the output - sections, length, format, success criteria.
RACE fill-in template
[Role] You are a [expertise].
[Action] [Verb] a [deliverable] for [subject].
[Context] The audience is [who]. The goal is [what success means]. Relevant facts: [bullet points].
[Expectation] Output format: [sections, length, structure]. It is done when [success criteria].RACE filled example
[Role] You are an SEO content strategist.
[Action] Create a content brief for an article targeting the keyword "content marketing for startups."
[Context] The audience is early-stage B2B SaaS founders with no marketing hire. The article's job is organic traffic and newsletter sign-ups. The site already ranks for "startup marketing plan," so this piece should not cannibalise it - angle it toward content specifically, not marketing generally.
[Expectation] Output: a working H1, six H2s with one sentence describing each, five secondary keywords, a target word range, and one differentiation angle versus the current top-ranking pages. Format as a markdown document.When to use RACE
RACE is the right default for briefs, plans, outlines, specs and any output you will hand to someone else to act on. It forces the Expectation step, which is the part most people skip, and the part that most reduces back-and-forth. If you find yourself writing a Context section with three audiences and two tones, the task has outgrown RACE - switch to CO-STAR.
The RISEN framework
RISEN definition
RISEN stands for Role, Instructions, Steps, End goal, Narrowing. It is credited to Kyle Balmer, who designed it for tasks that unfold as a sequence rather than a single answer. Where CRISPE and RACE describe a result, RISEN describes a process, which makes it the framework to reach for when order matters: tutorials, procedures, analysis that has to happen in a particular sequence, or anything where the model tends to skip a stage.
- Role: the expertise.
- Instructions: the overall task in one or two sentences.
- Steps: the ordered sub-tasks the model should work through, explicitly numbered.
- End goal: what the finished output achieves for the reader.
- Narrowing: constraints that cut scope - length, exclusions, audience level, formats to avoid.
The Narrowing element is RISEN's answer to a common failure: the model does everything you asked and then keeps going. A good Narrowing line is a list of what not to include.
RISEN fill-in template
[Role] You are a [expertise].
[Instructions] [The overall task in one or two sentences].
[Steps]
1. [First sub-task]
2. [Second sub-task]
3. [Third sub-task]
[End goal] When finished, the reader should be able to [outcome].
[Narrowing] Keep it under [length]. Do not [exclusion]. Assume the reader [knowledge level].RISEN filled example
[Role] You are a technical writer who documents developer tools.
[Instructions] Write a getting-started guide for a command-line tool that converts Markdown files to PDF.
[Steps]
1. State the one prerequisite (Node.js 18 or later) and the single install command.
2. Show the simplest possible conversion of one file, with the exact command and expected output filename.
3. Show how to convert a whole folder, then how to set a custom stylesheet.
4. List the three most common errors with a one-line fix for each.
[End goal] A reader who has never used the tool should get a PDF out of it in under five minutes.
[Narrowing] Under 600 words. Do not explain what Markdown or PDF are. Do not cover Windows-specific paths - macOS and Linux only. Use fenced code blocks for every command.When to use RISEN
RISEN shines for how-to content, onboarding material, step-by-step analysis and anything you would otherwise have to run as four separate prompts. The cost is setup time - the Steps block takes thought - so it is wasted on single-shot asks. One sign you need RISEN: the model keeps producing step three before it has finished step two.
The TAG framework
TAG definition
TAG stands for Task, Action, Goal. It is the leanest named framework in common use, and that is the point. TAG is for requests where a role, tone and persona would add words without adding quality - summaries, extractions, reformats, classifications. The Goal element is what separates TAG from a bare instruction: telling the model why you want the output lets it make the small judgement calls (what to cut, how much detail) in your favour.
- Task: what to do.
- Action: how to do it - the method or the specific operation.
- Goal: what the output is for.
TAG fill-in template
[Task] [What to do] with [the input].
[Action] [The specific operation and format].
[Goal] This will be used for [purpose], so [the constraint that follows from the purpose].TAG filled example
[Task] Summarise the attached 2,400-word article on remote team onboarding.
[Action] Extract the five most actionable points as a numbered list, one sentence each, and keep every number or statistic from the original.
[Goal] This goes in a weekly newsletter for HR managers who will skim it on a phone, so keep the whole list under 100 words and lead with the most surprising point.When to use TAG
Use TAG when the output is bounded and the format is obvious. Research notes, bullet summaries, pulling fields out of text, converting a paragraph to a table. Do not use it for anything where voice matters: a TAG prompt for a LinkedIn post will give you a correct, forgettable LinkedIn post. For creative work, step up to CRISPE; for audience-facing copy, CO-STAR.
The CO-STAR framework
CO-STAR definition
CO-STAR stands for Context, Objective, Style, Tone, Audience, Response. It was created by Sheila Teo, who used it to win GovTech Singapore's GPT-4 prompt engineering competition in 2023 and documented it in a widely read write-up, which is why it is sometimes called the "competition-winning" framework. Its defining move is separating Style from Tone: style is how the writing is constructed (short paragraphs, plain language, the structure of a press release), tone is its emotional register (reassuring, urgent, neutral). Most frameworks collapse both into one "personality" slot. Keeping them apart gives you far more control over how a piece reads.
- Context: the situation and background.
- Objective: the one thing the output must achieve.
- Style: the writing style - often expressed by naming a genre or a model to imitate.
- Tone: the emotional register.
- Audience: who reads it and what they already know.
- Response: the output format.
CO-STAR fill-in template
# CONTEXT #
[The situation, product, event or problem, with the facts the model needs.]
# OBJECTIVE #
[The single outcome this piece must achieve.]
# STYLE #
[Writing style - e.g. "like a product changelog", "like a plain-English legal explainer".]
# TONE #
[Emotional register - e.g. reassuring, celebratory, matter-of-fact.]
# AUDIENCE #
[Who reads it, their expertise level, what they care about.]
# RESPONSE #
[Format: length, structure, sections, any fields that must appear.]The hash-delimited headers are Teo's original formatting. They are not required, but they do help models keep each section distinct, and they make the prompt easy to edit later.
CO-STAR filled example
# CONTEXT #
Our billing system had an outage on Tuesday from 09:10 to 11:45 UTC. About 4% of customers were charged twice. All duplicate charges were automatically refunded by 14:00 UTC the same day. Root cause was a retry loop in a payment webhook, now fixed.
# OBJECTIVE #
Reassure affected customers that the issue is resolved and no action is needed, while being transparent about what happened.
# STYLE #
Like a well-written incident notice from a serious infrastructure company - factual, specific, no marketing language.
# TONE #
Calm and accountable. Apologetic once, then move to facts.
# AUDIENCE #
Finance and operations staff at small businesses. They are not technical but they do read bank statements closely and will have noticed the duplicate charge.
# RESPONSE #
An email under 180 words with a subject line, three short paragraphs (what happened, what we did, what you need to do - which is nothing), and a single line on how to contact support if a refund has not appeared.When to use CO-STAR
CO-STAR is built for writing that real people will read in a specific situation: customer emails, announcements, executive summaries, support replies, marketing copy where the audience changes from piece to piece. A CO-STAR prompt usually runs 80 to 150 words of setup, and it is worth it when a weak draft would cost you a revision cycle with a human. Skip it for code, lookups, data extraction and anything with a fixed output format - six sections of setup for a two-line answer is pure overhead.
How to pick a framework for the task in front of you
The fastest way to choose is to ask what the output is for and what is most likely to go wrong without structure. The flowchart below is the short version; the table after it adds the reasoning.
Figure: a decision path from task type to framework. Start at the top and stop at the first "yes".
| If the task is... | Reach for | Because |
|---|---|---|
| Copy, headlines, creative drafts where you want options | CRISPE | The Experiment element gives you variations to choose between |
| A brief, outline, plan or spec someone else will act on | RACE | Expectation forces you to define "done" |
| A procedure, tutorial or multi-stage analysis | RISEN | Steps and Narrowing keep the model in sequence and in scope |
| A summary, extraction, reformat or classification | TAG | Three elements is all it needs; anything more is noise |
| Customer-facing or stakeholder-facing writing | CO-STAR | Style, Tone and Audience are separate dials |
| Matching a specific voice or format | Few-shot examples | Showing one or two samples beats describing them |
A few rules that hold across all of them:
- Context beats structure. A prompt with a rich Insight or Context section and nothing else will usually outperform a perfectly labelled prompt with a thin one. If you only improve one element, improve that.
- Define the output before you ask for it. Length, format and sections. Every framework here has a slot for this (Experiment, Expectation, Narrowing, Goal, Response) and it is the slot most often left vague.
- Name what to avoid. "No exclamation marks," "do not explain what X is," "skip the introduction." Exclusions are cheaper than corrections.
- Do not stack frameworks. A CRISPE prompt with a CO-STAR tone block bolted on is not twice as good; it is a prompt with two competing sets of labels. Pick one, and if none fits, write the elements you need without an acronym.
- Reuse the ones that work. The real value of a framework is the second time you use it. Save filled prompts as templates. The prompt examples and templates collection is organised that way.
Frameworks versus prompt techniques
Frameworks and techniques are often listed together, but they do different jobs. A framework decides what information goes in the prompt. A technique decides how the model reasons with it. Chain-of-thought prompting ("work through this step by step before answering"), few-shot prompting (giving examples), and zero-shot prompting (giving none) are techniques; they slot inside any framework. A RISEN prompt is a natural home for chain-of-thought, because the Steps element already asks for sequential reasoning. A CRISPE prompt pairs well with few-shot when the Personality is easier to show than describe. If you are writing system-level instructions rather than one-off prompts, the structure changes again - see the guide to system prompts, where role and rules persist across a whole conversation rather than one message.
Common mistakes when using prompt frameworks
Filling every slot because it is there. If the Personality slot has nothing useful in it, delete it. An empty-but-labelled section tells the model nothing and dilutes the sections that matter.
Vague Insight or Context. "The audience is business professionals" is not context. "The audience is finance managers at 20-to-200-person companies who approve software spend and have been burned by tools that oversold integrations" is. The difference is what the model can act on.
Asking for variations without differentiating them. "Give me three options" produces three paraphrases. "Give me three options, each leading with a different benefit" produces three real choices. CRISPE's Experiment element only works when you tell it what should vary.
Leaving the output format implicit. The model will pick a format, and it will not be yours. State it.
Treating the framework as the goal. The goal is a usable output. If a two-line prompt gets you there, the two-line prompt is correct, and the framework was not needed.
Put the frameworks to work
Every framework in this guide is a way of making sure the prompt contains what the model needs. If you want that done for you, the ChatGPT prompt generator takes a plain description of your task and builds a structured prompt with role, context, constraints and format already filled in - ready to paste into ChatGPT, Claude or Gemini. For channel-specific starting points, the prompts by channel guide runs one product launch through SEO, email, social and ad-copy prompts, and the learn prompt writing hub covers the mistakes that undo good structure. Once you have an output, the tone changer and paragraph rewriter handle the last ten percent.
FAQ
What does CRISPE stand for in prompt engineering?
CRISPE stands for Capacity and Role, Insight, Statement, Personality, Experiment. It is a five-element prompt framework created by Matt Nigh in 2023. "Capacity and Role" is a single element describing who the model should be; Insight is the context; Statement is the task; Personality is the tone; Experiment asks for multiple variations.
What is the difference between CRISPE and CO-STAR?
CRISPE is built for creative work and asks for multiple variations through its Experiment element. CO-STAR is built for audience-facing writing and separates Style from Tone, with an explicit Audience element. Use CRISPE when you want options to choose between; use CO-STAR when getting the register right for a specific reader is the hard part.
What is the RISEN framework for prompts?
RISEN stands for Role, Instructions, Steps, End goal, Narrowing. It is designed for multi-step tasks: the Steps element lays out the order of work, and Narrowing lists constraints and exclusions so the model stays in scope. It suits tutorials, procedures and sequential analysis.
What is the RACE framework for prompts?
RACE stands for Role, Action, Context, Expectation (some versions say Execute). It is a four-part structure for briefs and deliverables: who the model should be, what to do, the situation, and what a finished output looks like. It is the closest framework to a standard work brief.
Is the TAG framework too simple?
For creative or tone-sensitive writing, yes. For summaries, extractions, reformats and classifications, TAG (Task, Action, Goal) is exactly enough. Its Goal element - telling the model what the output is for - is what makes it better than a bare instruction.
Do prompt frameworks work with Claude and Gemini, or just ChatGPT?
They work with all of them. Frameworks are structural, not model-specific: every conversational model responds to role, context, task, constraints and format. Models differ in how strictly they follow constraints, so you may need to tighten the Narrowing or Response section for one model more than another, but the framework itself transfers.
Do I need a framework at all?
Not always. On simple, well-defined tasks a clear plain-language prompt performs as well as any framework, and independent tests have shown that. Frameworks pay off on complex tasks, when you need consistent output across many runs, or when a team needs to prompt the same way. If a framework feels like overhead for what you are doing, it probably is.