π Size Picker (nhk)
95 Resolution Presets You Didn't Know You Needed β Size Picker (nhk)
- latent
- width
- height
- info
Size Picker (nhk) is a dropdown of 95 model-optimized resolutions that spits out a ready-to-use empty latent. It exists because "what size should I generate at" is a genuinely fiddly question: pick a resolution that isn't a multiple of 32 and your latents come back wrong, and the sweet spot changes per model. Flux, SDXL, Qwen, and the ZIT/Seedream family all want slightly different frame sizes. This node puts the cheat sheet in a dropdown.
The pragmatic pitch: instead of typing 1280x768 into an Empty Latent node and hoping, you pick 1280x768 (3:2 Flux) and move on. It's the kind of convenience that looks trivial until you've manually gone hunting for a model's recommended size three times in one evening.
How it works
The preset list is a hand-curated table of resolutions, every one a multiple of 32, grouped by aspect ratio - square, 3:2, 4:3, 16:9, 21:9, 2.39:1 cinema, and a couple of ultrawides. The label encodes the ratio and the model family it's tuned for (1344x768 (16:9 SDXL), 2016x864 (21:9 Flux/ZIT), 1472x1140 (4:3 Qwen), etc.), so the "Flux" or "Qwen" tag tells you which model that size was picked for.
At execution it creates an empty latent of the chosen width and height on the right device (it uses ComfyUI's intermediate_device, which is sensible for a node that allocates memory), plus a batch of however many batch_size latents you asked for. You then feed that latent straight into a KSampler. Because a latent is just a tensor, the same node works regardless of which checkpoint you end up sampling with - the preset is a starting point, not a contract.
Inputs and outputs
resolution- the preset dropdown. Default1024x1024 (1:1 Flux).batch_size- 1 to 64, default 1. Number of empty latent images to create.width_override/height_override- set either to a nonzero value (stepped by 64, up to 16384) to bypass the preset. 0 means "use the preset."
Outputs:
latent- the empty LATENT, wire it into your sampler's conditioning/latent input.widthandheight- the resolved integers, handy if you need to feed the actual dimensions into another node (a resize, a caption, a LoRA that cares).info- a STRING with metadata about the chosen preset.
Installing it
Standard pack install:
cd ComfyUI/custom_nodes && git clone https://github.com/Enashka/ComfyUI-nhknodes
restart, or "NHK Nodes" from ComfyUI Manager. No models, no keys.
Where it pays off (and where it won't)
It's a time-saver, not a magic bullet. If you're already happy with an Empty Latent node and your workflow's resolution never changes, this adds a dropdown you'll ignore. The value shows up when you're comparing models or aspect ratios and want sane defaults without googling "Qwen 2.5 recommended resolution" for the fourth time. One honest caveat: "model-optimized" here means "author-curated," and the author's tuning isn't the same as a model's documented native resolution - treat the preset as a great default, not gospel. And remember, you can always override with the width/height fields if a specific output target (like 1024-wide for upload) matters more than what the preset suggests.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| resolution | COMBO | 1024x1024 (1:1 Flux) | Choose from model-optimized resolution presets (all multiples of 32) |
| batch_size | INT | 11β64 | Number of latent images to generate in batch |
| width_override | INT | 00β16384 | Override width (0 = use preset) |
| height_override | INT | 00β16384 | Override height (0 = use preset) |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| latent | LATENT | β |
| width | INT | β |
| height | INT | β |
| info | STRING | β |