The single most impactful change you can make to your prompting is adding context about who you are and what you're trying to achieve — not just what you want the model to produce. A prompt with no context gets a generic answer. A prompt with specific context gets a specific, useful answer. Everything else in this guide builds on that foundation.
The context problem
Most people write prompts like search queries: "Write an email to a client about a delayed project."
That prompt is underspecified. The model doesn't know: Is this a long-term client or a new one? What's the reason for the delay? What tone does your relationship have? What outcome are you hoping for — to manage expectations, to apologize, to get more time?
Better version: "I'm a consultant, and a client I've worked with for 3 years is waiting on a deliverable that will be 2 weeks late because a key stakeholder was unavailable. Write a professional but warm email explaining the delay, taking responsibility without over-apologizing, and proposing a new timeline. Tone should be direct and confident."
That second prompt costs 20 extra seconds and dramatically improves output quality.
The techniques that actually work
Role assignment
Assign the model a specific role before asking your question:
"You are a direct-response copywriter with 10 years of experience in SaaS. Write a landing page headline..."
"You are a senior software architect reviewing code for potential performance issues..."
Role assignment works because it activates relevant training data and constrains the model's response style. This has been tested extensively — models produce measurably better output when given a clear role than when asked the same question without one.
Negative constraints
Adding what you don't want is often more impactful than adding what you do want. This is one of the simplest and most effective prompt changes you can make:
"Write a product description for this software. Do not use jargon. Do not start with 'Are you looking for...' or 'Introducing...'. Do not exceed 100 words."
Three "don't" instructions take 10 seconds to add and eliminate the most common AI output failures.
XML tags for structured tasks (Claude-specific)
For Claude, XML tags reduce errors on structured extraction and formatting tasks by approximately 28% compared to markdown headers:
<task>Summarize this document</task>
<document>{{content}}</document>
<format>3 bullet points, each under 15 words</format>
Claude is specifically trained to recognize and respect XML-style tags. If you use Claude heavily for structured work, this technique is worth adopting.
Contrastive examples
Show the model both what you want and what you don't want:
"Here's an example of the tone I want: [good example] Here's the kind of writing I want to avoid: [bad example] Now write a blog introduction about AI for small businesses."
One negative example combined with a positive example consistently outperforms positive-only examples on tone and precision tasks.
Chain-of-thought for complex reasoning
For tasks requiring multi-step reasoning, ask the model to show its work:
"Before giving your final answer, walk through your reasoning step by step. Then give your recommendation."
This forces the model through explicit reasoning stages rather than jumping to a conclusion. On complex analytical tasks, chain-of-thought prompting produces more accurate and better-reasoned outputs.
Model-specific tips
Claude: Responds well to XML tags. Explicit, structured prompts with clear role, context, task, and format produce the most reliable output. Claude tends to follow detailed constraints more precisely than other models.
GPT-5.5: Responds better to outcome-oriented prompts. Describe the goal and success criteria rather than step-by-step instructions. "I need a subject line that makes a time-pressed executive open the email" works better than "Write a short, attention-grabbing subject line."
Gemini 3.1 Pro: Benefits from questions that include search-grounding instructions ("include current statistics on this topic," "check recent news about X"). Unlike models with knowledge cutoffs, Gemini can incorporate live data when you ask for it.
The prompt template that works for most tasks
Role: [Who should the model be?]
Context: [Relevant background I need you to know]
Task: [Exactly what I need you to produce]
Format: [Specific structure, length, tone requirements]
Constraints: [What to avoid]
Example: [If helpful, show what good looks like]
You don't always need every element. A casual question doesn't need a formal template. But for work-quality outputs — things you'll actually use for professional purposes — this structure consistently improves results.
What doesn't work
Being too vague. "Write something good about this topic" gives the model too much latitude and no signal about what matters.
Being too prescriptive on method. Telling the model exactly how to solve a problem (rather than what outcome you need) often overrides approaches the model would use naturally. Describe the goal, not the steps.
Asking for too many things at once. A prompt that asks for a blog post, a social media version, three email subject lines, and an SEO description produces mediocre versions of all four. Do them separately.
Skipping the negative constraints. The fastest way to eliminate common AI output failures is telling the model what not to do. Most people skip this and then wonder why they get the same predictable patterns.