Real-World Swipe File: RTF, RACE, and CRAFT in Marketing & Customer Support
Department-specific RTF, RACE, and CRAFT prompt templates for content, support, sales, and product teams, with side-by-side comparisons.
Department-specific RTF, RACE, and CRAFT prompt templates for content, support, sales, and product teams, with side-by-side comparisons.
Prompting isn't the real bottleneck—templates are. Great prompts get lost in chat threads, forcing teams to constantly reinvent the wheel.
This swipe file provides ready-to-use prompt templates organized by framework (RTF, RACE, CRAFT) and department (Content, Support, Sales, Product). Use these templates and side-by-side framework comparisons to build your team's prompt library fast.
Before the templates, a fast recap so the swipe file makes sense even if you're new to structured prompting.
| Framework | Stands For | Best For |
|---|---|---|
| RTF | Role, Task, Format | Quick, single-turn requests where you know exactly what output shape you want |
| RACE | Role, Action, Context, Expectation | Requests that need situational context to produce a relevant answer |
| CRAFT | Context, Role, Action, Format, Tone | Higher-stakes or public-facing content where tone control matters as much as structure |
None of these frameworks are mutually exclusive. Think of them as different levels of scaffolding. RTF is a scooter, RACE is a bike, CRAFT is a car with cruise control. Use the lightest one that gets the job done.
A generic "write me a marketing email" prompt produces generic marketing email output. The fix isn't a smarter model, it's a more specific prompt, and specificity compounds when it's baked into a reusable template rather than typed fresh every time.
Each role below has different constraints:
The templates below are written so a non-technical teammate can copy, paste, fill in the blanks, and get usable output on the first try.
RTF is the framework you reach for when the task is well-defined and you don't need much backstory. Role tells the model who to be, Task tells it what to do, Format tells it how to structure the answer.
Role: You are a {{content_type}} writer for a {{industry}} brand with a {{brand_voice}} tone.
Task: Write a {{content_type}} about {{topic}} aimed at {{target_audience}}.
Format: {{word_count}} words, structured with {{formatting_requirements}}.
Role: You are a blog writer for a B2B SaaS brand with a friendly but professional tone.
Task: Write a blog post about "how to reduce customer churn" aimed at early-stage startup founders.
Format: 1200 words, structured with an intro, three H2 subheadings, and a closing call-to-action.
Role: You are a {{support_tier}} customer support agent for {{company_name}}.
Task: Respond to a customer who is {{customer_situation}}.
Format: {{tone_requirement}} reply, under {{word_limit}} words, ending with a clear next step.
Role: You are a tier-2 customer support agent for CloudNest, a cloud storage company.
Task: Respond to a customer who is upset because their files failed to sync for three days.
Format: Empathetic and apologetic reply, under 150 words, ending with a clear next step.
Role: You are an SDR at {{company_name}}, selling {{product_or_service}}.
Task: Write a cold outreach message to {{prospect_title}} at {{prospect_company}} regarding {{pain_point}}.
Format: {{channel}} message, under {{word_limit}} words, no more than one call-to-action.
Role: You are an SDR at DataPilot, selling a data pipeline monitoring tool.
Task: Write a cold outreach message to the VP of Data Engineering at Northwind Logistics regarding frequent pipeline failures going unnoticed until customers complain.
Format: LinkedIn message, under 80 words, no more than one call-to-action.
Role: You are a product manager at {{company_name}} preparing a {{document_type}}.
Task: Summarize {{feature_or_project}} for {{stakeholder_audience}}.
Format: {{format_requirements}}.
Role: You are a product manager at Fenwick Analytics preparing a stakeholder update.
Task: Summarize the new "custom dashboards" feature for the executive leadership team.
Format: Three bullet points covering status, risk, and next milestone.
RTF templates work best as Slack canned responses or saved prompts in your team's shared prompt tool. Keep the variable names consistent across templates so people learn the pattern once and reuse it everywhere.
RACE is a step up from RTF. It adds Context, so the output isn't just structurally correct, it's actually relevant to the specific situation. Use RACE when the same request could reasonably produce very different answers depending on background details.
Role: You are a content strategist for a {{industry}} company.
Action: Create a {{content_type}} promoting {{topic_or_product}}.
Context: The audience is {{audience_description}}, and the current situation is {{business_context}}.
Expectation: The output should {{success_criteria}}.
Role: You are a content strategist for a fintech company.
Action: Create a LinkedIn post promoting our new instant-payout feature.
Context: The audience is small business owners who've been frustrated by 3-5 day payout delays with competitors, and we're launching this feature during a period where cash flow anxiety is a common pain point in the industry.
Expectation: The output should highlight the specific pain point being solved, avoid sounding like a generic feature announcement, and end with a soft call-to-action to book a demo.
Role: You are a senior support specialist at {{company_name}}.
Action: Draft a response to a customer regarding {{issue_summary}}.
Context: This customer has {{customer_history}}, and the account status is {{account_details}}.
Expectation: The response should {{resolution_goal}}.
Role: You are a senior support specialist at Ledgerly, an accounting software company.
Action: Draft a response to a customer regarding a billing discrepancy on their last invoice.
Context: This customer has been on the platform for two years with no prior complaints, and the account status shows they were double-charged due to a known bug that was fixed last week.
Expectation: The response should acknowledge the specific bug, confirm the refund timeline, and offer a small goodwill gesture without over-promising.
Role: You are an SDR at {{company_name}}.
Action: Write a follow-up message to {{prospect_name}} after {{previous_interaction}}.
Context: The prospect works at {{prospect_company}}, which is {{company_situation}}.
Expectation: The message should {{desired_outcome}}.
Role: You are an SDR at Northgate CRM.
Action: Write a follow-up message to Priya Malhotra after she attended our webinar but didn't respond to the first follow-up email.
Context: The prospect works at Riverstone Retail, which recently posted job openings for two sales operations roles, suggesting the team is scaling.
Expectation: The message should reference the hiring signal naturally, avoid sounding like it was triggered by tracking software, and ask a single low-friction question.
Role: You are a product manager at {{company_name}}.
Action: Write {{document_type}} explaining {{decision_or_change}}.
Context: The background is {{relevant_background}}, and the stakeholders involved are {{stakeholder_list}}.
Expectation: The document should {{communication_goal}}.
Role: You are a product manager at Kestrel Health.
Action: Write a release note explaining why we're deprecating the legacy reporting module.
Context: The background is that usage dropped 80% after the new analytics suite launched, and the stakeholders involved are enterprise customers who built internal workflows around the old exports.
Expectation: The document should explain the reasoning without sounding dismissive of long-time users, and clearly state the migration timeline.
When filling in the Context field, resist the urge to write a paragraph. One or two sentences with the specific fact that changes the answer is usually enough. More context isn't always better context.
CRAFT is the framework to reach for when the output is going somewhere public, or when getting the tone wrong is costlier than getting the structure wrong. It's Context, Role, Action, Format, and Tone, all five in one prompt.
Context: {{business_context}}.
Role: You are a {{content_type}} writer for {{brand_name}}.
Action: Write a {{content_type}} about {{topic}}.
Format: {{format_requirements}}.
Tone: {{tone_description}}.
Context: We're launching a redesigned mobile app after months of user complaints about navigation, and this is the first major announcement customers will see.
Role: You are a product marketing writer for Orbitline, a project management app.
Action: Write an in-app announcement about the redesigned navigation.
Format: 100 words max, one heading, one short paragraph, one call-to-action button label.
Tone: Confident but not defensive about past issues, genuinely excited without sounding like corporate spin.
Context: {{situation_background}}.
Role: You are a {{support_role}} at {{company_name}}.
Action: Write a {{communication_type}} addressing {{issue}}.
Format: {{format_requirements}}.
Tone: {{tone_requirement}}.
Context: We experienced a four-hour service outage that affected all customers on the Pro plan, and this is going out as a mass email after the incident is resolved.
Role: You are the head of customer support at Vantage Analytics.
Action: Write a post-incident email addressing the outage and its impact.
Format: Under 250 words, no bullet points, single clear apology followed by what happened and what's changing.
Tone: Direct and accountable, no corporate hedging language, no blaming third-party vendors even if partially responsible.
Context: {{market_or_account_context}}.
Role: You are an SDR at {{company_name}} targeting {{segment}}.
Action: Write a {{message_type}} to {{prospect_description}}.
Format: {{format_requirements}}.
Tone: {{tone_requirement}}.
Context: The prospect's company just announced layoffs affecting the marketing department, and they may be sensitive to any messaging that seems opportunistic.
Role: You are an SDR at Clearpath Analytics targeting mid-market marketing teams.
Action: Write an email to the remaining marketing operations lead about our workflow automation tool.
Format: Under 100 words, no subject line needed, single question at the end.
Tone: Genuinely helpful and understated, absolutely no urgency language, no mention of the layoffs directly.
Context: {{project_background}}.
Role: You are a product manager at {{company_name}}.
Action: Write a {{document_type}} covering {{topic}}.
Format: {{format_requirements}}.
Tone: {{tone_requirement}}.
Context: We're announcing a price increase for existing customers for the first time in three years, effective in 60 days.
Role: You are a product manager at Fenwick Analytics.
Action: Write a customer-facing announcement covering the price change and what's improved since launch.
Format: 300 words, three short paragraphs, no bullet points.
Tone: Transparent and respectful of long-time customers, no apologetic over-explaining, no burying the actual number.
Here's where the differences become obvious. Below is the exact same objective, announcing a product launch, written through RTF, RACE, and CRAFT. Notice how the output shape and depth change even though the underlying goal is identical.
| Framework | Prompt Focus | Typical Output Characteristics |
|---|---|---|
| RTF | Role + Task + Format only | Fast, generic-but-usable, good for internal drafts or first passes |
| RACE | Adds audience and business context | More relevant hook, references specific pain points, still needs a tone pass |
| CRAFT | Adds explicit tone control | Publish-ready or close to it, fewer revision cycles needed |
[RTF Version]
Role: You are a product marketing writer for a project management SaaS company.
Task: Write a launch announcement for our new "AI task prioritization" feature.
Format: 150 words, one paragraph, ending with a call-to-action.
[RACE Version]
Role: You are a product marketing writer for a project management SaaS company.
Action: Write a launch announcement for our new "AI task prioritization" feature.
Context: Our users have consistently said in feedback surveys that they spend too much time manually re-ordering their to-do lists every morning, and this feature automates that.
Expectation: The announcement should lead with the specific frustration being solved, not the feature name, and avoid sounding like generic "AI-powered" marketing copy.
[CRAFT Version]
Context: This is our biggest feature launch of the year and we're sending it to our full customer base, including customers who've been vocal on social media about wanting less "AI hype" from software vendors.
Role: You are a product marketing writer for a project management SaaS company.
Action: Write a launch announcement for our new "AI task prioritization" feature.
Format: 150 words, one paragraph, ending with a call-to-action.
Tone: Confident but grounded, avoid buzzwords like "revolutionary" or "game-changing," speak like you're explaining it to a colleague, not pitching it to a room.
The RTF version gets you a usable first draft in seconds. The RACE version is noticeably more specific because it knows what problem it's solving for. The CRAFT version is the one most teams could publish with minimal editing, because it's been told explicitly what to avoid, not just what to include.
If your team is short on time, start with RTF for internal drafts and reserve RACE or CRAFT for anything customer-facing. The extra fifteen seconds of prompt-writing saves a full editing pass later.
Once you've got templates like these working for individual tasks, the real leverage comes from turning them into a shared, versioned library instead of scattered personal notes. Here's a practical structure that scales past a five-person team.
{{company_name}} and another uses {{business_name}}, people will copy-paste incorrectly. Pick one naming convention and enforce it across every template.Store your prompt library somewhere your team already works, a shared doc, a Notion database, or a dedicated prompt management tool like Acluebox. A library nobody opens is worse than no library, because it creates false confidence that a process exists.
A few patterns show up repeatedly when teams try to roll these out:
Getting this right isn't about memorizing a framework. It's about matching the right amount of structure to the stakes of the task, and making sure that structure lives somewhere your whole team can find and reuse it.
RTF covers Role, Task, and Format, which is enough for straightforward, well-defined requests. RACE adds Context and Expectation, making it better suited for situations where background information changes what a good answer looks like.
Use CRAFT when tone control matters as much as structure, typically for public-facing or customer-facing content like announcements, incident emails, or brand communications where getting the tone wrong carries real cost.
Yes. RTF, RACE, and CRAFT are prompt structuring frameworks, not model-specific features, so they work across most major AI assistants and chat tools as long as you can submit a text prompt.
Assign a clear owner per department, keep the library in a tool people already check daily, and include filled-in examples alongside every template so people can copy a working pattern instead of starting from a blank field.
No. Match the framework to the task's stakes and complexity within each department. A quick internal support macro might only need RTF, while that same team's public post-incident communication is a better fit for CRAFT.

Linear Reasoning: Mastering Zero-Shot and Few-Shot Chain-of-Thought (CoT)

Advanced Prompt Frameworks for Logic and Reasoning: CoT, ToT, and ReAct Explained

Everyday Prompt Frameworks: RTF, RACE, and CRAFT Explained

Chaining Prompt Frameworks: RTF, RACE, and CRAFT for Multi-Step Workflows

How to Debug Weak AI Outputs: Fix Vague Roles, Bloated Context & Format Failures