How to upscale an image

Image upscaling on OpenModels is a lightbox tool, not a workspace. You do not start from an empty page and upload a file to be enlarged — you open a finished image, switch to the Upscale tab, and run one of three models on it. That is the whole surface, and being clear about it saves you looking for a page that does not exist. All three are hosted models billed in gold credits.

Where the upscaler actually is

Open any finished image — from the generation feed, from an album, from your assets library — and the viewer opens with a row of tool tabs down the side: Overview, Upscale, Enhancer, Relight, Inpaint and Angles. Upscale is the second. Pick an option, press it, and the run is submitted as a job like any other, with its own card and its own place in the queue.

It is worth saying what is not there. There is no separate upscale page, no batch upscaler, and no drag-a-file-here surface. Enlargement starts from an image that is already in your library, so if the picture you want bigger came from somewhere else, upload it to your assets first and open it from there.

The three options and what each one does

Lightbox upscale tools
OptionModelPriceWhat it is for
CrispReal-ESRGAN✦0.5Fast, faithful sharpening — adds no detail that was not there
StandardImage upscaler, target 2K / 4K / 8K✦0.5Clean enlargement to a chosen resolution
CreativeCrystal upscaler✦1Invents fine detail while enlarging

The difference that matters is whether new detail is invented. Crisp and Standard are conservative: they make the file bigger and cleaner and leave the content alone, which is what you want for anything that has to stay true — a product shot, a face you have already approved, a picture with text in it. Creative hallucinates plausible texture into the gaps, which looks better on landscapes and worse on anything a viewer knows the real shape of.

Standard is the only one with a setting: a target of 2K, 4K or 8K, chosen before you press. The other two take the image and go. If you are unsure, Crisp at ✦0.5 is the cheap first attempt, and the before-and-after slider in the lightbox is the fastest way to judge whether it did anything worth ✦0.5.

Which plan: Every lightbox tool is a hosted call billed in ✦ gold, and the code carries no plan gate on them. What gates them in practice is the wallet: green credits are for models on our own GPUs and cannot pay for these, and a new account is granted zero gold. So this is a paying-account feature — either a plan with a monthly gold grant, or a credit bundle.

Upscaling an image

  1. Open the image. Click a finished picture in the generation feed, in an album, or in your assets library. The lightbox opens with the tool tabs on the side.
  2. Switch to the Upscale tab. Three cards appear, each with its price on it. Nothing is charged by opening the tab.
  3. Choose a target if you picked Standard. 2K, 4K or 8K. The other two options have no setting.
  4. Press the option you want. The price is frozen at that moment and held. The run counts against your plan's simultaneous image job allowance, the same as a generation.
  5. Compare, then keep or re-run. The result lands as its own image with a before-and-after slider against the source. If it is not what you wanted, a different option on the original costs another ✦0.5 or ✦1 — the source is untouched.

Make something to upscale — Fills the composer with a detail-heavy prompt. Generate it, then open the result and use the Upscale tab.

Practical notes

What an upscaler cannot recover

An upscaler works from what is in the file. Detail that was never rendered is not hiding in there waiting to be found — it can only be invented, and inventing it is exactly what separates Creative from the other two. That is a choice rather than a quality setting: on a landscape, invented bark and foliage is usually an improvement, and on a face or a logo it is a lie the viewer can see.

Two cases disappoint people consistently. Small text comes back as confident nonsense, because there were never enough pixels to say what the letters were. And faces at a distance get a new set of features rather than sharper versions of the old ones. In both cases the fix is upstream: render the picture larger, or frame the subject closer and crop afterwards.

The composer has a quality setting for exactly this reason, running from 512 up to 4K, and a few hosted models price the larger sizes separately — Nano Banana Pro is ✦4.7 at its normal size and ✦8.1 at 4K, Seedream 5.0 Pro is ✦2.2 and ✦3.7 at 2K. Rendering large costs more once. Rendering small and enlarging costs less and gives you less, and the difference shows on anything printed.

None of that makes the tools pointless. A clean enlargement of a 1024 render is a genuinely useful thing to have for a listing photo or a poster. It only means the honest question is not how big this can go, but how big it can go before somebody notices where the extra detail came from.

Video upscaling is a different thing

If you came here for video, it is a separate feature with a much narrower envelope, and it is Ultra-only: up to 60 seconds at 720p, 40 seconds at 1080p and 10 seconds at 4K. Do not plan a long clip around it. The image tools on this page do not touch video at all.

Can I upscale an image on the free plan?

No, in practice. The upscalers are hosted models billed in gold, green credits cannot pay for them, and a free account is granted no gold. A credit bundle or any paid plan opens them.

Is there a batch upscaler?

No. Upscaling is a per-image action from the lightbox. A hundred images is a hundred presses, at ✦0.5 or ✦1 each.

Which option should I use for a face?

Crisp or Standard. Creative invents detail, and invented detail on a face you have already approved reads as a different person.

Can I upscale a picture that was not generated here?

Yes, once it is in your library. Upload it to your assets first, open it there, and the same lightbox tools apply. Watch the per-file upload cap, which is derived from your plan's storage.

What happens if the upscale fails?

The held credits are returned. The price is frozen at submit and only consumed when a result actually comes back.