SD_4XUpscale_Conditioning
The 2023 4x upscaler that's still the cleanest generative upsample
- images
- positive
- negative
- positive
- negative
- latent
SD_4XUpscale_Conditioning is the front half of the official "SD 4X upscaler" workflow: it packages your image plus text conditioning so the upscale model can generate a 4x version with real detail, not just stretched pixels. Stability AI released the SD 4X upscaler in late 2023 as a purpose-built companion to SD1.5 - a latent upscaler that invents the fine detail a naive resize can't - and this node is what feeds it.
Before you get too excited about the "generative detail" part, the 2026 honest take from the upscaling discourse applies here too: this is the "more detail, will rewrite faces" category, not the "more pixels, safe" category. For an already-clean image you're often better off with a fast ESRGAN or Lanczos pass. But for genuinely soft or low-res sources where you want the model to imagine detail, the SD 4X path is a coherent, still-supported built-in.
How it works
The node takes your images, scales them to a quarter of the target resolution (width/4, height/4) and maps the pixels into the model's expected range, then stores that as a concat_image in both positive and negative conditioning. It also sets noise_augmentation (default 0) - the knob controlling how much noise the upscale model starts from, which is what governs how much it diverges and invents versus how faithfully it holds the source. The scale_ratio (default 4) sets how many times bigger the output gets; the latent it hands back is sized at width/4 × height/4, ready for the upscale model's sampler to denoise up to full size.
Inputs that matter
- images - the image(s) to upscale.
- positive / negative - text conditioning (yes, the upscaler listens to a prompt - you can nudge it toward "sharp details, no artifacts").
- scale_ratio - default 4, the upscale factor.
- noise_augmentation - default 0; raise it when the source is very soft and you want the model to invent more.
Outputs: positive, negative, and the starting latent for the SD 4X sampler.
Where it fits
Ships with ComfyUI core, alongside the SD 4X upscaler model loader in the stable-diffusion-upscaler family - one of the older built-ins (2023). The model file (a diffusion model, "sd_x4_upscaler" era) goes in your ComfyUI models folder. Reach for it when you have a low-res source and want the model to build detail, on hardware that can handle the latent at full size - it's the direct ancestor of the tile-ControlNet upscale patterns people still use today.
Common issues
Faces get rewritten, as with any generative upscaler - if identity matters, give the face its own pass. Very soft sources usually want a small noise_augmentation bump (0.1–0.3) or the result stays blurry; too high and you get texture soup. And it's an SD1.5-family upscaler - it expects SD1.5-compatible weights and doesn't belong at the end of a Flux or SDXL pipeline. If your source is already sharp and you just want it bigger, reach for a plain 4x ESRGAN instead; this node is for when detail actually needs inventing.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| positive | CONDITIONING | — | |
| negative | CONDITIONING | — | |
| scale_ratio | FLOAT | 4.000–10 | — |
| noise_augmentation | FLOAT | 0.0000–1 | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| negative | CONDITIONING | — |
| latent | LATENT | — |