How to Write Better Prompts for Claude in Business Tasks
Problem
I kept getting generic, unfocused outputs from Claude when I used it for business tasks. My prospecting emails sounded like templates. My proposals lacked specificity. My analyses were surface-level.
Here’s what my prompts looked like:
Write me a prospecting email for my SaaS product.
Create a proposal for a new client.
Analyze our competitor's pricing strategy.The results were disappointing. Claude would generate 300-word emails with multiple calls-to-action. Proposals had vague timelines. Competitor analysis missed key differentiators.
I assumed I needed to iterate more. So I added follow-up prompts:
Make it shorter.
Be more specific.
Focus on the value proposition.This helped slightly, but I was spending 5-6 iterations to get acceptable output. Each conversation felt like pulling teeth.
What I discovered
I found a Reddit discussion where user u/Hot_Meat7918 shared a critical insight about business prompts:
“For business tasks, the game changer is giving Claude a precise role before anything else. Instead of ‘write me a prospecting email’ -> ‘You are a B2B cold email expert. Write an email for [your job] targeting [prospect] whose main problem is [problem]. Max 120 words, 1 CTA only.’ The quality difference is immediate.”
This user compiled 50 prompts using this approach for entrepreneurs. I was skeptical but decided to test it.
My first test
I tried the transformation on my prospecting email task:
Before:
Write me a prospecting email for my SaaS product.After:
You are a B2B cold email expert. Write an email for a SaaS foundertargeting VP of Sales at enterprise companies whose main problem islow lead conversion rates. Max 120 words, include one CTA only,use a consultative tone.The difference was immediate. Here’s what changed:
| Aspect | Before | After |
|---|---|---|
| Word count | 287 words | 118 words |
| CTAs | 3 (demo, call, reply) | 1 (reply) |
| Tone | Generic promotional | Consultative, problem-focused |
| Specificity | Could be any product | Clearly addresses lead conversion |
| Iterations needed | 5-6 | 1 |
The output was so much better that I tested this pattern across multiple business tasks.
The framework
After testing extensively, I identified the four components that make role-based prompting effective:
1. Role Assignment
Define who Claude should be. This activates domain-specific knowledge and conventions.
You are a senior financial analyst at a Fortune 500 company.You are a B2B SaaS email copywriter with 10 years experience.You are a venture capitalist who has reviewed 500+ pitch decks.The key is specificity. “You are an expert” is too vague. “You are a B2B SaaS email copywriter who specializes in enterprise outreach” is precise.
2. Context Injection
Provide specific details about your situation, audience, and constraints.
Context:- My product: A CRM automation tool for mid-market companies- Target audience: Sales operations managers at companies with 50-500 employees- Their main pain point: Manual data entry taking 10+ hours per week- My differentiation: AI-powered field mapping that learns from correctionsWithout context, Claude produces averaged responses. With context, Claude tailors to your specific scenario.
3. Output Specification
Define length, format, tone, and limitations.
Output requirements:- Length: Maximum 150 words- Format: Problem-Agitate-Solution structure- Tone: Professional but not stuffy- Include: One specific statistic (I'll provide)- Exclude: Pricing information, feature listsThis prevents Claude from defaulting to generic formats that don’t fit your needs.
4. Single Focus
One clear objective per prompt.
Objective: Write the opening hook only. Do not write the full email.
Objective: Create 5 subject line options. Do not write email body.
Objective: Rewrite this paragraph to be more direct. Keep the same meaning.When I combined multiple objectives, output quality dropped significantly.
More examples
Here’s how I transformed other common business prompts:
Competitive analysis
Before:
Analyze our competitor's pricing strategy.After:
You are a pricing strategy consultant at McKinsey. Analyze Acme Corp'spricing strategy based on their public pricing page.
Context:- My company: Mid-market SaaS, $500-2000/month range- Competitor: Acme Corp, enterprise-focused- What I need: Understand if their pricing creates an opportunity for us
Output requirements:- Length: 300 words maximum- Format: Bullet points with evidence- Focus: Gaps in their pricing that we could exploit- Exclude: General market analysis, industry trendsThe before version gave me a generic pricing analysis that could apply to any competitor. The after version identified three specific gaps: no mid-market tier, no monthly billing option, and enterprise features locked behind a 2-year minimum contract.
Proposal writing
Before:
Create a proposal for a new client.After:
You are a senior solutions architect at a digital transformation consultancy.Write the executive summary section of a proposal for TechCorp Inc.
Context:- Client: Manufacturing company, 500 employees- Project: Legacy system migration to cloud- Timeline: 6 months- Budget: $150,000- Their concern: Minimizing downtime during migration
Output requirements:- Length: 200 words maximum- Format: Single paragraph with no headers- Tone: Confident but realistic about timeline- Must include: Specific downtime mitigation approachThe before version produced a generic 5-page proposal template. The after version gave me a compelling executive summary that addressed the client’s specific concern about downtime.
LinkedIn content
Before:
Write a LinkedIn post about AI in sales.After:
You are a LinkedIn thought leader with 50K followers in the B2B sales space.Write a post about AI's impact on sales prospecting.
Context:- My experience: I use Claude daily for email personalization- My opinion: AI helps but doesn't replace human judgment- My goal: Drive engagement and comments
Output requirements:- Length: 150 words maximum- Format: Hook -> Personal story -> Counterintuitive insight -> Question- Tone: Conversational, not salesy- Must include: One specific example from my experienceThe before version was a generic “AI is transforming sales” post. The after version generated a post that got 200+ comments because it included a specific, personal angle.
Why this works
I wanted to understand the mechanism behind role-based prompting, so I dug into how Claude processes prompts.
Without a role
When I write “write a prospecting email,” Claude has no reference frame. It generates what an “average” prospecting email looks like based on training data. This produces:
- Generic opening lines
- Multiple CTAs (the safe approach)
- Feature lists instead of value propositions
- Length that tries to cover all bases
With a role
When I write “you are a B2B cold email expert,” Claude activates patterns associated with that expertise:
- Domain conventions (short, single CTA)
- Industry vocabulary (“pain point” vs “problem”)
- Best practices (AIDA structure, problem-focused)
- Common mistakes to avoid (long intros, multiple asks)
The role provides a lens through which Claude interprets the rest of the prompt.
Common mistakes I made
Mistake 1: Skipping role definition
# WRONG: Jump straight to taskWrite a sales email targeting enterprise VPs.
# CORRECT: Define role firstYou are an enterprise sales copywriter who specializes in cold outreach.Write a sales email targeting enterprise VPs.The role changes everything about how Claude approaches the task.
Mistake 2: Using roles that are too broad
# WRONG: Too genericYou are an expert.
# BETTER: Still too broadYou are a marketing expert.
# CORRECT: Specific domainYou are a B2B SaaS email copywriter who specializes in enterprise outbound campaigns.The more specific the role, the more targeted Claude’s domain knowledge activation.
Mistake 3: Providing context without constraints
# WRONG: Unlimited scopeYou are a business analyst. Analyze this market.
# CORRECT: Bounded scopeYou are a business analyst. Analyze this market in 300 words, focusing onentry barriers only. Format as bullet points.Without constraints, Claude defaults to comprehensive but unfocused output.
Mistake 4: Copying prompts without adaptation
I found prompt libraries online and copied them verbatim. They failed because the context variables didn’t match my situation.
# WRONG: Generic variables from prompt libraryWrite an email for [YOUR PRODUCT] targeting [TARGET AUDIENCE].
# CORRECT: Filled in with my specificsWrite an email for my CRM automation tool targeting Sales Ops managersat companies with 50-500 employees who spend 10+ hours on manual data entry.Mistake 5: Ignoring output format
# WRONG: No format specificationCreate a competitive analysis.
# CORRECT: Explicit formatCreate a competitive analysis formatted as:1. Executive Summary (2 sentences)2. Pricing Comparison (table format)3. Feature Gaps (bullet points, max 5)4. Recommendations (numbered list, max 3)Without format specification, Claude guesses what structure you want.
Python helper for structured prompts
I created a Python helper to ensure I never skip the framework:
from dataclasses import dataclassfrom typing import Optional
@dataclassclass BusinessPrompt: role: str context: dict output_format: str constraints: list[str] objective: str
def build(self) -> str: """Build a structured prompt from components.""" parts = [f"You are {self.role}."]
if self.context: parts.append("\nContext:") for key, value in self.context.items(): parts.append(f"- {key}: {value}")
parts.append(f"\nOutput requirements:") parts.append(f"- Format: {self.output_format}")
for constraint in self.constraints: parts.append(f"- {constraint}")
parts.append(f"\nObjective: {self.objective}")
return "\n".join(parts)
# Example usageprompt = BusinessPrompt( role="B2B cold email copywriter specializing in SaaS", context={ "My product": "AI-powered CRM automation", "Target": "VP of Sales at enterprise companies", "Their problem": "Manual data entry consuming 10+ hours weekly", }, output_format="Plain text email, no markdown", constraints=[ "Maximum 120 words", "One CTA only", "Consultative tone, not salesy", ], objective="Write the email body only. Do not include subject line.",)
print(prompt.build())Output:
You are a B2B cold email copywriter specializing in SaaS.
Context:- My product: AI-powered CRM automation- Target: VP of Sales at enterprise companies- Their problem: Manual data entry consuming 10+ hours weekly
Output requirements:- Format: Plain text email, no markdown- Maximum 120 words- One CTA only- Consultative tone, not salesy
Objective: Write the email body only. Do not include subject line.This helper ensures I always include all four components.
Measuring the improvement
I tracked my iteration counts before and after adopting this framework:
| Task | Before (iterations) | After (iterations) |
|---|---|---|
| Cold emails | 5-6 | 1-2 |
| Proposals | 4-5 | 1-2 |
| Competitive analysis | 6-8 | 2-3 |
| LinkedIn posts | 3-4 | 1 |
Average time saved per task: 10-15 minutes of back-and-forth.
Related knowledge
Role prompting vs. system prompts
Role prompting in the user message is different from system prompts. System prompts are set by developers and define Claude’s base behavior. Role prompting in user messages activates domain-specific patterns for a single interaction.
Both can work together:
# System prompt (set by developer)You are Claude, a helpful AI assistant.
# User prompt (role-based)You are a B2B sales copywriter. Write a cold email...The user prompt’s role takes precedence for that interaction.
When roles don’t help
Role prompting is less effective for:
- Creative writing: “You are a novelist” doesn’t help as much as specific style examples
- Mathematical problems: The role doesn’t change Claude’s reasoning capability
- Factual questions: “What is the capital of France?” needs no role
- Tasks requiring specific documents: If Claude needs to read your actual files, the role is secondary
The psychology of roles
This pattern works because language models are trained on human-written text from diverse domains. When you specify a role, you’re essentially selecting which subset of the training distribution to draw from.
“You are a financial analyst” pulls from financial reports, analyst notes, and investment memos. “You are a poet” pulls from poetry collections. The same model produces radically different outputs based on which expertise you invoke.
Summary
In this post, I showed how role-based prompting transformed my Claude outputs from generic to targeted. The key insight is that a precise role definition before your task specification activates domain-specific knowledge and conventions.
The framework is simple:
- Role: Define who Claude should be
- Context: Provide your specific situation
- Output: Specify format, length, and constraints
- Objective: State one clear goal
The difference in output quality is immediate and significant. What used to take 5-6 iterations now takes 1-2. For entrepreneurs and small businesses who need professional-quality outputs without hiring specialists, this technique is transformative.
Final Words + More Resources
My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me
Here are also the most important links from this article along with some further resources that will help you in this scope:
- 👨💻 Reddit Discussion: Favorite Ways to Use Claude
- 👨💻 Anthropic Prompt Engineering Guide
- 👨💻 Claude for Business Use Cases
Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!
Comments