LatentUpscaleFactor _O
Scale latents by multiplier, not pixel math
- samples
- LATENT
ComfyUI's stock latent upscaler makes you type an absolute width and height. That's fine until you're swapping between 512×512 and 1024×1024 workflows and find yourself recomputing target pixels every time. LatentUpscaleFactor _O thinks in multipliers instead: give it a WidthFactor and a HeightFactor, and it scales the latent by those factors. 2×2 on a 512 latent gets you 1024. 0.5 gets you 256. No mental arithmetic, no stale pixel values.
It lives in the O/latent folder of the Quality of Life Suit pack, alongside LatentUpscaleFactorSimple _O (single factor for both dimensions) and selectLatentFromBatch _O. If you've ever wanted "just upscale this latent by a bit" without opening a calculator, this is the node.
How it works
Mechanically it's a thin wrapper around ComfyUI's own common_upscale - the same interpolation machinery the core LatentUpscale node uses. The pack's version reads the latent's width and height (in latent units), multiplies each by your factor, and hands the result to common_upscale with your chosen method. Three details worth knowing:
- It enforces multiples of 8. After multiplying, the dimensions get rounded to the nearest multiple of 8 - which matters because most SD-family models expect spatial sizes divisible by 8. It's done for you, which is the nice part.
- It clamps at 8192. The pack's
MAX_RESOLUTIONcap means a factor of 10 on a huge latent won't produce a nonsense tensor. - It prints before/after sizes. The console shows
upscale from (512,512) to (1024,1024)in pixels, so you can see exactly what the factor did.
Inputs that matter:
samples(LATENT) - the latent to scale.upscale_method-nearest-exact,bilinear, orarea. Default in the widget order isnearest-exact;areais generally the gentler choice for latents.WidthFactor/HeightFactor(FLOAT) - the multipliers, default 1.25, range 0–10. Separate per-axis factors mean you can also fix aspect ratios, not just scale uniformly.crop-disabledorcenter, passed through to the upscale call.
One output: LATENT, the scaled latent.
Where it fits
The honest take: latent upscaling is for hi-res-fix-style workflows, and it's not the same as pixel upscaling. The community consensus, echoed in the upscaling guides, is that a modest latent upscale (1.5–2×) as the intermediate step of a two-pass generation is a solid move - but the heavy lifting for real upscaling happens in pixel space or with dedicated upscalers. Use this node to cheaply bump a latent before a second sampling pass, not as a substitute for a proper upscaler.
The factor-based UI shines when you experiment: drag WidthFactor to 1.5 and queue, then 2.0 and queue, without touching pixel values. For a uniform scale, LatentUpscaleFactorSimple _O is one knob instead of two.
Installing it
Part of the Quality of Life Suit pack (omar92/ComfyUI-QualityOfLifeSuit_Omar92). Install via ComfyUI Manager (search "Quality of Life Suit") or clone:
cd <ComfyUI>/custom_nodes
git clone https://github.com/omar92/ComfyUI-QualityOfLifeSuit_Omar92.git
Restart ComfyUI properly. No models, no dependencies.
Common issues
- "The output size isn't exactly factor × input." The multiple-of-8 enforcement rounds things - a factor that produces a non-divisible-by-8 size gets nudged. That's a feature, not a bug.
- "It's blurrier than I expected." Latent-space interpolation is inherently soft; that's why hi-res fix adds detail on a second pass. If you want sharpness, upscale in pixel space instead.
- "Dimensions hit 8192 and no more." That's the safety cap. Reduce the factor.
A multiplier-based latent scaler is a small quality-of-life win, but a real one - especially once you start iterating on resolution as part of your workflow.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| samples | LATENT | — | |
| upscale_method | COMBO | 3 options: nearest-exact, bilinear, area | |
| WidthFactor | FLOAT | 1.25000–10 | — |
| HeightFactor | FLOAT | 1.25000–10 | — |
| crop | COMBO | 2 options: disabled, center |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |