How to write image prompts: a working 6-block formula
July 23, 2026

The same model produces junk or a magazine cover — the prompt is the difference. A structure that consistently works in Visnea, with examples, character limits and tips for in-image text.
Models in 2026 understand plain language. "Masterpiece, 8k, ultra-realistic, trending" adds nothing anymore — it is noise. What actually moves the result: specifics and order. Below is the structure we use to build prompts for any model in Visnea, from Z-Image to Nano Banana Pro.
The 6-block formula
Write the prompt like a brief for a photographer, in this order:
- Subject — who or what is in the frame. Not "a woman", but "a woman around 25 in a beige trench coat".
- Action or state — what is happening. "Holding a coffee cup with both hands, looking out the window."
- Environment — where. "A coffee shop with large windows, blurred background."
- Light — the most underrated block. "Soft morning side light", "hard studio light with defined shadows", "sunset rim light".
- Lens and angle — "close-up, 85mm, shallow depth of field" or "wide angle, shot from floor level".
- Style and priority — "photorealism, natural skin texture" or "flat vector illustration". At the end, state what matters most: "priority — legible lettering".
Before and after:
Weak:
beautiful coffee in a cafe, cozy, 8k
Strong:
ceramic cappuccino cup with latte art on a wooden table by the window, morning side light, light steam over the cup, close-up, shallow depth of field, photorealism, warm palette
Write in your language — translation is built in
Most models follow English prompts best, so the generation panel has a "Translate prompt to English" switch (on by default). A Russian prompt is translated automatically before it reaches the model, and your original is kept in history. If you already write in English, translation simply does not trigger — nothing to configure.
Watch the character counter
Every model has its own prompt length limit — the counter sits right under the field. Reference points at the time of publication:
- Z-Image — up to 1,000 characters;
- Qwen Image 2 — up to 800;
- Nano Banana — up to 5,000, Nano Banana Pro — up to 10,000;
- GPT Image 2 and Nano Banana 2 — up to 20,000.
Longer is not automatically better. 400–700 characters following the formula above is usually enough; thousands of characters make sense for complex scenes with several objects and exact text.
Text inside the image
If you need lettering, pick models built for typography: Ideogram v3, GPT Image 2 or Qwen Image. Rules:
- put the exact text in quotes:
a sign that reads "COFFEE NEXT DOOR"; - say where and how: "large headline in the top third, grotesque typeface, white on dark";
- the shorter the text, the fewer errors. A 2–4 word slogan is almost always clean; a paragraph is a gamble.
The Improve button and the prompt library
Two shortcuts when you do not want to start from scratch:
- Improve next to the prompt field: AI rewrites your draft to be clearer and more specific, in the same language. You can add an instruction like "add cinematic light, make it shorter".
- Prompt library above the field: ready-made presets by category — Marketplace, Social media, Food, Graphics, Portrait, Product, Interior, Art. One click fills in the prompt, the model and the frame format; then you adjust.
Iterate cheap, finish expensive
The cycle that saves cherries: explore composition on Z-Image (1 cherry per image at the time of publication), settle on the wording, then send the same wording to a flagship — Nano Banana Pro, FLUX.2 pro or Seedream 4.5. The prompt transfers as is, and you pay the flagship price once instead of five times.
Two prompts to try right now:
product card: white wireless earbuds on a pure white background,
soft studio light, subtle contact shadow, centered composition,
tack-sharp focus, commercial product photography
concert poster with the text "SYNTH NIGHT", oversized typography
in the top half, neon palette on deep blue, minimalism,
Swiss grid, priority — text legibility
Open the Studio, paste either one — then change one block at a time. That is the fastest way to learn which block moves the image where you want it.