Learning to write effective prompts is the highest-leverage skill for anyone using an AI image generator that responds to well-crafted prompts regularly. The same model, given a vague prompt vs. a well-constructed one, produces results that differ by an order of magnitude in quality and usefulness.
This guide covers prompt writing systematically — from the basic structure that works across all models, to model-specific techniques, to the iterative refinement process that turns a rough first generation into a final deliverable.
The anatomy of an effective AI image prompt
A complete prompt answers five questions:
- 1. What? The subject — what is in the image, described specifically. Not ‘a woman’ but ‘a woman in her early 30s with dark curly hair and warm brown eyes, wearing a white linen shirt’.
- 2. Where? The setting and environment — ‘in a sun-drenched Moroccan courtyard’, ‘against a neutral grey studio backdrop’, ‘on a city rooftop at dusk’.
- 3. What does it look like? The style and medium — ‘photorealistic’, ‘oil painting’, ‘flat vector illustration’, ‘editorial fashion photography’, ‘film noir’.
- 4. How is it lit? Lighting is arguably the single most impactful element after the subject itself — ‘soft natural window light from the left’, ‘dramatic underlighting’, ‘golden hour backlight’, ‘studio softbox at 45 degrees’.
- 5. How is it framed? Composition and camera — ‘close-up portrait’, ‘wide establishing shot’, ‘bird’s eye view’, ’85mm lens shallow depth of field’, ‘rule of thirds composition’.
Prompt length and specificity
More words does not always mean better results. Conflicting instructions confuse the model; irrelevant detail dilutes the weight given to what matters. The sweet spot for most models is 30-80 words covering the five elements above without repetition or contradiction.
| Prompt quality | Example | What’s wrong / right |
| Too vague | a portrait of a woman | Model defaults to average; generic output guaranteed |
| Too long / conflicting | a happy sad woman with red and blue hair in a warm cool modern vintage studio | Contradictions produce incoherent results |
| Well-constructed | Close-up portrait of a woman in her 30s, dark wavy hair, confident expression, soft window light from the left, cream background, 85mm lens, photorealistic editorial photography | Specific, consistent, covers all five elements |
Style keywords that reliably improve outputs
For photorealistic imagery
- shot on [camera model]: Sony A7 IV, Canon R5, Leica M11
- [focal length] lens: 85mm, 35mm, 50mm
- photorealistic, hyperrealistic, RAW photo
- [lighting]: Rembrandt lighting, loop lighting, golden hour, overcast diffused light
- depth of field, bokeh, shallow focus
For artistic and illustrated imagery
- [artist or style reference]: in the style of editorial fashion photography, Vogue 1990s aesthetic
- [medium]: oil painting, watercolor, gouache, ink illustration, vector art
- [mood]: atmospheric, melancholic, vibrant, dramatic
- [detail level]: highly detailed, painterly, loose brushwork, flat design
Negative prompts: what to exclude
A well-crafted negative prompt removes the most common AI generation artifacts and prevents unwanted elements. Build these into a standard template and refine over time.
Standard negative prompt for photorealistic images:
blurry, out of focus, low quality, low resolution, watermark, signature, text, logo, extra limbs, distorted anatomy, disfigured, deformed, bad proportions, missing limbs, floating limbs, mutation, ugly, amateur photography, overexposed, underexposed, flat lighting, grainy, noisy
Standard negative prompt for portraits:
extra fingers, bad hands, missing fingers, fused fingers, too many fingers, distorted face, asymmetrical eyes, crossed eyes, long neck, double chin, skin blemishes, unnatural skin texture, plastic skin, airbrushed
Model-specific prompt strategies
| Model | What it responds to best | What to avoid |
| Midjourney v7 | Artist/photographer references, abstract mood descriptions, aesthetic keywords | Overly technical specs — it interprets creatively |
| FLUX 2 Pro | Literal, specific descriptions of exactly what should appear | Vague or abstract language — it follows instructions precisely |
| Ideogram 3.0 | Text in image specified in quotes, font style descriptions | Assuming text will render correctly without explicit instructions |
| Stable Diffusion | LoRA trigger words, weighted terms (term:1.4), detailed negative prompts | Prompts without matching LoRAs for specific styles |
| Imagen 4 | Natural language descriptions, clear subject/setting/mood | Overly technical photography jargon |
The iterative refinement process
- Generate 4 variations from your first prompt. Do not stop at one. Generate a batch and identify what is working and what is not.
- Identify the specific failure. Is the lighting wrong? The composition? The subject’s appearance? The style? Name the specific issue before adjusting.
- Change one element at a time. If you change three things at once, you will not know which change produced the improvement.
- Use image-to-image for refinement. Once you have a composition you like, use it as the basis for a new generation with adjusted parameters rather than starting from scratch.
- Save prompts that work. Build a prompt library organized by use case. Each successful prompt is a reusable asset.
FAQs
Do the same prompts work across different AI models?
No — each model has a distinct prompt language. Midjourney rewards abstract aesthetic language; FLUX 2 Pro follows literal instructions more precisely; Stable Diffusion uses specific LoRA trigger words. Developing model-specific prompt strategies is worth the investment.
How do I get a specific color to appear correctly in AI images?
Name colors specifically and use multiple references: ‘deep cobalt blue, not navy, not royal blue’. Including a hex reference in some models (particularly FLUX) can improve color accuracy. Reference a specific object of that color: ‘the blue of a clear afternoon sky’.
How long does it take to get good at prompt writing?
Most people see significant improvement within 2-3 weeks of daily use if they approach it systematically — changing one variable at a time, documenting what works, and building a personal prompt library. The learning curve is front-loaded; once you understand a model’s language, prompting becomes fast and intuitive.