Notes

Oct 21, 20264 min read

Writing image prompts other people can copy

Every style in my library comes with a prompt anyone can paste and run on their own scene, once, with no second try. Making those work taught me what not to write.

  • Image prompts
  • Style library

The style library on this site works like this: you pick a look, copy its prompt, put your own scene into it and run it. That’s a different job from writing a prompt for myself. When I generate my own images I can nudge, rerun and keep the good one. Someone copying a prompt from a website runs it once, on a scene I’ve never seen, and judges the whole style by what comes back.

So a public prompt has to work the first time. Getting the first two styles there, Satin Noir and Block Party, took a lot of test images, and a lot of what I learned was about what not to write.

Naming something to keep it out brings it in

Block Party is a busy city drawn from high above, crowded with small people. Early on I set a scene on a bridge and described the view “between the two towers”, to keep the towers out of the frame. The towers came back. Naming the bridge itself brought its tower back three times.

Image models are bad at “not”. When the thing you want gone belongs in that kind of scene, naming it is a vote for it, even inside a rule. Crosswalks did the same: the more often the prompt mentioned them, even to limit them, the more crosswalks I got. Now a risky thing gets mentioned once, positively, with its limits, or not at all.

Only ask for what fits the camera

A suspension-bridge tower is huge. Block Party is isometric: everything is drawn from one high angle, with no perspective. In a close view like that, a tower can’t fit in the frame at its real size, so the model shrinks it down to the height of the road, and it looks like a toy. The prompt was asking for something the camera couldn’t hold.

So I stopped describing the tower and picked scenes whose character fits the frame: a park fountain, a farmers market, one stretch of boardwalk. Tall things are allowed to run out past the edges at their real size. Before I write a scene now, I ask what is actually in this frame from this camera, and leave out everything else.

The camera angle creates problems the model won’t solve

From that high angle, a building at the front of the frame would rise up the screen and cover whatever is behind it. The model can’t draw that honestly, so it leaves the plot empty and fills it with something random: a lone tree, sidewalks that merge into each other, crossings that lead nowhere.

Composing it like a stage works: buildings only along the back, open ground in front, a small slice of a place rather than a whole block. That’s now a line in the published prompt.

Describe how the place is built

Streets kept breaking until the prompt described the place the way a street plan would, and named a real location. Name a real neighbourhood and the crossings, street furniture and buildings follow how that place really looks. The model knows more about Union Square than any description I could write.

People need the same treatment. A man ended up sitting on the backrest of a bench. A woman stood on a ledge outside a bridge railing. Now the prompt has one plain sentence about how people use the place: they walk and stand on the ground, and sit properly on benches and chairs.

Short beats thorough

At one point I over-specified everything: positions in the frame, exact numbers of things, where each crossing starts and ends. The images got worse. The best version was short: the camera angle first, a handful of rules that had each earned their place, and the scene in a few plain sentences. Then I let the model compose.

When I learned something new, patching it into the old prompt kept failing. Rewriting the whole thing from a blank page worked. A patched prompt keeps old decisions around long after anyone remembers why they’re there.

Every model reads the same words differently

Satin Noir has a line about shape edges ending in rounded, teardrop-like tips. On GPT Image 2.5, where the style was built, that reads as a graphic detail. On Nano Banana Pro and Seedream it produces literal drips. So each published prompt names the model I recommend, and Satin Noir’s says which line to delete on the others.

A few smaller things held up. Words you want on signs go in quotes and come out spelled exactly; any sign you don’t spell out becomes a little picture instead of garbled text. When hands show up close, as they do in Satin Noir, they get a paragraph of their own, because without it some came out with four fingers. And turning the quality setting all the way up never fixed a broken layout. The prompt did. I test layouts on cheap settings and only pay for quality once the structure holds.

The test I almost skipped

When the short version of Block Party finally worked, it had only been tested at night, the scene the long version struggled with. On the day and sunset scenes the old prompt already handled well, the new one came out emptier and shrank a landmark. It had dropped two lines that were doing their job.

Now a new version has to pass the scenes the old one already got right, not just the one it was written to fix. It’s a dull test, and it’s the one that caught this.

Have a creative challenge to solve? Let's talk