Search "image to prompt tags" and you land in a specific tradition: comma-separated keyword lists, often with weights and parentheses, that came out of the booru-tagged anime datasets Stable Diffusion checkpoints were fine-tuned on. Those models literally saw tag strings during training, so a tag string is their native language. That is not true of the models most people generate with in 2026.
Why the difference exists
A model learns to associate whatever text accompanied its training images. Booru-derived checkpoints saw tag lists, so `1girl, solo, cowboy shot, backlighting` maps cleanly onto image features. The current hosted models were trained largely on recaptioned data — full descriptive sentences, often machine-written and quite long — so they parse grammar, and they use it. "The lamp is behind her, to the left" places a lamp; `lamp, backlight, left` sprays those concepts across the frame and hopes.
| Situation | Tags | Sentences |
|---|---|---|
| Anime/illustration checkpoints (SD 1.5, SDXL anime, Pony, Illustrious) | Native — use them | Works, but weaker than tags |
| gpt-image-2, FLUX 2 Pro, Nano Banana 2 | Understood but flattened | Clearly better, especially for layout |
| Two or more subjects doing different things | Attributes bleed between them | Grammar keeps them apart |
| Spatial relationships (behind, left of, reflected in) | Mostly ignored | Respected |
| Text in the image | Unreliable | Quote the exact string; much better |
| Building a checklist so nothing is forgotten | Excellent | Easy to leave gaps |
The attribute-bleed problem in one line
`man, red jacket, woman, blue scarf` gives you, with real frequency, a man in a blue scarf. There is nothing in the string that binds an attribute to a subject. "A man in a red jacket stands beside a woman wearing a blue scarf" binds both, and modern engines hold that binding. This is the single most common reason a tag-shaped reconstruction of a two-person image comes back wrong.
How to use tags well anyway
- 1.Use tags as the extraction layer. Reading an image backwards, list terms freely: subject, materials, light direction, lens, grade, era. No grammar required while you are still looking.
- 2.Then write the sentence. Group the tags into the five components and connect them — subject, setting, lighting, camera, style — so relationships become explicit.
- 3.Keep short tag-ish clauses where they are genuinely atomic: "85mm, shallow depth of field, 3:4" reads fine inside an otherwise prose prompt, and every prompt here mixes the two.
- 4.Keep the negative prompt as tags. It is a suppression list, not a description, and comma-separated terms are the right shape for it.
- 5.Drop weight syntax on hosted models. `(word:1.4)` is a Stable Diffusion UI feature, not a universal language; on gpt-image-2 or Nano Banana 2 it is just odd characters. Emphasise by being specific and by putting the important thing first.
A quick way to see the effect: take a tag list you like, paste it into two engines, then rewrite it as one paragraph and repeat. On multi-subject and spatial prompts the paragraph wins on the current models — the 121 prompts here that ran through all three engines show the same pattern.