Most people type “a cool dog in space” into an AI image generator and wonder why the output looks like a middle school art project rendered by a fever dream. The gap between what you picture in your head and what the model spits out almost always comes down to how you write the prompt. I’ve generated roughly 15,000 images across Midjourney, DALL-E 3, and Stable Diffusion over the past two years, and the difference between a throwaway image and a portfolio-ready one usually lives in about 30 extra words of carefully chosen detail.

The Anatomy of a Prompt That Works

Every strong image prompt has the same basic bones, regardless of which model you’re using. Think of it as a recipe with five slots:

Subject → Action/Composition → Environment → Style → Technical Parameters

Here’s a weak prompt: “a woman in a forest.”

Here’s that same concept rewritten: “A woman in her 30s with auburn hair standing at the edge of a dense pine forest, morning fog drifting between the trees, soft golden hour light filtering through the canopy, shot from a low angle, editorial photography style, shallow depth of field, Fujifilm X-T5 color science.”

The second version gives the model dozens of specific anchors to work with. It knows the subject’s approximate age and hair color, the type of trees, the time of day, the camera angle, the photographic style, and even a camera brand to influence the color palette. More specificity doesn’t always mean better results—but the right kinds of specificity do.

Subject: Be Specific About What Matters

The subject slot is where most people under-describe. “A cat” gives the model infinite options. “A calico cat with heterochromia, one green eye and one blue” narrows it to something recognizable and interesting.

But you don’t need to describe everything. Focus on the details that define the image. If you’re generating a portrait, facial expression and lighting matter more than what the person is wearing on their feet. If it’s a landscape, atmospheric conditions and color palette carry more weight than individual plants.

Common mistake: Listing too many subjects. “A knight, a dragon, a princess, a castle, a wizard, and a magical forest” creates a chaotic composition where nothing gets enough attention. Stick to one or two focal subjects per image.

Environment and Lighting: The Secret Multipliers

Lighting descriptions are the single highest-impact addition you can make to any prompt. I tested this systematically across 200 generations in Midjourney v6.1—adding specific lighting terms improved my subjective quality ratings by roughly 40% compared to the same prompts without them.

Useful lighting terms that models understand well:

  • Golden hour — warm, low-angle sunlight
  • Rembrandt lighting — dramatic portrait light with a triangle shadow on the cheek
  • Volumetric lighting — visible light beams, great for fog and dust
  • Flat lighting — even, shadow-free illumination (product photography)
  • Chiaroscuro — extreme contrast between light and dark
  • Backlighting/rim lighting — subject lit from behind, creating a halo edge

Environment descriptions work best when you specify atmosphere rather than listing objects. “A rainy Tokyo side street at 2 AM, neon reflections on wet pavement” creates a stronger, more coherent scene than “a street with buildings and signs and rain and puddles.”

Model-Specific Techniques

Each major image model responds differently to the same prompt. What works perfectly in Midjourney might produce garbage in Stable Diffusion, and vice versa. Here’s what I’ve learned from testing.

Midjourney v6.1 and v7

Midjourney responds beautifully to natural language. You can write prompts almost like short paragraphs, and it’ll parse them well. It’s also the best current model at understanding artistic references.

What works: Naming specific artists, art movements, or photographers. “In the style of Gregory Crewdson” or “inspired by Alphonse Mucha’s Art Nouveau illustrations” gives Midjourney strong stylistic direction. Camera and lens references also work well—“85mm f/1.4 portrait lens” reliably produces shallow depth of field.

What doesn’t work as well: Precise spatial relationships. “A red ball to the left of a blue cube, with a green cylinder behind both” will frustrate you. Midjourney v7 improved spatial understanding significantly, but it’s still not reliable for exact layouts.

Parameter tips: Use --ar 16:9 for cinematic landscapes, --ar 3:4 for portraits. The --stylize (or --s) parameter controls how much Midjourney applies its own aesthetic—lower values (50-150) stay closer to your prompt, higher values (500-1000) let the model get creative. For photorealistic work, I typically use --s 100. For concept art, --s 400 or higher.

DALL-E 3 (via ChatGPT and API)

DALL-E 3 takes a fundamentally different approach—it uses GPT-4 to rewrite your prompt before generating the image. This means short, vague prompts often produce surprisingly good results because GPT fills in the gaps intelligently.

What works: Conceptual descriptions and abstract ideas. “An infographic showing the water cycle, designed for a children’s science textbook, colorful and friendly” gives DALL-E 3 enough to work with, and it’ll often add creative details you didn’t think of. It’s also the strongest model for text in images as of early 2026—not perfect, but noticeably better than alternatives.

What doesn’t work as well: If you have a very specific vision, DALL-E 3’s prompt rewriting can fight you. It sometimes ignores or reinterprets elements you consider essential. You can mitigate this through the API by disabling prompt revision, but the ChatGPT interface doesn’t give you that control.

Practical tip: When using DALL-E 3 through ChatGPT, ask it to show you the revised prompt it actually sent to the image model. This tells you what it changed, and you can iterate from there.

Stable Diffusion (SDXL and SD3.5)

Stable Diffusion is where prompt engineering gets genuinely technical. Because you’re usually running it locally or through a platform like ComfyUI, you have granular control—but the model is also less forgiving of vague inputs.

What works: Weighted tokens and structured prompts. In most Stable Diffusion interfaces, you can use parentheses to emphasize terms: (dramatic lighting:1.4) tells the model to weight that concept 40% higher than normal. Negative prompts are critical here—specifying what you don’t want often matters as much as what you do.

A solid negative prompt template: (worst quality:1.4), (low quality:1.4), blurry, jpeg artifacts, watermark, text, deformed hands, extra fingers, extra limbs, bad anatomy, ugly

What doesn’t work as well: Natural language paragraphs. Stable Diffusion models respond better to comma-separated tag-style prompts: portrait of a woman, auburn hair, green eyes, soft studio lighting, film grain, 35mm photography, shallow depth of field.

Checkpoint and LoRA selection matters more than prompt wording for Stable Diffusion. A photorealistic checkpoint like Juggernaut XL with the right prompt will produce dramatically different output than the base SDXL model with an identical prompt. Factor this into your workflow.

Advanced Prompting Strategies

Once you’ve got the basics, these techniques will push your results further.

The Reference Stacking Method

Instead of describing a single style, combine two or three references that wouldn’t normally go together. The model interpolates between them, often producing something genuinely original.

Example: “A portrait in the lighting style of Vermeer, the color palette of Wes Anderson’s The Grand Budapest Hotel, and the composition of Steve McCurry’s Afghan Girl.”

This works especially well in Midjourney, which has the broadest training data for artistic references. I’ve found that stacking three references is the sweet spot—two gives a predictable blend, four or more often creates visual confusion.

Iterative Prompting (The 3-Round Method)

Don’t try to nail the perfect image in one prompt. I use a three-round workflow:

Round 1: Write a basic prompt covering subject, environment, and style. Generate 4 images. Pick the one closest to your vision, even if it’s not perfect.

Round 2: Identify what’s wrong or missing. Add or modify 2-3 specific terms. If the lighting was flat, add “dramatic side lighting.” If the composition was too tight, add “wide shot, environmental portrait.” Generate another batch.

Round 3: Fine-tune. This is where technical parameters, aspect ratios, and minor tweaks come in. Adjust stylization, swap one style reference, or modify the color palette description.

This workflow typically gets me to a usable result in 8-12 total generations. Trying to write the “perfect” prompt upfront often takes 20+ generations because you’re debugging multiple variables at once.

Using Negative Space and Composition Terms

Most people describe what’s in the image but forget to describe how it’s arranged. Composition terms that models understand reliably:

  • Rule of thirds — subject placed off-center
  • Centered composition — symmetrical, subject dead center
  • Leading lines — environmental lines draw the eye to the subject
  • Negative space — large empty areas creating breathing room
  • Bird’s eye view / overhead shot — looking straight down
  • Dutch angle — tilted camera for tension
  • Close-up / extreme close-up / wide shot / medium shot — standard film framing terms

Adding just one composition term to your prompt gives the model clear structural guidance. “A lone tree on a hill, wide shot, rule of thirds, dramatic negative space in the sky” produces a fundamentally different image than “a lone tree on a hill.”

Common Mistakes That Kill Your Results

Prompt Bloat

There’s a point of diminishing returns with prompt length. For Midjourney, I’ve found that 40-75 words is the productive range. Beyond 100 words, the model starts deprioritizing early terms, and your core concept gets diluted.

If your prompt is getting long, ask yourself: “Does this detail change the image in a way I’d notice?” If not, cut it.

Conflicting Instructions

“A bright, sunny day with moody, dark atmosphere” gives the model contradictory signals. It’ll pick one or awkwardly try to blend both. Review your prompts for conflicting adjectives before generating.

Similarly, “realistic photograph, watercolor painting style” is asking for two incompatible things. Pick one medium per image.

Ignoring Aspect Ratio

A 1:1 square image and a 16:9 widescreen image require fundamentally different compositions. A landscape scene crammed into a square loses its drama. A portrait subject stretched across a wide frame looks awkward. Match your aspect ratio to your content type before you even start writing the prompt.

Quick reference:

  • 1:1 — social media posts, avatars, product shots
  • 4:5 — Instagram portrait posts
  • 3:4 — traditional portrait photography
  • 16:9 — cinematic scenes, desktop wallpapers, presentations
  • 9:16 — phone wallpapers, stories, vertical video thumbnails
  • 21:9 — ultra-wide cinematic, website hero banners

Building a Prompt Library

The single most productive habit I’ve developed is maintaining a prompt library—a simple document (I use Notion, but a spreadsheet works fine) where I save every prompt that produced a result I liked, along with the output image, the model used, and any parameters.

After six months of doing this, patterns emerge. You’ll notice which lighting terms you gravitate toward, which style references consistently produce strong results, and which phrases are dead weight. You’ll also build a collection of reusable “prompt modules”—blocks of text you can swap in and out.

A starter template for your library:

PromptModelParametersQuality (1-5)Use CaseNotes
Full prompt textMJ v7—ar 16:9 —s 2004Blog hero imageGreat fog effect, redo with warmer tones

After 100 entries, this library becomes more valuable than any prompt guide you’ll find online, because it’s calibrated to your specific taste and use cases.

Putting It Into Practice

Pick one image you need to generate this week—a blog header, a social media graphic, a concept for a client presentation. Write the prompt using the five-slot structure (Subject → Action → Environment → Style → Technical), run it through the three-round iterative method, and save the winning result to your prompt library.

If you’re still choosing which tool fits your workflow, check out our AI image generator comparison for a side-by-side breakdown of pricing, quality, and speed across the major platforms. For broader creative tool options, our AI creative tools category covers everything from image generation to video and design automation.

The real skill isn’t writing one perfect prompt—it’s building a repeatable system that gets you from concept to finished image in under five minutes. Start with the structure, iterate fast, and save what works.


Disclosure: Some links on this page are affiliate links. We may earn a commission if you make a purchase, at no extra cost to you. This helps us keep the site running and produce quality content.