Imagen 4 has no 4:5 ratio: get Instagram portrait from 3:4 on Sume
Imagen 4 Fast and Ultra on Sume list five ratios and none is 4:5. Generate 3:4 and trim 90 pixels, or pick a model that lists 4:5. A Pillow crop included.

Imagen 4 Fast and Imagen 4 Ultra on Sume do not list a 4:5 aspect ratio, so you cannot request Instagram portrait directly. Their aspect-ratio options are 1:1, 16:9, 9:16, 4:3 and 3:4, and they take no custom pixel size. The workaround is to generate at 3:4 and crop 90 pixels from a 1080 x 1440 result to get 1080 x 1350, or to pick a model that does list 4:5.
Sume's docs describe 4:5 as Instagram portrait at 1080 x 1350 and warn that it is not 4:3. Models that accept it include Nano Banana 2 and Pro and, through a custom size, GPT Image 2.5 and GPT Image 2.
Which models list what
The catalog is the authority; the table summarizes the aspect lists the Sume docs state for the models most often used for portrait stills. Read each model's supported_parameters.aspect_ratio from GET /v1/images/models before pinning a ratio, because a value the model does not list returns 400 unsupported_parameter.
| Model | 4:5 available | Basis |
|---|---|---|
| Imagen 4 Fast / Ultra | No | Sume API notes: Imagen and Grok do not include 4:5 |
| Grok Imagine | No | Same note |
| Nano Banana 2 / Pro | Yes | Sume API notes: Banana Pro and 2 include 4:5 |
| GPT Image 2 | Yes | Sume API notes: also accepts 5:4, 9:8 and 4:5 |
| GPT Image 2.5 | Via custom size | Largest legal 4:5 size is 2576 x 3216 under the pixel rules |
The 3:4 crop
3:4 is 0.75 and 4:5 is 0.80, so a 3:4 image is slightly taller than needed. Trim equal strips from the top and bottom: from 1080 x 1440 that is 45 pixels each side, leaving 1080 x 1350. Prompt for the crop, not just for the ratio: keep the subject and any text out of the outer 4 percent at the top and bottom, or the trim will clip them.
from PIL import Image
def crop_to_ratio(path, out, ratio_w, ratio_h):
im = Image.open(path)
target = ratio_w / ratio_h
if im.width / im.height > target: # too wide: trim the sides
w = round(im.height * target)
box = ((im.width - w) // 2, 0, (im.width - w) // 2 + w, im.height)
else: # too tall: trim top and bottom
h = round(im.width / target)
box = (0, (im.height - h) // 2, im.width, (im.height - h) // 2 + h)
im.crop(box).save(out)
return box
if __name__ == "__main__":
Image.new("RGB", (1080, 1440), (40, 90, 160)).save("imagen_3x4.png")
print(crop_to_ratio("imagen_3x4.png", "ig_4x5.png", 4, 5))
print(Image.open("ig_4x5.png").size)Cost and resolution
If you deliver both feed and story crops from one render, generate at 9:16 instead and crop the center to 4:5 for the feed: a 1080 x 1920 frame trims to 1080 x 1350 by removing 285 pixels top and bottom, which is more cropping, so keep the subject centered.
Imagen 4 Ultra also takes a resolution of 1K or 2K, which Fast does not list. A 2K 3:4 result gives you room to crop to 4:5 and still deliver 1080 x 1350 without upscaling. Both Imagen rows are text-to-image only, so they reject input_references; if you need to edit a product photo into portrait format, use an edit-capable model rather than the crop route.
Compare prices from each model's endpoint record, not from memory: the endpoint's pricing lines are the figure you will be billed against. The crop itself costs nothing, so a 3:4 Imagen render cropped to 4:5 costs the same as a native 3:4 render.
Two checks before a batch. First, confirm the crop preserves the subject by previewing three results rather than one, since a prompt that works for a single portrait can crowd the top edge in another. Second, keep the uncropped 3:4 original; if the client later wants a story or a 3:4 pin from the same render, you will want the extra height back.
A note on FLUX 3 Image
BFL lists 21:9 to 9:21 for FLUX 3 Image's video and describes wide image formats at up to 4K; its docs pages I read did not give an image ratio list, so I will not claim 4:5 for it. Sume does not list FLUX 3. For 4:5 on a model Sume serves today, the aspect-ratio changer post and the Image API docs are the places to start.
Sources
Related posts
More in Models
- How many reference images does each Sume image model take?
Sume's image catalog lists 16 references for ChatGPT Image 2.5, 5 for Ideogram 4.5, 10 for most others and 0 for five text-only models. Full table.
- Irodori-TTS-v4-Large: Japanese cloning, 120 s reference, terms
Irodori-TTS-v4-Large is a 3.29B Japanese TTS model with emoji style control and Gemma terms. What the card says and how Sume's audio tools fit.
- Is FLUX.2 deprecated after FLUX 3? Keep production ids pinned on Sume
BFL's documentation says FLUX.2 remains fully supported for production image work. Pin the model id and read Sume's catalog before changing anything.
- Is FLUX 3 Image open source? Commercial weights or the BFL API
BFL offers FLUX 3 Image weights under a commercial licence for companies running it at scale, or through its API. What that means, and what Sume lists today.
Written by Sume