Most people's first prompts read like search queries — a few keywords and a hope for the best. Language models respond much better to prompts that read like instructions to a capable but literal-minded colleague. Here's what actually moves the needle.
- Specific instructions beat vague topics — describe the exact output you want, not just the subject.
- Assigning the model a role (editor, reviewer, etc.) shapes tone and rigor for free.
- Showing a format example works better than describing one.
- Treat the first response as a draft and iterate instead of restarting.
Be specific about the output, not just the topic
"Write about productivity" gives the model almost nothing to work with, so it defaults to the most generic version of that topic. "Write a 5-step morning routine for someone who works from home and struggles with distraction" gives it a shape to fill. The more specific the ask, the less generic the answer.
Give it a role
Framing the request — "you are an experienced editor," "you are a skeptical code reviewer" — changes the tone and rigor of the response. It's a cheap way to bias the model toward the kind of answer you actually want.
Show, don't just tell, the format you want
If you need a table, a specific JSON shape, or a particular writing style, include a small example in the prompt. Models are much better at matching a pattern than inferring one from a description of it.
Iterate instead of starting over
The first response rarely nails it, and that's fine — treat it as a draft. "Make this shorter," "remove the jargon," "the third point is wrong, fix it" all work better than rewriting the entire prompt from scratch.
Frequently Asked Questions
What is prompt engineering?
The practice of writing instructions to an AI model in a way that reliably gets useful, specific output instead of vague, generic answers.
Do I need special tools to write good prompts?
No — the core techniques (being specific, giving a role, showing examples, iterating) work in any chat interface with no extra tooling required.