The size of an image from GPT Image 2.5 is decided on two tracks. In ChatGPT you pick an aspect ratio; in the API you pass a size parameter with pixels. The help centre and the release page talk about ratios, while only the API reference lists pixels, so the two are easy to blur together. Pick your track first.

Sizes are a parameter, not a promise

A size parameter looks like a promise: ask for 1024x1024 and expect a square. But the API does not guarantee the framing inside it. The parameter sets the canvas; the composition is still generated from your prompt, and the subject can land differently than you pictured. Treat it as a request for dimensions, not a guarantee about contents. The release page says editing keeps the subject and composition stable, yet a fresh generation starts from the prompt each time. If the image is reused smaller, the safe area you planned must survive the downscale. For the request shape, see the API overview.

The values the API accepts

The API lists auto by default and a set of explicit resolutions: 1024x1024, 1536x1024, 1024x1536, 2048x2048, 2048x1152, 3840x2160 and 2160x3840. None of these is tagged with its model. The reference shows several generations side by side, so a value in the list does not prove your model accepts it. Check the page for the model you call — gpt-image-2.5-flare or gpt-image-2.5-sunburst — instead of trusting a value seen once. When unsure, auto lets the model pick a fitting resolution.

Four constraints behind any custom size

A custom size must satisfy four rules together, or the request is rejected. Each side is at most 3840 px. Both edges are a multiple of 16. The long-to-short ratio is at most 3:1. Total pixels fall between 655,360 and 8,294,400. Check all four before sending, since the error will not name the broken rule. One planning note: totals above 3,686,400, which is 2560x1440, are officially experimental — the only official reason to avoid the largest sizes by default. For routine work, stay in the lower half of the range, where latency is predictable.

ConstraintLimit
Longest side3840 px or less
Edge alignmentMultiple of 16
Ratio3:1 long to short, at most
Total pixels655,360 to 8,294,400
Experimental above3,686,400 (2560 x 1440)

Ratio in ChatGPT, pixels in the API

The help centre is clear: you can generate images in any aspect ratio, via the picker or by writing it in the prompt. It also says to select Aspect ratio to regenerate in a different ratio, and on mobile the controls add Resize and Remove. What is missing from every line is pixel numbers. ChatGPT gives a ratio; the API gives pixels. New here? The getting-started walkthrough covers the first call.

A wide landscape banner in a 16:9 aspect ratio, subject centred with empty margin on both sides for later text.

Two examples: a banner and a poster

Four empty picture frames in a row: a square, a wide landscape, a tall portrait and a very wide panoramic frame

Example one: a wide banner

A banner sits at a page top, so it must read fast and leave a headline slot. Put the subject, composition, ratio and margin in one prompt so the model frames the shot. After it returns, check two things: the subject avoids the side edges, and the crop still works at 1536x1024 or smaller. If it is crammed to the edges, regenerate with more margin rather than crop later.

A wide landscape banner, 16:9 aspect ratio, showing a calm coastal road at golden hour with low hills on the right and open sky on the left. The subject sits in the right two-thirds; the left third stays an empty flat sky gradient reserved for a headline. No text, no people, no logos. Subject clear of the top and bottom edges, with generous margin so the crop survives reuse at 1536x1024.

Example two: a tall poster

A poster is tall, and its top third usually holds the title. Ask for an explicit ratio line and a clear top, then verify against the brief. Confirm the title area is truly empty and the layout legs stay in the safe area when reused at 1024x1536. A poster in a feed keeps its meaning only if key parts avoid the cropped zone, so plan the safe area before you generate.

A tall portrait poster, 2:3 aspect ratio, for a weekend music event. The top third is an empty solid colour block reserved for the title. Below it, a stylised city skyline at night with warm window lights and a single glowing moon. Keep the lower two-thirds busy, but leave the very top third completely blank. No text, no letters, no logos anywhere in the frame.

When auto is the right answer

Use auto when you have no fixed slot. The model picks a resolution that fits the prompt, usually the fastest clean result, and keeps you out of the experimental band unless the prompt needs the room. Building a mockup? The frames are pre-sized, so a fixed size fits better; the UI mockup guide matches assets to slots. Auto is also the safe default while exploring a subject, before a specific crop enters the brief.

Frequently asked questions

Why did the size come back different from what I requested?

The parameter sets the canvas, not the composition. The model generates the subject inside the requested dimensions and may frame it differently. If exact framing matters, describe it in the prompt and inspect the result before you ship it.

Can an image be larger than 3840 px on a side?

No. 3840 px is the hard ceiling per edge, and a larger custom size is rejected. The largest listed value, 3840x2160, already sits at that limit on its long side.

Does a bigger size mean a better-looking image?

Not by itself. A larger canvas adds room, but quality comes from the model and the quality label, tuned after the model. More pixels buy space, not sharpness; the quality levels guide explains how the label changes the output.

Where do I choose the size in ChatGPT?

In ChatGPT you pick a ratio, never pixels. Use the aspect ratio picker, or write the ratio into the prompt. The API is where pixel sizes are set through the size parameter.

Getting the size right the first time

Pick the route before the number. In ChatGPT, choose a ratio and let the picker compute. In the API, choose the model first: gpt-image-2.5-flare is the default for most applications, and gpt-image-2.5-sunburst adds precision for detailed creative work with longer generation times. Then set quality, then a size that fits the layout. Match the size to where the image will actually appear, keep the subject in the safe area, and prefer the lower pixel half unless you need the extra room.

A transparent background follows the same split, and the transparent-background guide shows when the parameter, not the prompt, decides what the file contains.