DisableNoise
A noise source that adds nothing
- NOISE
DisableNoise is the smallest honest node in the sampler graph: it has no inputs, and its single output is a NOISE object that generates zero noise. Drop it into the noise input of SamplerCustomAdvanced in place of a seeded RandomNoise, and the sampler simply doesn't inject fresh random noise at the start of the run. It's the "I want to denoise what's already here, not add more randomness" switch, made explicit.
It ships with ComfyUI core (comfy_extras.nodes_custom_sampler). It's been there since the custom-sampler system took shape in 2024 (its search alias is "zero noise," which tells you what it does).
How it works
The custom-sampler graph separates "where does the noise come from" from everything else. A normal run uses RandomNoise with a seed - the sampler starts from pure random noise and denoises it into an image. DisableNoise replaces that with an empty-noise generator: the starting latent is used as-is, and the run becomes a refinement of the input rather than a fresh generation.
That's the whole mechanism. There are no parameters because there's nothing to configure - the output IS the absence of a thing.
When you want this
The cases are real but specific:
- Img2img / refining a latent you already like. If your input latent is already partially denoised - you parked it mid-run, you upscaled in latent space, or you want to clean up an existing latent without changing its identity - you don't want new noise; you want to keep sampling from where it is.
- Low-denoise passes. When the sigmas you feed in already encode the right amount of remaining noise (via a crop or SplitSigmas), adding fresh noise on top double-counts. DisableNoise prevents that.
- Deterministic refinement chains. In a multi-sampler workflow where the second pass should continue the first rather than restart it, this is the node that makes the handoff clean - the KSamplerAdvanced "add_noise: disable" equivalent for the custom-sampler graph.
Where people get burned
- Not understanding what "no noise" does to a txt2img run. From an empty latent, zero noise means the model has almost nothing to work with - you'll get a flat or garbage result. DisableNoise is for existing latents, not for generation from scratch. If you want generation, keep the seeded noise.
- Expecting it to mute the sampler's internal stochasticity. It only controls the initial noise. An ancestral sampler or an SDE sampler like SamplerER_SDE still injects noise during the run based on its own
s_noiseandeta- those knobs are separate from this node. - Confusing it with "no VAE noise." It has nothing to do with latent-channel init; it's purely the diffusion noise source.
If you've ever set add_noise to disable on KSampler Advanced and wished the custom-sampler graph had the same switch, this is that switch.
Inputs (0)
No inputs
Outputs (1)
| Name | Type | Description |
|---|---|---|
| NOISE | NOISE | — |