Standard Resolution Presets
The Standard Resolution Presets Node
- width
- height
- megapixels
- description
The most boring thing in ComfyUI is typing the same width and height into an Empty Latent Image node for the hundredth time. Standard Resolution Presets (the node class is AspectResolutionPicker) is a tiny answer to that: a dropdown-driven picker that hands you a width and height, plus a human-readable label, without you touching a number. It's not a fancy node - there's no model loading, no GPU work, nothing to break. It's a preset table with a nice face, and for keeping a consistent output size across every workflow you build, that's genuinely useful.
How it works
The whole node is a single Python file with a hardcoded lookup table. You pick a ratio, an orientation, and a quality tier; it looks up the resolution, swaps width and height if you asked for Portrait, and returns four outputs: width (INT), height (INT), megapixels (FLOAT), and description (STRING). That's it - no API calls, no models to download, no dependencies beyond the Python standard library. The description output is the quiet winner here: wire it to a text display node and your workflow tells you at a glance what size you're about to generate.
The inputs that matter
- ratio - Square (1:1), Classic (4:3), Cinematic (16:9), Ultrawide (21:9), or Custom.
- orientation - Landscape or Portrait. Portrait just swaps the dimensions, which is why the preset table stays half the size it could be.
- quality - Low / Medium / High / Ultra, nominally 0.5 / 1 / 2 / 4 megapixels.
- custom_width / custom_height (optional) - only used when ratio is Custom, clamped to 64–2048.
- force_multiple_of_16 (optional, default on) - rounds Custom dimensions to a multiple of 16.
Wire width and height into Empty Latent Image, done. megapixels and description are informational.
The honest caveats
Two things this node won't tell you. First, the quality labels are nominal tiers, not promises - Square "Low" is actually 0.26 MP, and Classic "Medium" is 0.79 MP. Trust the megapixels output, not the label. Second, the multiple-of-16 claim only applies in Custom mode. The preset table has one bad apple: Cinematic 16:9 at High gives 1920×1080, and 1080 isn't divisible by 16, let alone the 64 that Flux demands. Pick that combo on a Flux workflow and you'll hit a divisibility error. Swap to Medium (1280×720) or use Custom.
Also remember the resolution lore: these presets are tuned around the 1024-era (SDXL and friends), and the Ultra 4 MP tier is way past SDXL's native territory. The community consensus is generate small and upscale, not crank the sampler to 4 MP and pray. And for 16:9 on SDXL, people generate at the closest trained ratio (7:4) and crop rather than going exact 16:9. The node hands you exact 16:9 dims; that's on you to know.
Install
ComfyUI Manager → search "Standard Resolution Presets", or clone it manually:
cd ComfyUI/custom_nodes
git clone https://github.com/vimal-v-2006/standard-resolution-presets-comfyui-custom-node
Then restart ComfyUI. No requirements.txt, no models, no torch extensions - it's about as dependency-free as a custom node gets, which in the current dependency-hell climate is worth something.
Troubleshooting
- Node won't show in search - restart ComfyUI after installing, and check the Manager's "Custom Nodes" tab for a failed-install entry.
- Flux errors on a preset - the 1080 problem above; pick a different tier or Custom.
- Workflow you downloaded says a node is missing - this is usually someone else's workflow that uses this pack; install it via Manager and the graph fills in.
It won't change your life, but it'll stop you typing "1024x1024" for the ten-thousandth time. Sometimes that's enough.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| ratio | COMBO | 5 options: Square - 1:1, Classic - 4:3, Cinematic - 16:9, Ultrawide - 21:9, Custom | |
| orientation | COMBO | 2 options: Landscape, Portrait | |
| quality | COMBO | 4 options: Low (0.5 MP), Medium (1 MP), High (2 MP), Ultra (4 MP) | |
| custom_widthopt | INT | 102464–2048 | — |
| custom_heightopt | INT | 102464–2048 | — |
| force_multiple_of_16opt | BOOLEAN | true | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| width | INT | — |
| height | INT | — |
| megapixels | FLOAT | — |
| description | STRING | — |