YouTube thumbnails take JPG or PNG: output formats per Sume image row
YouTube accepts JPG and PNG thumbnails. Sume rows list png, jpeg or webp; Recraft V4 is webp only, Soul and Ideogram 4.5 pick the format for you. Table and fix.
YouTube's thumbnail help page lists JPG and PNG as acceptable formats, so a WebP file is not what you upload. On Sume, most image rows list png, jpeg and webp and take output_format, Recraft V4 lists only webp, and Higgsfield Soul and Ideogram 4.5 list none because the provider picks the format. Convert those outputs before upload.
Formats per row
| Row | Formats listed | Send output_format? |
|---|---|---|
| ChatGPT Image 2.5, Image 2 | png, jpeg, webp | Yes |
| Nano Banana 2.1 and Pro | png, jpeg, webp | Yes |
| Seedream 4.0, 4.5, 5.0 Lite | png, jpeg, webp | Yes |
| Flux 2 Pro and Flex | png, jpeg, webp | Yes |
| Qwen Image, Qwen Image Max | png, jpeg, webp | Yes |
| Imagen 4 Fast and Ultra, Grok Imagine, Ideogram V3 | png, jpeg, webp | Yes |
| Recraft V4 | webp only | Leave it, then convert |
| Higgsfield Soul | None listed (PNG) | No |
| Ideogram 4.5 | None listed (provider selects) | No: the API does not accept the field |
YouTube's side
YouTube also asks for a 16:9 aspect ratio on video thumbnails, 9:16 for Shorts, and 1:1 for podcast playlists. Mobile uploads are limited to 2 MB and desktop to 50 MB for videos and Shorts (YouTube Help, read 2026-10-07). The page also says vertical videos with a 16:9 custom thumbnail get an auto-generated 4:5 thumbnail on home, explore and subscription pages.
Convert WebP to JPG
If a row gives you WebP, convert it. This Pillow snippet reads a downloaded file and writes a JPEG, flattening any transparency on white:
from PIL import Image
src = Image.open("thumb.webp")
if src.mode in ("RGBA", "LA"):
flat = Image.new("RGB", src.size, "white")
flat.paste(src, mask=src.getchannel("A"))
src = flat
src.convert("RGB").save("thumb.jpg", "JPEG", quality=90)Choosing
- For direct upload, pick a row that takes
output_format: "png"or"jpeg"and ask for it. - Keep the file under 2 MB if you upload from a phone; JPEG is smaller than PNG for photographic art.
- Use
aspect_ratio: "16:9"for videos and9:16for Shorts; every row lists both. - Transparent backgrounds need PNG or WebP and ChatGPT Image 2.5, which is not what a thumbnail needs.
File size in practice
YouTube lists 2 MB on mobile and 50 MB on desktop. A PNG of a detailed image can be large, so check the file size after conversion and keep a smaller JPG for phone uploads.
Do not resize on upload. Ask for the right ratio at generation time (16:9 for videos, 9:16 for Shorts), keep the long edge reasonable for the row, and convert once.
Reference
Row capabilities come from GET /v1/images/models, described on the Image API page. If a field is not listed for a row, Sume answers 400 unsupported_parameter instead of dropping it.
Sources
Related posts
More in Media tools
- 165-second Short from 11 clips of 15 s: Timeline $0.30
A 165-second vertical Short built from eleven 15-second slots renders for $0.30 and stays 15 seconds under YouTube's three-minute Shorts limit.
- 1:1 clip on a 540x960 TikTok canvas: cover, contain or blur
A 1080x1080 clip on a 540x960 Timeline canvas: contain leaves 210 px bars top and bottom, cover cuts 420 px, blur fills the bars. All cost $0.10 a minute.
- 20 overlapping 15-second stings from one Lyria track for $0.135
One Timeline audio split job takes up to 20 ranges, and ranges may overlap. One 2-minute bed plus one split gives 20 stings for $0.135, not $2.50.
- Crop a 21:9 video to 9:16, 4:5, 1:1 and 16:9: fraction table
From a 21:9 source, a full-height crop is 0.2411 wide for 9:16, 0.3429 for 4:5, 0.4286 for 1:1, 0.7619 for 16:9. $0.02 per crop; the check is free.
Written by Sume