Writing Effective Prompts

Writing Effective Prompts ✍️

Now that you've picked a task for AI, the next move is harder and more useful: asking for the output in a way the model can actually deliver. A vague prompt produces a vague draft, which will then waste twenty minutes editing—the exact time you were trying to save. A strong prompt brings the important details upfront so the first output is much closer to usable. This unit gives you a framework for writing strong prompts, a method for turning fuzzy sales requests into specific deliverables, and a habit for improving prompts after a weak first try.

By the end, you'll be able to:

  • Use the RACE framework to structure clear, complete prompts.
  • Translate vague sales requests into specific AI-ready deliverables.
  • Refine weak outputs by tightening the prompt instead of simply asking the model to "try again."

The RACE Framework 🏁

Treat every prompt like a brief you'd hand to a sharp specialist who's never met your territory or your accounts. To ensure consistency and high-quality responses, use the RACE framework—a four-step model designed to eliminate guesswork.

  • R - Role (Who is the AI?): Assign a persona or expertise level. By telling the AI it is an "expert B2B account executive" or a "senior sales strategist," you set the tone and the knowledge base it should pull from.
  • A - Action (What do you want?): State the exact task using clear, directive verbs. Instead of "look at this," use "summarize," "draft," "critique," or "rewrite."
  • C - Context (Why does it matter?): Provide the background, target audience, and constraints. This is where you mention what has already happened, who will read the output, and any "guardrails" (what to avoid).
  • E - Execute (How should it look?): Specify the formatting, length, and style. Do you want bullet points, a 150-word follow-up email, or a five-slide deck outline? Providing an example of the desired style here is the most effective way to get a perfect match.

A flowchart showing the RACE prompt framework: Role, Action, Context, and Execute — applied to B2B sales scenarios like follow-up emails, proposals, and QBR materials.

The reason this works ties back to how language models operate: they predict based on the context you give them. Sparse context leads to generic predictions. A structured RACE prompt leads to sharper, professional results.

Turning Vague Requests Into Specific Deliverables 🎯

Most sales requests show up vague. Your manager forwards a one-liner, or a stakeholder drops "can you draft something for that follow-up" in Slack. The instinct is to type that vague phrase straight into the AI.

Don't.

Translate the vague request into the RACE components before you write the prompt. Let's look at an example:

  • Natalie: Can you draft something for the Acme follow-up after our discovery call?
  • Chris: Happy to. Quick check so I get it right the first time: what's the goal here (Action), and who exactly is reading it (Context)?
  • Natalie: It's an email to Acme's VP of Operations, about 150 words (Execute). We need to recap the key pain points they raised without committing to specific pricing yet (Context/Constraints).
  • Chris: Got it. Should I sound like a trusted advisor or a formal account rep (Role)?
  • Natalie: Trusted advisor, keep it concise.

Notice Chris didn't open the AI tool yet. He pulled the missing Role, Context, and Execute details out of Natalie in thirty seconds. Because he has the RACE elements ready, he can turn the original vague request into a much stronger prompt:

Weak prompt:

Draft something for the Acme follow-up after our discovery call.

Full RACE prompt:

Role: You are a trusted-advisor B2B account executive.
Action: Draft a follow-up email that recaps Acme's discovery-call pain points.
Context: The reader is Acme's VP of Operations. Use only the notes provided, and do not invent metrics, commitments, pricing, or citations.
Execute: Write a concise, 150-word email with three bullets and a professional, helpful tone.

The full version gives the model a job, a target, guardrails, and a finish line. It also makes review easier: you can compare the output to the facts and constraints you supplied. Because the request is now specific, the first draft is also much more likely to be accurate and usable.

Refining The Prompt After The First Output 🔧

Even a strong RACE prompt rarely lands perfectly. The first output is diagnostic data, not a verdict. Read it and ask which part of the framework was thin:

  • If the tone is too robotic: Your Role was too broad.
  • If the model missed the point: Your Action wasn't specific enough.
  • If it included information it shouldn't have: Your Context lacked constraints.
  • If the structure is messy: Your Execute instructions were too loose.

Don't argue with the model in chat or ask it to "try again, better." Rewrite the prompt itself, tightening the RACE elements that failed, and re-run. This gives you a reusable prompt for the future. Save the strong version in a personal prompt library: even a shared document that records the prompt, its RACE breakdown, the situation, and why it worked is enough. Future-you will thank present-you.

The takeaway: prompts are briefs, not questions. Structure your request using RACE, then refine based on what the first output reveals. Next, you'll move into a live practice session where you'll apply RACE to a sensitive sales scenario.

Sign up

Join the 1M+ learners on CodeSignal

Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal