Int Literal (Image Saver)
A plain integer source for steps and other whole-number inputs
- INT
A node that outputs a single integer, 0 to 1,000,000. Yes, that's the whole thing. It ships with the Image Saver pack for the same reason all the "literal" nodes do: it lets you set a whole-number value once and wire it into more than one place, so the number your sampler uses and the number your metadata records are literally the same number. The most common use is steps - feed it to both the KSampler and the Image Saver so the recorded step count can't drift from reality.
How it works
Nothing to it. You set an integer; it comes out as an INT. The value flows to wherever you connect it. Its usefulness is entirely about being a shared source - one node driving two or more inputs - rather than about doing any computation.
The inputs and outputs that matter
- int - a whole number from 0 to 1,000,000.
The single output is an INT. Route it to a sampler's steps (and to a saver's steps field if you're recording metadata), or anywhere else a workflow wants a fixed integer.
On steps specifically: more isn't automatically better. SD 1.5 and SDXL land in a good place around 20–30 steps with a decent sampler, and past ~40 you're usually spending compute for no visible gain. Distilled and "Turbo/Lightning" models go much lower - some want 4–8. Set this to whatever your model's docs suggest, wire it to both the sampler and the saver, and the recorded step count will match what actually ran.
Installing it
ComfyUI Manager: search ComfyUI Image Saver, install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/alexopus/ComfyUI-Image-Saver
cd ComfyUI-Image-Saver
pip install -r requirements.txt
Restart, hard-refresh. No downloads.
Where people get tripped up
Don't overthink which "number" node to grab. This pack ships a few, and they overlap: Int Literal for general whole numbers, Width/Height Literal for dimensions (it steps in multiples of 8, which is what latent sizes want), and Seed Generator when the integer is specifically a seed and you want an offset. For steps, this one's fine.
The bigger picture point: an Int Literal is only worth wiring in when you actually benefit from a single shared source - feeding steps to both a sampler and a saver, or the same count to several nodes. If a value lives in exactly one place, just type it into that node's widget; a separate literal node is pure clutter there. And if you're already routing seed, steps, cfg, sampler and scheduler for metadata, the Input Parameters node bundles all of them and is usually the tidier choice - a single node instead of five loose literals scattered around the canvas.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| int | INT | 00–1000000 | integer number |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| INT | INT | int (INT) |