Upscale a 1280x720 thumbnail to 3840x2160: factor 3 or generate at 4K?

Factor 3 turns 1280x720 into 3840x2160 for $0.20; GPT Image 2.5 at 4K is $0.2225. For 36 thumbnails: $7.20 to upscale, $8.01 to regenerate.

5 min readSume
All posts

Sume image upscale with upscale_factor: 3 turns a 1280 x 720 thumbnail into 3840 x 2160 for a flat $0.20. Generating a new image at GPT Image 2.5 4K costs $0.2225, so for 36 finished thumbnails the upscale is $7.20 and a regeneration is $8.01. If the thumbnails already exist, upscale. If they do not, generate at the larger size directly.

What YouTube asks for

YouTube's help page for custom thumbnails recommends 3840 x 2160 pixels for videos and 2160 x 3840 for Shorts, in JPG or PNG. It also says to stay under 2 MB when you upload from a mobile device, and 50 MB from a desktop. The page adds that the image should be as large as possible because it is the preview in the embedded player.

A 3840 x 2160 PNG with flat graphics and text is often well under 50 MB, but it can exceed 2 MB. Ask for output_format: "jpg" when the file has photographic content and the upload goes through a phone.

36 thumbnails to 3840 x 2160, as of 2026-10-08
RoutePer thumbnail36 thumbnails
Upscale existing 1280 x 720 files, factor 3$0.20$7.20
GPT Image 2.5 at the 4K row, new image$0.2225$8.01
Low draft ($0.02475) then upscale$0.22475$8.091
Medium draft ($0.055625) then upscale$0.255625$9.2025

Why a draft plus upscale is not cheaper

It is easy to assume that a cheap draft followed by an upscale undercuts a 4K render. The table shows it does not. A low draft plus the $0.20 upscale already costs $0.22475, which is above the $0.2225 direct row. The upscale only pays when you cannot or do not want to regenerate: the thumbnail is a photo, or a design that you have approved, or text that must not change.

Regeneration also changes the picture. Even with the same prompt, the model draws a new image, and a thumbnail that tested well is not the same thumbnail after a re-render.

Request

The upscale route takes image_url, upscale_factor from 1 to 4 and an output_format of png, jpg or webp. The catalog lists the price as $0.20 per image. Sume's note on the price reserves about 16 megapixels of output, and a 3840 x 2160 result is about 8.3 megapixels, well inside that. See the reserve explainer for what the hold means.

Keep the 1280 x 720 originals. If a video later needs a vertical Shorts version, you will be starting from the source again, and the 2 MB vs 50 MB post covers the file-size side.

{"image_url": "https://example.com/thumbs/ep-114.png",
 "upscale_factor": 3,
 "output_format": "jpg",
 "mode": "async"}

Checks before you upload 36 files

Open three results at full size and look at text edges, because the headline is what people read first. Confirm the dimensions are 3840 x 2160, the format is what you asked for, and the size on disk is under 2 MB if you will upload from a phone. Pillow can do all three in a few lines.

Keep a record of the job id per video and the factor you used. If YouTube's guidance changes or you want a vertical version, you can start again from the original at a known cost of $0.20 each.

Sources

Related posts

More in Pricing

All Pricing posts

Written by Sume