Tag soup or sentences: why the advice reversed
Two pieces of contradictory advice, both correct
Search for prompting guidance and you will find two schools that flatly contradict each other. One says to write comma-separated keywords: portrait, woman, red scarf, studio lighting, 85mm, shallow depth of field. The other says to write a sentence: A studio portrait of a woman wearing a red scarf, lit from the left, shot on an 85mm lens with the background thrown out of focus.
Both are right, about different models, and the reason is the training captions.
A model trained on scraped alt text learned from text that looks like keyword lists, because that is what alt text is. Its encoder is good at recognising which concepts are present and poor at grammar. Feed it a sentence and the connective words consume tokens without adding steering.
A model trained on recaptioned data — where every training image was described in full sentences by a vision-language model — learned from prose. Feed it a keyword list and you have handed it text unlike anything in its training set. It will cope, but the spatial and relational vocabulary it was specifically trained on goes unused.
How to find out which you are holding, in two minutes
You do not need to read a paper. Run this test on a fixed seed:
A: red cube on the left, blue sphere on the right, white table
B: A red cube sits on the left side of a white table.
A blue sphere sits on the right side of the same table.If B places the objects correctly and A does not, you have a model that reads syntax and you should write sentences. If both come out the same and colours swap at random, you have a bag-of-concepts encoder and sentence structure is decoration.
A second test settles it further. Write a prompt with a clause that only means anything if grammar is being read: a photograph of a dog that is not wearing a hat. Bag-of-concepts encoders reliably produce a hat. Syntax-reading encoders often do not.
Style words are still tags, on every model
There is a part of the keyword tradition that survives the transition, and it is worth separating out. Words like oil painting, linocut, Kodachrome, blueprint, medical illustration are not describing the scene. They are naming a visual register that co-occurred with those words in captions. These work as tags on every architecture, because they are labels rather than relations.
So the practical shape of a good modern prompt is usually two parts: a sentence describing what is in the frame and where, followed by a short set of register words. Mixing them is fine. Writing forty register words and no sentence is the old habit, and on a current model it produces a picture with a strong look and a vague subject.
The words that were never doing anything
A large amount of inherited prompt vocabulary is superstition. 8k, masterpiece, highly detailed, award-winning, trending on ArtStation, intricate — these entered the culture because on 2022-era models they genuinely correlated with a certain sort of polished digital art in the caption corpus. On models trained since, most of them do very little, and some actively hurt by pulling toward that same over-rendered look.
The test is cheap and everyone should run it once. Fix the seed. Generate with the full prompt. Delete the trailing quality words. Generate again. Compare. On most current models you will find the two images are close, and on some the shorter prompt is better because it left the model free to interpret the subject rather than the aesthetic.
A prompt is not a spell. Every token you add competes for attention with every other token, and a word that contributes nothing is not free — it dilutes the words that were working.
Where free tools help
You can do all of this without paying anyone. Free local interfaces — ComfyUI, AUTOMATIC1111's WebUI, Forge, InvokeAI, Fooocus — all support fixed seeds and batch comparison, and several hosted services offer enough free generations a day to run the tests above. On a phone, Draw Things on iOS runs small models locally for nothing. The point is not which tool. It is that any tool which lets you fix a seed and change one thing turns prompting from folklore into something you can check.
The one thing to keep
Prompt style should match the captions a model was trained on, so keyword lists suit CLIP-era models and plain descriptive sentences suit models trained on machine-written captions.
Before you move on
A prompt that worked well for two years suddenly gives vague, over-rendered results on a newly released model. What is the most likely explanation?
Pick the one you would defend. Nobody sees your answer.