SDXL Resolution Picker
Stop guessing at SDXL's trained aspect ratios
- sdxl_resolution
SDXL wasn't trained on "any resolution you feel like." It was trained on a fixed grid of aspect ratios bucketed around 1024×1024, and if you generate outside that grid you get the tell-tale SDXL failure mode: stretched limbs, duplicated heads, weird tiling. The fix people eventually learn the hard way is "just pick one of the trained ratios" - and this node is that list, made clickable instead of memorized.
What it is
SDXL Resolution Picker is a single dropdown with 21 choices, everything from tall portrait crops like 704×1408 up through square 1024×1024 and out to wide landscape ratios, defaulting to 1024×1024. It's part of the CrasH Utils pack by chrish-slingshot (reddit handle CrasHthe2nd), and it shipped in the same October 2023 batch as Color Stylizer and Query Local LLM - one of the earlier, less flashy additions before the pack picked up its LoRA loaders and, much later, its browser games.
How it works, and the one thing that trips people up
This node does not output width and height. Its single output, sdxl_resolution, is a custom SDXL_RESOLUTION type - basically a labeled string carrying your chosen ratio. ComfyUI's Empty Latent Image and most samplers want plain INT width/height, not that custom type, so plugging this straight into them won't even let you make the connection. You need its sibling node, SDXL Resolution Split, downstream to turn the pick into actual integers. Think of this node as the menu and Split as the node that hands you the numbers off the menu.
Inputs and outputs
There's exactly one input to worry about: resolution, an enum with all 21 SDXL-trained sizes, default 1024x1024. There's exactly one output: sdxl_resolution (type SDXL_RESOLUTION), which goes into SDXL Resolution Split and nowhere else useful.
Why the list matters
SDXL's official training set of aspect ratios centers on 1024×1024 and fans out from there - 1152×896, 1216×832, 1344×768, 1536×640 and their rotations, plus a bunch of intermediate steps most people never bother memorizing. That's exactly what this dropdown is: the full 21-entry grid in one place instead of a wiki page you have to keep tabbed open. Go off this grid and you're not just "risking lower quality" - you're asking the model to draw something it was never shown at that shape, which is where the double-head, three-arm nonsense comes from.
Installing it
Easiest path is ComfyUI Manager - search "CrasH Utils" and install. Manually, it's:
cd ComfyUI/custom_nodes/
git clone https://github.com/chrish-slingshot/CrasHUtils.git
Restart ComfyUI. No extra dependencies, nothing to download - this is one of the lightest nodes in the whole pack.
Common issues
"I can't connect it to Empty Latent Image." That's expected, not broken - the output type is SDXL_RESOLUTION, not INT. Add SDXL Resolution Split in between and wire its width/height outputs onward instead.
"I picked a resolution and nothing changed." Double check you actually rewired the latent's width/height after adding the Split node - it's an easy step to add and then forget to actually connect.
"Do I need this for Flux or SD 1.5?" No - this list is specifically SDXL's trained grid. Flux tolerates a much wider range of resolutions (as long as it's divisible by 64), and SD 1.5's native size is 512×512, not 1024. Using this node's list on a non-SDXL checkpoint won't help and might actively hurt if the model wasn't trained on those particular ratios.
"Which one should I actually pick?" Square 1024×1024 is the safest default for anything without a strong preferred orientation. For portraits go with something like 832×1216 or 896×1152; for landscape, flip those numbers. If you need a specific ratio like 16:9, pick the closest trained one and crop afterward rather than trying to force an off-grid size.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| resolution | COMBO | 1024x1024 | 21 options: 704x1408, 704x1344, 768x1344, 768x1280, 832x1216, 832x1152, +15 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| sdxl_resolution | SDXL_RESOLUTION | — |