A ChatGPT image prompt from an image: one sentence, six commas
One plain sentence at the short setting, two at medium, three at long — no tags, no parameters, no weights. Six of the nine slots the tool measures reach the line; contrast, light distribution and vertical light direction never do.
A ChatGPT image prompt generated from a picture is a short run of plain sentences. The shape this tool emits for DALL⋅E and GPT Image targets is the sentence shape. Six of the nine measured slots arrive; contrast, light distribution and vertical light direction are measured and then dropped. The commas that join the clauses are real commas, so a weight parser cuts the first sentence into seven fragments and glues the tail of one sentence to the head of the next.
The line below is the fireworks frame at 640 × 360, longest setting, measured on the 192 × 192 grid — 219 characters, 31 words, nine commas, three full stops, printed exactly as the tool returned it:
A widescreen 16:9 image, dark, low-key lighting, with a palette of navy, grey, slate, silver. Vivid, saturated colour, cool blue colour temperature, highly detailed with intricate texture. Moody and dramatic atmosphere.
That is 219 characters, 31 words, three sentences, nine commas and three full stops. The same photograph written for Midjourney is 319 characters and 44 words of comma-separated tags, for Stable Diffusion 336 characters and 45 words, for Flux 273 characters and 39 words. The counts on this page come from three files: that fireworks frame, a backlit field, and a screenshot of a code editor. Every table names which of the three it was counted on, and the other two are there to check that a number is not an accident of one picture.
The shape, one sentence at a time
Both sentence shapes build their line by appending whole clauses, never by rewriting what is already there. The sentence count is fixed by the length setting and by nothing else:
| Picture | Short | Medium | Long |
|---|---|---|---|
| Night fireworks | 1 sentence 15 words / 93 chars | 2 sentences 15 + 12 words 93 + 94 chars | 3 sentences 15 + 12 + 4 words 93 + 94 + 30 chars |
| Strong backlight | 1 sentence 15 words / 98 chars | 2 sentences 15 + 10 words 98 + 73 chars | 3 sentences 15 + 10 + 4 words 98 + 73 + 30 chars |
| Text screenshot | 1 sentence 16 words / 103 chars | 2 sentences 16 + 11 words 103 + 84 chars | 3 sentences 16 + 11 + 4 words 103 + 84 + 30 chars |
The third sentence is 4 words and 30 characters on all three pictures, and it is the same four words every time: Moody and dramatic atmosphere. Run the three pictures side by side at the longest setting and the last 4 words of each line are byte-identical, while the identical run at the front is 11 words — everything from A widescreen 16:9 image through with a palette of. On the short setting that head is 11 words out of 15, or 73.3% of the line.
That clause is not a free choice, though. The atmosphere is computed from the same three measurements as exposure, contrast and colour temperature, so it can contradict you and never contradict its own neighbours — four of the sixteen exposure × mood combinations cannot occur at all. Where the sentence you write yourself should go, and what it costs, is set out in how the mood clause is locked to the numbers behind it, and where your own words go.
The line never contains the word composition. The Midjourney and Stable Diffusion shapes both bolt it onto the framing slot on all nine of their outputs; the two sentence shapes never do, because they write A widescreen 16:9 image instead.
Which branch the tool gives you for a gpt image 2.5 prompt
OpenAI’s prompting guide for this version lists five formats and does not rank them: “Short prompts, descriptive paragraphs, JSON-like structures, instructions, and tags can all express the same intent. Choose the format that makes the requirements easiest to read and update rather than relying on special syntax.” That is Image prompting — GPT Image 2.5 prompting guide, section Prompting fundamentals, at platform.openai.com/docs/guides/image-prompting; the page carries no publication date, so the date on the citation is the date it was read, 26 October 2026.
The branch this tool hands you for a gpt image 2.5 prompt is the sentence shape — the one this page has been calling the DALL·E and GPT Image target since the first table. That is a choice made on this site, not a preference of the model: of the four branches it is the one that goes into a single text field with nothing to strip, no parameter, no bracket, no weight, just clauses ending in full stops.
The 480 rows below exist to answer the conversion half of that and nothing else; what they count is what has to come off, not what works better.
The count, and what it does not say
The 480 rows answer a narrower question again, and only this one: whether this branch needs a conversion step before it can go into a single text field. 120 of the 480 lines carry a parameter and all 120 of them are the Midjourney branch; not one of the 480 contains a bracket character. That is a count of what has to be stripped, not a ranking of shapes. On this branch the answer is nothing.
| Branch | Lines | With a parameter | With a bracket | Median chars, long | What it carries besides the clauses |
|---|---|---|---|---|---|
| midjourney | 120 | 120 | 0 | 300.5 | an --ar tail, ten characters |
| sd | 120 | 0 | 0 | 317.5 | two quality tags pinned to the front |
| flux | 120 | 0 | 0 | 261.5 | sentences, and light distribution |
| dalle | 120 | 0 | 0 | 222 | sentences, no distribution, no parameter |
Read the second column against the third: the only branch that needs a conversion step before it can go into a text field is the one with 120 parameters, and that is not this one. The other sentence branch is also parameter-free, but it writes a median of 261.5 characters at the long setting against this branch's 222, and it spends that difference partly on light distribution, which this branch never writes at all.
What 2.5 changes about a prompt, and what it does not
OpenAI’s launch page for the version, dated 8 September 2026, describes the change as instruction-following rather than syntax. Two sentences bear on how a prompt should be written: the model is “better at understanding complex visual instructions and translating them into coherent results”, and it is “more likely to retain the requested visual direction, composition, and individual details, instead of drifting as instructions become more specific”.
Neither sentence names a delimiter, a weight or a tag convention, and nothing else on that page does either. So the honest answer to “did the prompt format change” is no format change found — the shape decision above is the same for this version as for the one before it. What the two sentences do describe is a longer and more specific instruction being followed further than before, which is an argument against shortening the line, not for rewriting it.
| Model id | Catalogue line | Launch page line |
|---|---|---|
gpt-image-2.5-flare | Fast, high-quality everyday image generation | brings the same improvements in quality, editing, and speed |
gpt-image-2.5-sunburst | Our most capable model for image generation and editing | offers an extra level of precision for detailed creative work with longer generation times |
Where the version name goes, and what it costs
The string gpt image 2.5 is 13 characters. Against this branch’s median long line, 222 characters, that is 5.9%. It is shorter than one clause of the line it joins: across the 120 sentence lines the median clause is 17 characters, the shortest is 3 and the longest is 63.
It is also an addition rather than a replacement, because the line never names a model — across all 480 rows the name of any of the four targets appears zero times. Put it in front, as its own comma-separated fragment. The first sentence already runs 89 to 145 characters, median 101.5, and carries six commas on 117 of the 120 lines (five on the other three), so the version name becomes the seventh fragment and every measured clause behind it keeps the position it had.
Six of the nine slots arrive
The tool measures nine descriptive slots off the file. How many of them a given shape actually writes is not the same number. Counted across nine outputs per shape — three pictures, three length settings:
| Slot | Midjourney | SD | Flux | DALL⋅E |
|---|---|---|---|---|
| Framing | 9 / 9 | 9 / 9 | 9 / 9 | 9 / 9 |
| Exposure | 9 / 9 | 9 / 9 | 9 / 9 | 9 / 9 |
| Palette words | 9 / 9 | 9 / 9 | 9 / 9 | 9 / 9 |
| Saturation | 9 / 9 | 9 / 9 | 6 / 9 | 6 / 9 |
| Temperature | 9 / 9 | 9 / 9 | 6 / 9 | 6 / 9 |
| Detail | 6 / 9 | 6 / 9 | 6 / 9 | 6 / 9 |
| Mood | 3 / 9 | 3 / 9 | 3 / 9 | 3 / 9 |
| Contrast | 6 / 9 | 6 / 9 | 0 / 9 | 0 / 9 |
| Vertical light | 2 / 9 | 2 / 9 | 0 / 9 | 0 / 9 |
| Light distribution | 6 / 9 | 6 / 9 | 3 / 9 | 0 / 9 |
| Subject | 0 / 9 | 0 / 9 | 0 / 9 | 0 / 9 |
Two things fall out of that table. First, this shape is the only one of the four that never writes light distribution at all — Flux carries it on the three longest outputs, Midjourney and Stable Diffusion on six, this one on none, at any length. Second, contrast and vertical light direction are measured on every file and dropped from all nine lines, so a hard shadow or a brighter sky has to be written in by hand. The subject slot is empty for all four shapes on these three pictures; it fires only when a file is nearly monochrome, which is covered further down.
The same four colours, three different wrappers
All four shapes read the same four palette names off the same file and then wrap them differently. On the night photograph at the medium setting, the palette words are navy, grey, slate, silver in every shape:
| Shape | Wrapper | Chars | Share of line |
|---|---|---|---|
| Midjourney | dominant palette of navy, grey, slate, silver | 45 | 16.9% |
| Stable Diffusion | dominant palette of navy, grey, slate, silver | 45 | 15.8% |
| Flux | The dominant colours are navy, grey, slate, silver. | 51 | 26.2% |
| DALL⋅E | with a palette of navy, grey, slate, silver. | 44 | 23.4% |
Run the same count on the other two pictures and the ordering holds: the backlit field gives 50 characters at 19.5% for Stable Diffusion and 49 at 28.5% for this shape, the code screenshot 55 at 21.8% and 54 at 28.7%. The colour clause is the single biggest block of measured content in the line, and it sits inside the first sentence rather than in a slot of its own.
Six commas inside one sentence
The sentence shape still uses commas, and it uses them inside the first sentence. Two of them separate the framing, exposure and palette clauses; three more sit between the four colour names. So the comma count climbs with the length setting while the comma density falls:
| Setting | Commas | Full stops | Commas in sentence 1 | Commas per sentence | Longest fragment |
|---|---|---|---|---|---|
| Night, short | 6 | 1 | 6 | 6.00 | 23 chars |
| Night, medium | 9 | 2 | 6 | 4.50 | 39 chars |
| Night, long | 9 | 3 | 6 | 3.00 | 70 chars |
| Backlight, short | 6 | 1 | 6 | 6.00 | 23 chars |
| Backlight, medium | 9 | 2 | 6 | 4.50 | 28 chars |
| Backlight, long | 9 | 3 | 6 | 3.00 | 59 chars |
| Screenshot, short | 6 | 1 | 6 | 6.00 | 26 chars |
| Screenshot, medium | 9 | 2 | 6 | 4.50 | 33 chars |
| Screenshot, long | 9 | 3 | 6 | 3.00 | 47 chars |
The longest fragment is worth watching. On the night photograph it grows from 23 characters at the short setting to 39 at medium and 70 at long — not because a clause got longer, but because nothing after a full stop stops a comma parse.
Where a comma parser cuts three sentences
A weight parser splits on commas, and it does not know what a full stop is. Feed it the longest night output and three sentences become ten fragments:
1. "A widescreen 16:9 image" 2. "dark" 3. "low-key lighting" 4. "with a palette of navy" 5. "grey" 6. "slate" 7. "silver. Vivid" <- the full stop is inside the fragment 8. "saturated colour" 9. "cool blue colour temperature" 10. "highly detailed with intricate texture. Moody and dramatic atmosphere."
Fragment 7 is the tail of sentence 1 welded to the head of sentence 2. Fragment 10 is 9 words long and swallows the whole of sentences 2 and 3. Every one of the nine outputs round-trips unchanged through normalisation, and every one reports nothing out of range, because the line carries no weights and no colon-number pair that a parser could mistake for one.
Adding a weight to the line
Six edits to that same 219-character baseline, each one run through the parser. Every input is 225 characters; the output length is what normalisation produces:
| Edit | Out | Fragments | What actually got weighted |
|---|---|---|---|
| Bracket the whole line at 1.2 | 279 chars | 10 | Nine fragments land at 1.1 from the bracket; only the last keeps 1.2. |
| Bracket the whole first sentence at 1.3 | 263 chars | 11 | Seven fragments, six at 1.1 and silver at 1.3. Leaves an orphan . Vivid, … |
| Bracket the exposure clause at 1.3 | 231 chars | 10 | Splits: dark at 1.1, low-key lighting at 1.3. |
| Bracket one colour at 1.3 | 226 chars | 11 | Only navy. Leaves an orphan with a palette of. |
| Bracket the whole colour list at 1.3 | 246 chars | 12 | Three colours at 1.1, silver at 1.3, plus two orphans. |
| Bracket the mood sentence at 1.3 | 228 chars | 12 | Exactly one fragment at 1.3 and nothing else — the only clean edit of the six. Leaves one orphan . |
Nothing here reports out of range, because the bracketed weights stay inside the usable band. The interesting part is the orphans. Bracketing a clause that contains a comma leaves the leftover half as a fragment that means nothing on its own — with a palette of with its colours taken away, or a lone full stop. The one edit that lands on a single fragment and nothing else is the mood sentence, because it is the only sentence with no comma inside it.
What each length setting actually adds
Nothing is rewritten between settings; a clause is appended. These are the literal strings added to the night line, and to the other two:
| Picture | Added at medium | Added at long |
|---|---|---|
| Night fireworks | Vivid, saturated colour, cool blue colour temperature, highly detailed with intricate texture. — 95 chars | Moody and dramatic atmosphere. — 31 chars |
| Strong backlight | Vivid, saturated colour, slightly warm tone, moderate detail and texture. — 74 chars | Moody and dramatic atmosphere. — 31 chars |
| Text screenshot | Moderately saturated colour, slightly cool tone, clean and minimal, smooth surfaces. — 85 chars | Moody and dramatic atmosphere. — 31 chars |
The step from medium to long is always the same 31 characters. If the mood slot is the only thing you want, the long setting buys you that clause and nothing else. Run the same append test over forty photographs instead of three and it holds on every one of them — and the last clause turns out to be one of only four possible strings. That measurement, along with what a word of this line costs you in pixels, is in what a good ChatGPT prompt for a picture has to contain.
The one case where a subject appears
On a flat grey 192 × 192 test image — every pixel the same value, so the monochrome ratio is 1.0000, mean lightness 120.00, standard deviation 0.00 and edge energy 0.00 — the subject slot finally fires, and this shape folds it into the first clause rather than opening with it:
A square 1:1 image dominated by black and white photograph, moderate, slightly dim lighting, with a palette of grey. Monochrome, black and white, neutral colour temperature, clean and minimal, smooth surfaces. Balanced, natural atmosphere.
The subject arrives as dominated by black and white photograph, mid-clause, with no article in front of it. The same file written for Midjourney and Stable Diffusion puts that phrase first as a bare tag; written for Flux it becomes its own sentence, The frame is dominated by black and white photograph. Four shapes, four placements, one measured value.
Editing one sentence without splitting it
- Nothing needs stripping first. Nine of nine lines normalise to themselves byte for byte, and this shape has no parameter anywhere in it, so there is nothing to remove before the first render.
- Add the three missing slots yourself. Contrast, light distribution and vertical light direction are measured and dropped. A hard shadow or a lit upper half has to be typed in, because no clause is waiting for it.
- Weight the mood clause, or nothing. It is the only clause in the line with no comma inside it, so it is the only one a bracket hits cleanly. Every other clause splits across commas.
- Count commas, not sentences, before editing. Six commas sit inside the first sentence alone, and a full stop does not stop a comma split — hence a 9-word final fragment on the night line.
- Put your own subject at the end. The first 11 words are the same on every picture that shares an aspect ratio and an exposure band, and on the short setting that is 73.3% of the line. The end is the least crowded place.
What a one-sentence prompt gets asked
Three “People also ask” boxes captured on 2026-09-19. The answers below are arithmetic on the nine lines this shape produced for three files, at three lengths each.
What are some good prompts for AI photos?
Printed unedited from the fireworks frame, so the nine commas can be counted where they actually sit: A widescreen 16:9 image, dark, low-key lighting, with a palette of navy, grey, slate, silver. Vivid, saturated colour, cool blue colour temperature, highly detailed with intricate texture. Moody and dramatic atmosphere. — 219 characters, 31 words, three sentences, nine commas. What it leaves out is as useful as what it puts in: no contrast, no light distribution, no vertical light direction, and no subject.
What are some good AI photo prompts?
Pick the shape to match the target and then edit only one clause. For a sentence-shaped target the line is one sentence at the short setting, two at medium and three at long, and each step appends a clause without touching the ones below it — 95 characters then 31 on the night photograph. If you want a faithful render, paste it unchanged; if you want a deliberate change, edit the clause carrying that measurement, and remember that a bracket around anything except the mood clause splits across its commas.
If the sentence is not what your target reads: what a flux prompt looks like from an image is the other sentence shape, and the one that does carry light distribution; where the weights go in a Stable Diffusion prompt is the comma-list version with a fixed quality prefix; what a Midjourney prompt looks like from an image is the only shape with a parameter at all. Which images an image to prompt tool handles badly covers the frames where none of the four works.