Most AI images come out at around 1 megapixel. That looks fine on a phone, but it falls apart when you print it, crop it or use it as a wallpaper. Upscaling fixes that, and ComfyUI gives you several ways to do it for free on your own GPU.
The trouble is choosing. There are fast model upscalers like ESRGAN, tiled diffusion upscalers that add new detail, and newer options like SeedVR2 and the Z-Image-Turbo 2K template.
This guide shows you how to upscale images in ComfyUI step by step, from the simple two-node workflow to detail-adding methods, with exact model folders, the settings that matter, which method to pick for each kind of image, and fixes for the usual errors.
- Fastest: put an ESRGAN-type model (
.pthor.safetensors) inComfyUI/models/upscale_models, then use Load Upscale Model + Upscale Image (using Model). - More detail: upscale with a model, then run a low-denoise img2img pass (0.15 to 0.35), or use Ultimate SD Upscale for tiled diffusion.
- Faithful, high quality: SeedVR2 (custom node) keeps the original look and works for images and video.
- Built-in template: “Image Upscale: Z-Image-Turbo 2K” in the Template Library does model + diffusion in one go.
- Pick by image: conservative upscalers for products, text and faces you must keep; creative ones for art and landscapes.
ComfyUI Upscale Methods Compared
| Method | Adds new detail? | Speed | Extra install | Best for |
|---|---|---|---|---|
| Upscale Image (using Model), ESRGAN-type | Sharpens, little new detail | Seconds | Model file only | Quick 2x to 4x, batches |
| Upscale Image By / ImageScaleBy (non-AI) | No | Instant | None | Resizing before another step |
| Model upscale + low-denoise img2img | Yes, controlled | Medium | None | AI art, portraits |
| Ultimate SD Upscale (tiled) | Yes | Slow at 4K+ | Custom node | Very large outputs on small GPUs |
| SeedVR2 | Restores, stays faithful | Medium | Custom node + model | Photos, products, video |
| Z-Image-Turbo 2K template | Yes, moderate | Fast for diffusion | Template models | One-click 2K detail |
The official ComfyUI docs describe this as conservative versus creative upscaling. Conservative upscalers preserve the original; creative ones re-imagine detail and can drift or hallucinate. Neither is “better”. It depends on whether the original must stay exact.
Step 1: Download an Upscale Model
- Go to OpenModelDB (openmodeldb.info), the library the ComfyUI docs recommend for upscale models.
- Filter by image type (photo, art, anime, text) and check the scale badge (1x, 2x, 4x) on each card.
- Download a model. Good starters: 4x-ESRGAN or RealESRGAN x4plus (general), 4x-UltraSharp (popular for AI art), BSRGAN (text and sharp edges) and SwinIR (natural textures, landscapes).
- Save the file to
ComfyUI/models/upscale_models/. On Comfy Desktop, that folder is inside the base path you chose at install. - Press R in ComfyUI (or restart) so the new model appears in the dropdown.
.safetensors versions when offered. Old .pth files can contain code; only download them from trusted sources like OpenModelDB or the model’s official repo.You can also install models from Manager > Model Manager by searching “upscale”. No Manager yet? See our ComfyUI Manager install guide.
Step 2: The Basic Model Upscale Workflow
This is the simplest and fastest way to upscale any image in ComfyUI. It needs only four nodes.
- Clear the canvas or open a new workflow tab.
- Add Load Image (double-click the canvas and search for it) and upload your picture.
- Add Load Upscale Model and select your model, for example
4x-ESRGAN.pth. - Add Upscale Image (using Model). Connect
UPSCALE_MODELfrom the loader andIMAGEfrom Load Image. - Add Save Image and connect the upscaled
IMAGEto it. - Click Run (or Ctrl+Enter). A 1024 px image with a 4x model comes out at 4096 px.
The ComfyUI docs also ship this as a ready workflow: drag the example upscale image from the docs into ComfyUI and the nodes appear, already wired.
Want 2x from a 4x model? Add an Upscale Image By node after it with scale_by 0.5. You get the model’s sharpening at a sensible size, and it is often cleaner than a straight 2x resize.
Upscale Straight After Generating
To upscale every image you generate, connect the VAE Decode output to the upscale node instead of Load Image:
- Open your text-to-image workflow (any model: SDXL, Flux, Qwen-Image, Z-Image).
- Add Load Upscale Model and Upscale Image (using Model).
- Connect VAE Decode’s
IMAGEinto the upscale node. - Keep a Preview Image on the original so you can compare, and a Save Image on the upscaled version.
This “generate small, upscale at the end” pattern is faster than generating at a huge size, and it avoids the doubled heads and odd anatomy many models produce above their training resolution.
Add Detail: Model Upscale + img2img Pass
A model upscaler sharpens what is there. To add real new detail (skin texture, fabric, foliage), run a second, gentle diffusion pass on the upscaled image. This is what many people call “hires fix”.
- Upscale with the basic workflow above, then scale to your target size (for example 2x total) with Upscale Image By.
- Add VAE Encode to turn the upscaled image back into a latent.
- Add a KSampler using the same model and prompt as the original.
- Set denoise low: 0.15 to 0.25 stays close to the original; 0.25 to 0.35 adds more detail; above 0.35 can change faces and add artefacts.
- Use fewer steps (around half your normal count) and the same sampler.
- VAE Decode and save.
These denoise ranges match the guidance in ComfyUI’s own Z-Image-Turbo upscale template. Going much above 2048 px in one pass can run out of VRAM; use the tiled method below for bigger targets.
Ultimate SD Upscale (Tiled)
ComfyUI_UltimateSDUpscale splits a large image into tiles, runs img2img on each tile at a size the model was trained on, and stitches them back together. It adds detail at 4K and beyond without needing a huge GPU.
Install
- Open Manager > Custom Nodes Manager, search
UltimateSDUpscaleand install it. - Or with git: in
ComfyUI/custom_nodesrungit clone https://github.com/ssitu/ComfyUI_UltimateSDUpscale. - Or with comfy-cli:
comfy node install comfyui_ultimatesdupscale. - Restart ComfyUI. The nodes appear under
image/upscaling, and example workflows show up in the Template Library under Extensions.
Key settings
| Setting | Start with | What it does |
|---|---|---|
upscale_by |
2 | Final size relative to the input |
upscale_model |
Your ESRGAN-type model | Does the first enlargement before diffusion |
denoise |
0.2 to 0.3 | How much each tile can change |
tile_width / tile_height |
1024 (SDXL/Flux), 512 (SD 1.5) | Match the model’s native size |
mask_blur and tile_padding |
Defaults (8 and 32) | Blend tile edges |
seam_fix_mode |
None, or Band Pass if you see seams | Repairs visible tile lines |
Use a short, general prompt (style and quality words). Very specific prompts can make the model draw extra subjects inside every tile.
SeedVR2 for Faithful Upscales
SeedVR2, from ByteDance Seed, is a restoration model that upscales images and video while staying close to the original. ComfyUI’s docs list it among the conservative options recommended for product photography.
- Install “ComfyUI-SeedVR2_VideoUpscaler” (by numz) from Manager, or clone
https://github.com/numz/ComfyUI-SeedVR2_VideoUpscalerintocustom_nodesand install itsrequirements.txt. - Restart ComfyUI and load one of the node’s example workflows.
- Choose the 3B model for 8 to 12 GB cards or the 7B model for more quality. GGUF and FP8 versions, plus BlockSwap, help on low VRAM.
- Downscale first: ComfyUI’s docs suggest an ImageScaleToTotalPixels node set to about 0.35 megapixels before SeedVR2 for better results.
- Run. The first run downloads the selected model.
SeedVR2 is also great for AI video. For video-specific upscalers, see our guides to RelayVSR in ComfyUI and Tessera 4K and 8K upscaling.
Z-Image-Turbo 2K Template
ComfyUI now includes a ready local diffusion upscaler. Search “Image Upscale: Z-Image-Turbo 2K” in Workflow > Browse Templates.
It first upscales with RealESRGAN, then re-samples the image with Z-Image-Turbo at a moderate denoise to rebuild detail at 2K. The template ships with denoise at 0.33.
Lower it to 0.15 to 0.25 if faces or text change too much, and give it a detailed caption rather than a short tag list if you go above 0.35.
The template asks for any missing model files when you open it. If your ComfyUI is older and the template is missing, update first with our ComfyUI update guide.
Latent Upscale vs Pixel Upscale
ComfyUI also has Upscale Latent and Upscale Latent By nodes, which enlarge the latent before a second KSampler pass.
- Latent upscale: fast, no model download, but it needs a fairly high denoise (around 0.5 or more) to clean up the blur, so the image changes more.
- Pixel upscale with a model: sharper starting point, so you can use a lower denoise and keep the original closer.
For most people, pixel upscaling with a model followed by a low-denoise pass gives the best balance.
Which Method for Which Image
| Image type | Recommended | Why |
|---|---|---|
| Product photos, labels, small text | SeedVR2 or BSRGAN-type model | Conservative; keeps edges and lettering |
| Real photos of people | SeedVR2, or model + img2img at 0.15 to 0.2 | Keeps identity; light added texture |
| AI art and illustrations | 4x-UltraSharp + img2img 0.25 to 0.35, or Ultimate SD Upscale | Adds crisp new detail |
| Anime | An anime-trained ESRGAN model from OpenModelDB | Clean lines, no painterly noise |
| Landscapes | SwinIR-type model, or Z-Image-Turbo 2K for drama | Natural texture, or richer detail |
| Images with AI mistakes (extra fingers) | Fix first, then upscale | The docs warn upscaling rarely fixes these |
Need a quick upscale without ComfyUI? Our roundup on how to increase picture resolution free with AI covers online tools and one-click apps.
VRAM and Speed Tips
- Model upscalers are light. ESRGAN-type models run on almost any GPU; ComfyUI tiles them automatically if memory is short.
- Diffusion passes are heavy. Keep img2img passes at or below about 2048 px and use Ultimate SD Upscale beyond that.
- Use smaller diffusion models for the detail pass, such as a GGUF quant. See our ComfyUI GGUF guide.
- Chain 2x steps (2x then 2x) instead of one big 4x jump when quality matters; the ComfyUI docs suggest chaining for very high magnification.
- Batch overnight: point Load Image at a folder with a batch loader node, or queue many runs.
Troubleshooting
| Problem | Cause | Fix |
|---|---|---|
| Upscale model not in the dropdown | Wrong folder or no refresh | Put it in models/upscale_models, press R |
Error loading a .pth model |
Unsupported architecture or blocked unsafe file | Try the .safetensors version or another model from OpenModelDB |
| Out of memory on the img2img pass | Image too large | Target 2048 px or less; switch to Ultimate SD Upscale |
| Visible tile seams | Tiles not blended | Raise mask_blur/tile_padding, enable a seam fix mode |
| Faces change or new people appear | Denoise too high or prompt too specific | Lower denoise to 0.15 to 0.25; use a general prompt |
| Result looks plastic or oversharpened | Aggressive upscale model | Use a softer model, or blend with Image Blend at 50% |
| Upscaled image is 4x too big | 4x model | Add Upscale Image By at 0.5 for 2x |
| Colour shift after SeedVR2 or img2img | VAE or colour drift | Use the node’s colour correction option or a colour match node |
| UltimateSDUpscale node red after update | Pack outdated | Update it in Manager and restart |
My Take
Start with the two-node model upscale; it is fast and good enough for most uses. When you want images to look truly high resolution, add a low-denoise img2img pass, and switch to Ultimate SD Upscale once you go past 2K.
For real photos and products where accuracy matters, SeedVR2 is the one to learn. And if you just want a single click, the built-in Z-Image-Turbo 2K template is the easiest way to get detailed 2K images today.
FAQ
Where do upscale models go in ComfyUI?
In ComfyUI/models/upscale_models/. Press R or restart so they show up in the Load Upscale Model node.
What is the best upscale model for ComfyUI?
There is no single best. RealESRGAN or 4x-ESRGAN are good general picks, 4x-UltraSharp is popular for AI art, BSRGAN suits text, and SwinIR suits landscapes. Test two or three on your images.
Can ComfyUI upscale without a model?
Yes. Upscale Image By and Upscale Latent resize without an AI model, but results are softer. Follow them with an img2img pass for detail.
How do I upscale to 4K or 8K on an 8 GB GPU?
Use a model upscaler for the enlargement and Ultimate SD Upscale for the detail pass, since it works tile by tile. SeedVR2 with BlockSwap or a GGUF model also helps.
Does upscaling fix bad hands or faces?
Usually not. ComfyUI’s own guide advises fixing AI mistakes with editing or inpainting before upscaling.
Can I upscale videos in ComfyUI?
Yes. SeedVR2 handles video, and there are dedicated video upscalers such as RelayVSR and Tessera.
What denoise should I use for an upscale pass?
0.15 to 0.25 to stay close to the original, 0.25 to 0.35 for more added detail. Higher values change the image noticeably.
Sources
- ComfyUI docs: Image upscale workflow (Load Upscale Model, models/upscale_models)
- ComfyUI docs: Image upscaling guide (conservative vs creative, SeedVR2 tip, Z-Image-Turbo 2K)
- OpenModelDB: upscale model library
- ssitu/ComfyUI_UltimateSDUpscale
- numz/ComfyUI-SeedVR2_VideoUpscaler
- ComfyUI Blog: The complete AI upscaling handbook



