Back to blog
Image18 min read

Free Negative Prompt Generator for Image Models

A free negative prompt generator that routes by model: 29 copy-paste negative prompts, each labelled with the models that accept it, plus the positive rewrite for models with no field.

NH
Nafiul Hasan
Founder, Prompt Architects

TL;DR: A negative prompt generator is only useful if it routes by model. Several current models publish no negative_prompt field at all, so on those the exclusion has to be rewritten as a positive description. Below are 29 copy-paste templates, grouped by problem and labelled with the models that actually accept them.

Most pages that promise a negative prompt generator hand you one enormous block of comma-separated adjectives and wish you luck. That block is wrong for most of the models people are actually using right now, because those models have nowhere to put it. Paste deformed, extra fingers, watermark into a model with no exclusion field and you have not banned anything. You have described a deformed hand holding a watermark.

So this page is organised the way the problem actually is. Nine failure modes, three lanes each, every template labelled with where it works. Every capability claim below was read on the vendor's own specification or documentation on 27 August 2026, and the specifications are linked where the limits are set out.

Does your model take a negative prompt at all?

Three answers, and which one applies decides which lane you copy from. There is a full negative prompt support matrix with every row sourced, so here is only the routing.

Lane A models have a real field. Stability AI's Stable Image endpoints take negative_prompt on 14 paths, across 16 request schemas. Alibaba's Wan video models take it. Kling still exposes it on the legacy /v1/videos/text2video endpoint. Ideogram 3.0 has it. Veo 3.1 has it on Vertex. Runway has it on exactly two branches of its video endpoints, veo3.1 and veo3.1_fast.

Lane M is Midjourney, which puts the exclusion in the prompt string as --no rather than in a JSON field, and is the only vendor that publishes what the mechanism does.

Lane B models have no field. GPT Image 2, the whole FLUX 2 family, Ideogram 4.0, the Kling 3.0 endpoint, Runway's Gen-4.5, Veo 3.1 through the Gemini API, Nano Banana, Grok Imagine, Seedance, Luma Ray and MiniMax Hailuo all publish nothing. On these, the exclusion goes into the ordinary prompt, rewritten as a description of what should be in the frame instead.

How is every template on this page labelled?

Each failure mode below gives you the same three things, in the same order, so you can skip straight to your lane.

  • Lane A field value. Paste into negative_prompt or negativePrompt. Works on Stability, Wan, Kling's legacy endpoint, Ideogram 3.0, Veo on Vertex, and Runway's veo3.1 branches.
  • Lane M. Append to a Midjourney prompt. Kept to single words wherever possible, for a reason covered below.
  • Lane B rewrite. Paste into the ordinary prompt. Works everywhere, including on every Lane A model, and it is the half that survives a version bump.

Every Lane A value on this page is under 500 characters. That is deliberate: 500 is the smallest published cap in the matrix, so these values can move between vendors without being cut.

What should you put in a negative prompt for hands and anatomy?

Name the specific deformation rather than the category. Generic terms like bad anatomy carry almost no visual meaning; fused fingers carries a lot. If hands are your recurring problem, the causes of extra limbs and fingers are worth reading alongside this.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

extra fingers, missing fingers, fused fingers, sixth finger, extra arm, extra leg, malformed hand, twisted wrist, disjointed limb, bad proportions, warped forearm, duplicated thumb

Lane M. Midjourney only.

--no fused fingers, sixth finger, extra arm, warped wrist

Lane B rewrite. Every model, and the only version that works on FLUX 2, GPT Image 2 or Kling 3.0.

Both hands fully visible and resting flat on the tabletop, five fingers on each,
fingers slightly separated so each one reads individually. Wrists straight and in line
with the forearms. Arms are the same length and the same thickness.

How do you stop AI faces looking plastic?

Ask for the imperfections by name. Plastic skin is not a defect the model is adding on purpose, it is the absence of the texture and asymmetry that a real face has, so listing what is missing works better than banning a look.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

waxy skin, plastic skin, airbrushed skin, beauty filter, heavy retouching, perfectly symmetrical face, doll face, glassy eyes, mismatched pupils, uneven eye size, smoothed pores

Lane M. Midjourney only.

--no beauty filter, retouching, waxy skin, doll face

Lane B rewrite. Every model.

Visible skin texture: open pores across the nose and cheeks, fine lines at the outer
corners of the eyes, a faint shine on the forehead. Faint freckles. One eyebrow sits
marginally higher than the other. A single catchlight in both eyes from a window at
camera left.

What keeps garbled text out of an image?

Two separate jobs, and people usually only do the first. Ban the artefact, then say what occupies the surface that would otherwise carry lettering, because an unspecified sign is a sign the model will fill with invented glyphs. There is more on why the text in AI images comes out garbled if this is your main failure.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

gibberish text, garbled lettering, misspelled words, invented glyphs, random characters, duplicated letters, subtitles, caption bar, on-screen text, ui overlay, timestamp

Lane M. Midjourney only.

--no lettering, subtitles, caption bar, timestamp

Lane B rewrite. Every model.

Every surface that would normally carry type is blank: the shopfront sign is plain
painted metal, the book covers are solid colour, the packaging is unlabelled.
No lettering, numerals, logos or captions appear anywhere in the frame.

How do you fix cropping and composition with a negative prompt?

State the framing you want in positive terms and use the field only for the specific crop that keeps happening. Composition responds far better to instruction than to prohibition, because not cropped describes an infinite number of frames and both feet inside the frame describes exactly one.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

cropped head, cut-off hands, subject touching frame edge, tilted horizon, dutch angle, out of frame, awkward crop, cluttered composition, competing focal points

Lane M. Midjourney only.

--no cropped head, tilted horizon, dutch angle

Lane B rewrite. Every model.

Full-body shot with clear headroom above the subject and both feet inside the frame.
Horizon level and one third from the top. Subject centred with even margins left and
right. One clear focal point, everything else falling off in depth.

What negative prompt fixes flat lighting and blown colour?

Describe the light source, its size and its direction. Lighting is the area where the positive rewrite outperforms the field by the widest margin, because a light has a position and a quality and neither can be expressed as an absence.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

blown highlights, clipped whites, crushed blacks, flat lighting, on-camera flash, hard direct sun, green colour cast, oversaturated, hdr halo, muddy shadows, heavy vignette

Lane M. Midjourney only.

--no flash, oversaturated, hdr, heavy vignette

Lane B rewrite. Every model.

Soft north light from a large window at camera left, a white bounce card at camera
right. Highlights hold detail in the white shirt, shadows stay open at about mid-grey.
Neutral white balance, muted palette, roughly three stops of contrast across the frame.

How do you stop textures turning to mush?

Name the material and the scale of the detail. More detail is not actionable; cotton weave visible in the shirt is, and it also gives the model a reason to hold resolution in that part of the frame.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

over-smoothed, mushy detail, plastic surfaces, low resolution, jpeg artifacts, compression blocking, banding, oversharpened halo, edge ringing, denoised flat texture

Lane M. Midjourney only.

--no oversharpened, jpeg artifacts, plastic texture, banding

Lane B rewrite. Every model.

Cotton weave visible in the shirt at close range. Hairline scratches on the brushed
steel and a faint dust line in the corner of the sill. Natural grain consistent with
400-speed colour film. No digital sharpening halo at the edges.

How do you stop one style contaminating another?

Ban the neighbouring style by its actual name and then commit to a medium. Style contamination happens when the prompt is medium-agnostic, so the strongest fix is naming a camera, a stock or a painting technique rather than listing everything it is not.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

3d render, cgi, digital painting, concept art, anime, cel shading, video game screenshot, stock photo look, corporate illustration, vector art, clip art

Lane M. Midjourney only.

--no 3d render, cgi, anime, concept art

Lane B rewrite. Every model.

A documentary photograph shot on 35mm colour negative film. Available light only, a
single unmodified 50mm prime, mild grain, slight corner vignetting and the colour
response of consumer film stock rather than a digital sensor.

How do you remove watermarks, signatures and borders?

Use the field, but do not rely on it. This is the group where the honest answer is that a negative prompt cannot enforce anything, and if the output is a commercial deliverable you need a check step rather than a clause.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

watermark, signature, artist name, username, logo, copyright notice, stock agency watermark, border, picture frame, matte edge, timestamp, camera ui overlay

Lane M. Midjourney only.

--no watermark, signature, logo, border

Lane B rewrite. Every model.

The image runs edge to edge with no border, frame, matte or timestamp. All four
corners are part of the scene. No signature, logo or lettering on any surface.

How do you clear a cluttered background?

Describe the background as an object in its own right. An unspecified background gets filled with whatever the model considers typical for the scene, which for a street is cars, cables and people.

Lane A field value. Stability · Wan · Kling legacy · Ideogram 3.0 · Veo on Vertex · Runway veo3.1.

cluttered background, busy background, background people, parked cars, power lines, overhead cables, road signs, litter, scaffolding, distracting objects, floating debris

Lane M. Midjourney only.

--no power lines, parked cars, background people, scaffolding

Lane B rewrite. Every model.

Behind the subject there is a single flat plaster wall in warm grey, lit two stops
below the subject, with nothing mounted on it. The floor meets the wall in one
unbroken line. Depth of field falls off so the wall reads as a soft even field.

How long can a negative prompt be before it gets cut?

It depends entirely on the vendor, and only four publish a number. The important one is the smallest, because it truncates without telling you.

Where the field existsField namePublished capWhat happens past it
Stability AI Stable Image, 14 endpointsnegative_prompt10,000 charactersschema maxLength
Kling legacy /v1/videos/text2videonegative_prompt2,500 charactersdocumented as a limit
Runway, veo3.1 and veo3.1_fast onlynegativePrompt1,000 charactersschema maxLength, minimum 1
Alibaba Wan 2.7 through 2.1negative_prompt500 characterssilently auto-truncated
Veo 3.1 on VertexnegativePromptnot publishednot published
Ideogram 3.0negative_promptnot publishedpositive prompt takes precedence
Midjourney--nonot publishedequals a -0.5 weight

Those numbers come from the machine-readable specifications, which are the only sources worth trusting on a parameter: Stability's v2beta spec, Runway's OpenAPI document, Ideogram's OpenAPI document, Kling's 2.1 Master page and Alibaba's text-to-video reference.

Alibaba's reference describes the field as "Elements to exclude from the generated video." and then states: "Maximum 500 characters; longer text is auto-truncated." On the same page, the positive prompt for wan2.7-t2v accepts up to 5,000 characters. Ten to one, and it is the small side that fails quietly.

That single sentence is the argument against the giant boilerplate. Any field that truncates from the end turns term order into priority order, which is why every Lane A value above puts the exclusion that would ruin the shot first and the cosmetic ones last.

Which negative prompt did a vendor actually write?

Exactly one in this post, and it is worth having because it shows what a vendor thinks the field is for. Alibaba's Wan reference gives its own example value for negative_prompt, in two near-identical variants across the model families on that page.

Lane A field value, Alibaba's own example. Wan 2.7 series.

low resolution, error, worst quality, low quality, deformed, extra fingers, bad proportions

Lane A field value, Alibaba's own example. Wan 2.6 and 2.5 series.

low resolution, error, worst quality, low quality, disfigured, extra fingers, bad proportions

Seven terms. Not seventy. That is a vendor with full knowledge of its own model publishing something a tenth the length of the boilerplate that circulates on forums, and it fits the 500-character cap with room to spare.

Kling is more pointed still. Directly beneath the field it does support, its legacy documentation says: "It is recommended to supplement negative prompt via negative sentences within positive prompts". The vendor shipped the parameter and then told you to use the prompt instead. That same page also carries the notice "This model or capability will be retired on September 15, 2026." Its replacement, the Kling 3.0 endpoint, describes its single prompt field as one that "can include positive and negative descriptions".

How do you turn any exclusion into a positive rewrite?

Four moves, in order. Together they are the whole Lane B method, and they are what a prompt template should encode if you want it to survive a model change.

1. Name the replacement, not the absence. An empty slot gets filled with whatever the model considers typical. A specified slot does not.

Before: a woman reading in a cafe, no phone
After:  a woman reading a hardback book in a cafe, both hands on the book, a cooling
        espresso and a folded newspaper on the table beside her

2. Convert every prohibition into a measurable state. Not too dark is unactionable. A stop value is.

Before: portrait, not too dark, no harsh shadows
After:  portrait lit by a large softbox at camera left with a fill card opposite,
        shadow side about one and a half stops below the key

3. Give nouns to the field, sentences to the prompt. Google's Veo prompt guide is unambiguous about this, and it is the single most useful paragraph any vendor has published on the subject:

Not recommended: using instructive language or words such as "no" or "don't". For example, avoid prompts such as "no walls" or "don't show walls".

Recommended: Describe what you don't want to see. For example, "wall, frame", which means that you don't want a wall or a frame in the video.

Read it carefully, because the usual summary gets it backwards. Google is not telling you to skip the exclusion. It is telling you the field takes things, not sentences about things.

Malformed field value: "no walls, don't show any frames, avoid modern buildings"
Correct field value:   "wall, frame, modern building, glass facade, signage"

4. Where negation is discouraged, describe the scene. Google's image generation guidance says the same thing for stills:

Use "semantic negative prompts": Instead of saying "no cars," describe the intended scene positively: "an empty, deserted street with no signs of traffic."

Before: a city street at dawn, no cars, no people, no traffic
After:  an empty, deserted street at dawn. Wet asphalt, empty parking bays, shuttered
        storefronts. The only movement is a plastic bag drifting across the centre line

Note that Google's own replacement phrasing still contains the word no. The rule is about describing a scene, not about banning a token.

What can a negative prompt generator not do for you?

It cannot guarantee an absence, and no vendor claims otherwise. That ceiling is worth stating plainly on a page whose whole job is handing you exclusions.

Midjourney is the only vendor in this post that publishes the mechanism, and what it publishes is a weight. Its multi-prompts article states that "Using the no parameter is the same as using a -0.5 weight." and that "the total of all weights in your prompt needs to be a positive number", so still life painting:: fruit::-0.5 works and fruit::-2 errors. A nudge with a magnitude can be outweighed by a strong positive signal elsewhere in the same prompt. Midjourney also warns that "Midjourney's moderation system reads every word you add to the --no parameter independently.", which is why every Lane M value above avoids multi-word terms where it can. The full behaviour is covered in our reference on Midjourney's --no parameter, including the version scoping, which Midjourney's own documentation does not currently agree with itself about.

There is a second limit, and it is about us rather than the models. Prompt Architects generates the prompt. It does not generate the image, and it never will. If you want the picture you still take the output below to Midjourney, Stability, FLUX or whatever else you run. What the tool does is keep the positive description as the artefact you maintain and treat the field value as a per-model attachment you expect to lose, which is the split this entire page is built on.

Three ways to write an exclusion, judged against vendor documentation only (27 August 2026)
FeatureGiant boilerplateShort targeted field valuePositive rewrite
Survives a 500-character capn/a — lives in the prompt
Works on a model with no field
Survives a version bumpNot on Kling or Ideogram
Terms aimed at your actual failure
Enforces the exclusion

Free accounts get 5 prompt enhancements per day, forever, according to our FAQ page, and image prompt generation is on the Pro plan and above. If the field is doing nothing at all rather than doing too little, the six documented causes are in why your negative prompt is being ignored, which is the diagnostic companion to this page.

Two of the models in the routing table above changed the answer inside a single product generation. Assume a third will, keep the positive description as the thing you version, and treat every list on this page as dated rather than permanent.

Free Chrome Extension

Stop rewriting prompts. Start shipping.

Works with ChatGPT, Claude, Gemini, Grok, Midjourney, Ideogram, Veo3 & Kling. 5.0★ on the Chrome Web Store.

Create An Account

Frequently asked questions

Free Chrome Extension

Stop rewriting prompts. Start shipping.

Works with ChatGPT, Claude, Gemini, Grok, Midjourney, Ideogram, Veo3 & Kling. 5.0★ on the Chrome Web Store.

Create An Account