Why AI Resizing Squashes Your Banners — 27% to 0–2% Distortion, Measured

ImageFactory Engineering · Published 2026-06-12

When AI converts a banner to another size and the logo looks squashed or faces look stretched, the cause is almost always the same: most image models can't generate arbitrary aspect ratios — they snap your request to a list of supported ratios. In our production pipeline measurements (May 2026), a 300×100 (3:1) request snapped to the nearest supported ratio, 21:9, producing 27% distortion once force-fitted to the final size. The fix: skip the model's ratio option entirely and specify exact pixel dimensions in the prompt — that change alone brought distortion down to 0–2%. Below: the mechanics, the measurements, and a QA checklist you can use with any tool.

Why it squashes — the mechanics of ratio snapping

The official way to set a ratio on a generative model is usually an enum. Gemini's image models, for instance, accept exactly 14 ratios (1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 5:4, 4:5, 4:1, 1:4, 8:1, 1:8, 21:9). Ad placements don't care: Kakao Bizboard is 1029×258 (~4:1), Naver's main banner is 1250×560 (~9:4), Google Display's 728×90 is ~8.1:1 — ratio after ratio that isn't on the list.

What happens is snapping. The model generates at the nearest supported ratio, and the pipeline force-fits the output to the final dimensions. Request 3:1 (=3.0), get 21:9 (≈2.33) — the output must be stretched 27% wider to fit, and that 27% is pure visual distortion.

LOGORequest: 300×100 (3:1)What you wantedLOGOGenerated: snapped to 21:9Model rounds to a supported ratioLOGOForce-fit: width +27%Circle becomes ellipse — distortion
Ratio-snap distortion: a 3:1 request is generated at 21:9, then force-fitted — turning a circular logo into an ellipse (27% measured)

The nastier detail: when the ratio parameter and the prompt conflict, the parameter wins. Write "make it 300×100" in the prompt and the model still follows the enum if one is passed. We assumed the prompt would carry — until measurement proved otherwise.

The measurements — May 2026, production pipeline

CaseRequested (ratio)Snapped toDistortion
Ultra-wide banner300×100 (3:1)21:9 (≈2.33:1)27%
IG feed safe area952×1222 (≈7:9)3:44.3%

27% is obviously broken. The interesting number is 4.3% — it sounds tolerable, but it's the level at which a square logo turns subtly rectangular and face widths shift. Brand owners notice. That 4.3% was exactly what triggered internal reports that our safe-zone outputs "looked slightly squashed".

After the fix: sending no ratio enum and specifying "exactly 300×100 pixels" in the prompt brought the same cases down to 0–2%, and the safe-zone stage's squash went from 4.3% to ~0.2% — indistinguishable to the human eye.

So here's what to do — a distortion QA checklist

  1. Compute the distortion rate: (original element width÷height) ÷ (same element in the output). If a square logo comes back 110×100px, that's 10%.
  2. Three reference elements to check: circles (logos, buttons) — turn into ellipses instantly; faces — width changes are highly visible; square product boxes. Looking only at gradient backgrounds can hide even 27%.
  3. Pass under 2–3%, reject at 4%+ — 4.3% is where brand elements became identifiable in our tests.
  4. When evaluating a tool, ask: "How do you handle arbitrary ratios?" If the answer is "generate at a supported ratio, then adjust" — you'll be running this checklist on every batch.

How ImageFactory solves this

These measurements changed our pipeline:

  1. Arbitrary-ratio placements are generated without the ratio enum, with exact pixel dimensions specified — 0–2% measured distortion.
  2. Extreme ratios beyond 8:1 (like 728×90 leaderboards) skip generation altogether: the original is preserved and only the margins are AI-extended — zero content distortion by construction.
  3. Same-ratio placements (say 350×100 and 700×200) are generated once from a master and losslessly downscaled — fewer chances to distort, faster too.
  4. Outputs apply safe zones and file specs from the 1,400+ placement library automatically.

The quickest way to verify ratios come out exactly as requested: run an ultra-wide banner (728×90) through the 14-day free trial with your own creative.

Frequently asked questions

Why does AI change my banner's proportions?

Most image models only accept a list of ~14 supported aspect ratios. Request 3:1 and the model generates the nearest supported ratio (21:9), which then gets force-fitted to the final size — that gap becomes visible distortion (27% in our measurement).

At what point does distortion become visible?

In our tests, 4.3% was already detectable on reference elements like square logos and faces. A practical QA bar: pass under 2–3%, reject at 4% or more.

Is there a way to generate arbitrary ratios without distortion?

Yes — skip the ratio parameter and specify exact pixel dimensions in the prompt. ImageFactory uses this approach (0–2% measured) and routes extreme ratios beyond 8:1 to a preservation-based strategy with zero content distortion.

See distortion-free size adaptation on your own creative

Upload one master creative and it is adapted to 1,400+ placement sizes automatically — original text preserved, safe zones and file specs applied per platform guide. Start with a 14-day free trial.

Start banner resize