Refine
The upscaler, then a detail pass with a main model and your prompt. Adds new detail; needs a main model of a supported family. The default, also for projects saved before the switch existed.
Esta página aún no está disponible en tu idioma.
The Upscale panel enlarges an image. An upscaler model, run through Spandrel (such as a Real-ESRGAN variant), enlarges it first. In Refine mode a main model then runs a short image-to-image pass over the result to add detail that fits your prompt.
Open the panel from the left region, where it sits behind Generate in the Compose and Edit layouts and behind Video in the Video layout. To upscale a gallery image without opening it, use the image menu (see Upscaling from the image menu).
When no model of a kind the panel needs is installed (a Spandrel upscaler, a supported main model, or the Tile or Union ControlNet a model requires), its picker says so and offers Install a model, which opens Add Models in the Model Manager filtered to that kind. Users who cannot manage models are asked to contact an administrator instead.
The Mode switch at the top of the panel picks how the image is upscaled.
Refine
The upscaler, then a detail pass with a main model and your prompt. Adds new detail; needs a main model of a supported family. The default, also for projects saved before the switch existed.
Model only
The upscaler alone: no main model, prompt or detail pass. Faster and faithful to the source. Always queues once whatever Iterations says, because the upscaler gives the same image every time.
Switching modes keeps your Refine settings, so switching back restores them. Model only does not need the model capability list Refine loads, so it works while that list is loading or could not be loaded.


A crop of the same 2× upscale of a 1024 × 1024 SDXL illustration with the RealESRGAN x4plus upscaler. Refine ran with the panel’s defaults: the Balanced preset, 30 steps, CFG 2 and an SDXL Tile ControlNet.


Refine only.
Refine only, collapsed until you open them.
The panel says what is missing before you can queue, for example “Select a compatible Tile or Union ControlNet.” or “This model needs a T5 encoder selected.” Iterations sits with the Invoke button in the top bar.
Refine works with SD1.5, SDXL, FLUX.1, FLUX.2, Z-Image, Anima, Krea-2 and Qwen Image main models.
| Family | Tile ControlNet | Negative prompt | Detail pass |
|---|---|---|---|
| SD1.5, SDXL | Required | Yes | Tile by tile |
| FLUX.1, FLUX.2 | – | – | Whole image |
| Z-Image | Optional | When CFG > 1 | Whole image |
| Anima, Krea-2, Qwen Image | – | When CFG > 1 | Whole image |
Where a family has no Tile ControlNet, Structure is hidden. Where it ignores the negative prompt, the prompt is hidden and not recorded.
A value “set when you pick the model” is the model’s default setting, which you can change in the Model Manager. Switching from FLUX.2 to another family sets Steps back to 30.
Creativity sets how far down the noise schedule the detail pass starts: the higher, the noisier the start and the more the main model redraws. The panel offers only schedulers that start where Creativity puts the pass, and hides the field where only one is left.
| Family | Schedulers | Steps the pass runs |
|---|---|---|
| SD1.5, SDXL | All of the family’s | The part of Steps after the start: about half at Balanced |
| FLUX.1 | Euler, Heun | The part of Steps after the start: Balanced at 30 steps runs about the last 8 from 1024 px up |
| FLUX.2 | Euler only | Starts where FLUX.1 does, then spreads all of Steps over the rest of the pass, so 30 steps really run 30 times |
| Z-Image | Euler, Heun | Starts at FLUX.1’s noise level; Balanced at 30 steps on a 2048 px result runs the last 7 |
| Anima | Euler, DPM++ 2M, DPM++ 2M SDE, ER-SDE | As Z-Image; the last 8 |
| Krea-2 | Euler only | As Z-Image; the last 7. Turbo and Raw both keep your Steps: Turbo, distilled for 8 steps, runs the end of a 30-step schedule |
| Qwen Image | Euler only | As Z-Image; the last 9 |
Z-Image, Anima, Krea-2 and Qwen Image count the start in steps rather than in noise level, so the panel translates Creativity for them: it starts on the step whose noise level is closest to where FLUX.1 would start. A preset therefore means the same on every family. These families need at least 2 steps.
LCM builds its own noise schedule, so it would treat the enlarged image as pure noise. Anima’s Heun starts below Creativity’s point and leaves noise in the image.
| SD1.5, SDXL | Other families | |
|---|---|---|
| Detail pass | In tiles, so the output can be much larger than the model generates in one go | Over the whole image at once: memory grows with the output size |
| Tile size | The detail pass’s tiles: larger tiles can improve continuity but need more VRAM | Only the VAE encode and decode tiles (Anima’s decode picks its own) |
| Tile overlap | More overlap reduces seams but costs time and memory | No effect |
Encoding and decoding the enlarged image with the VAE runs in tiles for every family. If you still run out of memory, see Low-VRAM mode.
Each upscaler has a native scale, such as 4× for 4x-UltraSharp. In Model only mode the upscaler runs until the image is at least the Scale you asked for, then resizes it down to that size. The size preview shows the Native scale and a note on how it gets there:
| Scale | 2× upscaler | 4× upscaler |
|---|---|---|
| 1.5× | Runs 2× once, then resizes to 1.5× | Runs 4× once, then resizes to 1.5× |
| 2× | Runs 2× once | Runs 4× once, then resizes to 2× |
| 4× | Runs 2× 2 times | Runs 4× once |
| 8× | Runs 2× 3 times | Runs 4× 2 times, then resizes to 8× |
When Scale equals the native scale the note is left out. A 1× model (a restoration model) keeps the input size, so Scale has no effect. In Refine mode the panel shows no native scale. FLUX.1, FLUX.2, Z-Image, Anima, Krea-2 and Qwen Image resize the upscaler’s result to Scale before the detail pass; SD1.5 and SDXL keep the upscaler’s size, so with a 1× model their result stays at the source size.
A Model only result’s metadata is the source image’s metadata plus the upscaler and the Scale, so Recall on it restores how the source was made.
Upscalers record their native scale when they are installed. One installed with an earlier version has none until it is re-identified: Model only then shows no Native scale row, and a note under the Spandrel model says the native scale is unknown. To record it:
Under the Spandrel model, press Open in Model Manager, or open the upscaler’s page there yourself.
Press Re-identify model and confirm. Invoke re-probes the file, and the page then shows the native scale. Re-identifying also resets the model’s custom variant and default settings.
Only users who manage models can re-identify; others are asked to contact an administrator.
Right-click an image in the gallery, or open Edit in the Preview’s header, and open Upscale:
| Upscaler’s native scale | Factors offered |
|---|---|
| 1× (restoration) | 1× |
| 2× | 1.5×, 2× (native) |
| 3× | 1.5×, 2×, 3× (native) |
| 4× | 1.5×, 2×, 4× (native) |
| 8× | 1.5×, 2×, 8× (native) |
| Unknown | Native scale, which runs it once at whatever size it produces; Other factors is disabled with a note to re-identify it |
Each factor runs as Model only runs it at that Scale (see Native scale), so the result has the same size as one from the panel. For other factors, or a fractional Scale such as 2.5×, use Send to Upscale. When no upscaler is installed, the entry is disabled.
Results go to the board the Gallery names under Saving to, where new results go. Their metadata is the source image’s metadata plus the upscaler and its scale. If the source image’s metadata cannot be read, nothing is queued and a notification says so.