Cascade Resolutions
Pick a resolution from a list, stop typing it
- width
- height
Cascade Resolutions is about as small a ComfyUI node as you'll find: one dropdown, one multiplier, two override boxes, and it outputs two integers called width and height. That's it. No models, no dependencies, no VRAM cost. You pick 1536x768 (2:1) - Ultra Wide Small from a menu of 30 presets and out come the numbers 1536 and 768, ready to feed an Empty Latent Image node (or the EmptySD3LatentImage your SD3 workflow probably uses).
Why would you want that? Because the most common beginner mistake in this whole stack is generating off your model's native resolution. SD 1.5 wants ~512, SDXL was trained on a specific set of aspect ratios (1024x1024, 1152x896, 1216x832, 1344x768, 1536x640 and their rotations), and going far off those gets you duplicated anatomy, stretched limbs, or tiling. A preset list keeps your generation sizes in the sane band instead of whatever number you typed from memory.
The mechanism is boring in the best way. The dropdown labels come from a sizes.json that ships with the pack; each entry holds a width and a height, and the node just looks up your selection and returns it. The only inputs that actually matter:
size_selected- the dropdown of 30 presets, everything from 768x768 up to 4K.multiply_factor- an integer (min 1, default 1) that scales both dimensions. Pick 1024x1024 and set it to 2, you get 2048x2048 in the same aspect ratio without doing math. Handy for setting up a hires-fix second pass.manual_width/manual_height- set both above 0 and they override the dropdown entirely, with the same multiply applied. That's your escape hatch for anything not on the list.
Outputs are just width and height, both INT, and they wire straight into the width/height inputs of an Empty Latent Image node. The node is marked as an output node in the code, but don't let that fool you - it's a utility, not a result viewer.
Install is trivial because there's nothing to install besides the code. It's on the Comfy Registry, so in Manager just search "Cascade Resolutions" (pack title "ComfyUI-CascadeResolutions"). Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/al-swaiti/ComfyUI-CascadeResolutions
then restart ComfyUI. No requirements.txt, no model downloads, no Python deps beyond json and os.
Where people get burned - honestly, not much, and that's the charm. The one real trap is the README, which tells you to git clone https://github.com/GavChap/ComfyUI-CascadeResolutions . - that's a different author's repo (this pack is a fork of it), and that trailing dot dumps the contents straight into your custom_nodes folder as files, not a subfolder. Clone this repo into its own directory instead. Second gotcha is self-inflicted: several presets are enormous - 3840x2160, 1408x3072. This node tells the sampler a size; it doesn't make that size sensible. Generating straight at 4K on a model trained at 1024 is still a recipe for tiling and mush. Treat the big presets as upscale targets, not txt2img settings.
It's the kind of node that feels useless until you've rebuilt your workflow the fourth time and realize you keep re-typing 1216x832. It's also shown up inside SD3-era example workflows as the "preferred aspect ratio" picker, which is where a lot of people first meet it. Not essential, not overhyped - just a tidy little dropdown that saves you from your own fat-fingering.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| size_selected | COMBO | 30 options: 768x768 (1:1) - Square Medium, 768x1024 (3:4) - Portrait Small, 1024x768 (4:3) - Landscape Small, 1152x768 (3:2) - Wide Small, 768x1152 (2:3) - Portrait Medium, 1536x768 (2:1) - Ultra Wide Small, +24 | |
| multiply_factor | INT | 1 | — |
| manual_width | INT | 0 | — |
| manual_height | INT | 0 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| width | INT | — |
| height | INT | — |