Do negative prompts work, and what should go in one?

Negative prompts work on models that support a separate negative conditioning channel — mainly Stable Diffusion and FLUX-family models. They exclude visual concepts, not facts. Long copy-pasted 'bad quality, worst quality' lists mostly waste conditioning; short, specific exclusions of things the model is actually producing work far better.

A negative prompt is a second piece of conditioning that the model is steered away from, rather than toward. It is not a filter applied after the fact, and it is not an instruction the model reads and obeys. That distinction explains almost every disappointing result people get from them.

First: does your model even have one?

Model familyNegative prompt support
Stable Diffusion (all versions)Yes — a first-class, separate input
FLUX family, including FLUX 2 ProSupported in most deployments
OpenAI gpt-image-2No separate negative input; exclusions go in the prompt text
Google Nano Banana 2 / Gemini image modelsNo separate negative input

On the models without one, the workaround is to phrase the exclusion positively inside the prompt. 'No people' is weak — it contains the word 'people', and these models handle negation in natural language unreliably. 'An empty street at dawn, deserted, no one in frame' works better because 'empty' and 'deserted' are positive descriptions of the state you want. The general rule: describe the presence of the alternative, not the absence of the thing.

What actually belongs in a negative prompt

Concepts with a visual signature the model can steer away from. Effective entries fall into a few categories:

  • Media you don't want: 'illustration', 'painting', '3d render', 'cartoon' — genuinely useful when you asked for a photo and keep getting stylised output.
  • Concrete unwanted objects: 'text', 'watermark', 'signature', 'logo', 'border', 'frame'.
  • Specific recurring defects you are actually seeing: 'extra fingers', 'duplicate limbs', 'distorted face'.
  • Colour or tonal drift: 'oversaturated', 'sepia', 'high contrast' — when the model keeps pushing a look you didn't ask for.

What doesn't work, despite being everywhere

The long boilerplate negatives that circulate as copy-paste blocks — 'worst quality, low quality, jpeg artifacts, bad anatomy, bad hands, error, missing fingers, extra digit, fewer digits, cropped, normal quality, ugly, blurry' — are largely inherited from a specific generation of anime-tuned Stable Diffusion 1.5 checkpoints where some of those tokens genuinely correlated with tagged low-quality training images. On modern models most of them are inert, and they are not free: negative conditioning consumes model attention. A twenty-term negative dilutes the two terms in it that mattered.

A negative prompt cannot exclude a fact. 'No hands' will not remove hands from a portrait — the model has no notion of deleting an anatomically implied part. Reframe instead: 'head and shoulders portrait, cropped at the collarbone'.

A practical method

  1. 1.Start with no negative prompt at all. Generate two or three images.
  2. 2.Look at what's genuinely wrong across all of them — not what might theoretically go wrong.
  3. 3.Add one to four terms naming exactly those things.
  4. 4.Regenerate and check the negative didn't take something you wanted with it. Excluding 'text' can flatten signage-heavy street scenes; excluding 'blurry' can remove intentional depth of field.

Prompts on this site record their negative prompt when one was used, in the same block as the prompt text — so you can see the real, short ones we ended up with rather than a template.

// On this site

More on this

Other questions

← all questions