Nodes/Sage Utils/Quick Resolution Picker
ComfyUI Node

Quick Resolution Picker

Resolution from aspect ratio, without the calculator

By arcum42·Created 2 years ago·Updated 28 days ago· 33
Quick Resolution Picker
    • width
    • height
    aspect_ratio1:1
    orientationLandscape
    multiplier1.0

    Resolution math is the worst kind of math: it's easy, and you still do it wrong. "I want a 9:16 portrait at 1.25x" means multiplying and rounding and then remembering that SDXL latents want multiples of 64 - and if you hand the model 818×1454 instead of 832×1472, you get a suboptimal latent and a subtly worse image.

    Quick Resolution Picker replaces that arithmetic with three dropdowns/sliders: aspect ratio, orientation, multiplier. It outputs exact width and height integers, snapped to the 64-pixel grid latent models actually want.

    How it works

    Three inputs:

    • aspect_ratio - a dropdown with the useful presets: 1:1, 5:12, 9:16, 10:16, 5:7, 2:3, 3:4, 4:7, 7:9, 8:10, 13:19. These cover the standard SDXL/current-model canvas shapes.
    • orientation - Portrait or Landscape, defaulting to Landscape.
    • multiplier - 0.1 to 10, default 1.0, step 0.1. Scales the base resolution.

    Under the hood each ratio maps to a base (width, height) pair - for example 9:16 is (720, 1280). Depending on orientation the node swaps the axes, multiplies by your multiplier, and rounds both to a multiple of 64 (round(w * multiplier / 64) * 64). So 9:16 × Portrait × 1.0 gives 720×1280; 9:16 × Landscape gives 1280×720; multiplier 1.5 gives you 1088×1920, cleanly on the grid.

    The outputs are width and height as INTs, ready to plug into an Empty Latent (or Sage's Empty Latent Passthrough) and any sampler that wants explicit dimensions.

    Why the 64 matters

    Latent-space models operate on 8× downsampled tensors, so dimensions that aren't multiples of 64 can't tile evenly - you get padded/truncated latents and, depending on the model, visible artifacts or outright errors. This node exists to make "wrong resolution" a non-option. It's the kind of thing you stop noticing until you feed a hand-typed 1229×689 into an Empty Latent and wonder why the output looks off.

    Installation

    Sage Utils install, same as the rest of the pack. ComfyUI Manager, search "Sage Utils", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/arcum42/ComfyUI_SageUtils
    cd ComfyUI_SageUtils
    pip install -r requirements.txt
    

    Restart ComfyUI. Only dependency is dynamicprompts; no models to download.

    The honest take

    This is a convenience node, not a magic one - the ratio list is fixed, so if you live in an unusual aspect like 21:9 you'll be back to the calculator. But for the standard canvas shapes, it beats a spreadsheet, and the 64-multiple rounding alone is worth having in the graph. One gotcha to note: 1:1 is 1024×1024 at multiplier 1.0, which is the SDXL/current-model sweet spot; if you're on an older SD 1.5 workflow, halve the multiplier and you're at 512×512 territory.

    CategorySage Utils/image/res

    Inputs (3)

    NameTypeDefaultDescription
    aspect_ratioCOMBO1:1The aspect ratio.
    orientationCOMBOLandscapeThe orientation of the image.
    multiplierFLOAT1.00.1–10The multiplier for the base resolution.

    Outputs (2)

    NameTypeDescription
    widthINTThe selected width.
    heightINTThe selected height.