Detail Daemon Sampler
The detail knob for Flux and Z-Image
- sampler
- SAMPLER
Your Flux or Z-Image render comes out soft. Faces look a little plasticky, the background is drowning in bokeh, and the fine texture you wanted just isn't there. On an old SD 1.5 or SDXL workflow you'd nudge CFG up a bit and get more bite. On modern distilled models you can't - CFG is pinned at 1 by design, and cranking it just burns the image. That's the gap Detail Daemon Sampler fills. It's a detail slider that doesn't touch your guidance.
What it actually does
This node is a wrapper. You feed it a normal sampler and it hands you back a modified one that injects the same amount of noise at each step but removes less of it. That leftover noise is what reads as detail - more texture in skin and fabric, sharper edges, less of that AI wax-museum smoothness. Crucially it does this by adjusting the sigma passed to the model while the rest of sampling stays exactly the same, so it's not a post-process filter bolted on the end; it's changing what the model sees mid-denoise. It's a ComfyUI port of muerrilla's sd-webui-detail-daemon, with the sampler wiring done by blepping.
The technique caught on for a reason. It shows up across HiDream, Flux, SDXL, Qwen and Z-Image workflows, and the appeal is that it's basically free - no extra model, no meaningful time cost, just a different sigma schedule.
The inputs that matter
There are ten inputs but you'll touch three:
- detail_amount - the main dial. Positive values add detail, negative values simplify. The right range is very model-dependent: for Flux or Z-Image you'll want roughly
0.1–1.0(sometimes higher), but for SDXL keep it under about0.25or things go crunchy fast. - start and end - when the adjustment applies, as a fraction of the sampling run (0 = first step, 1 = last). Big shapes are set early and fine detail lands late, so the defaults (
start0.2,end0.8) push most of the effect into the middle-to-late steps where detail actually forms. Recommended-ish: start around 0.1–0.5, end around 0.5–0.9.
The rest - bias, exponent, start_offset, end_offset, fade, smooth - shape the curvature and timing of the adjustment curve. Leave them at defaults until you have a reason not to. One worth knowing: cfg_scale_override defaults to 0, which lets the node figure out your CFG automatically; only set it if that autodetect misfires, and then match your workflow's actual CFG.
The single output is a SAMPLER. It wires straight into the sampler input of SamplerCustomAdvanced.
Installing it
Easiest path is ComfyUI Manager: open it, search ComfyUI-Detail-Daemon, install, restart. Manual works fine too:
cd ComfyUI/custom_nodes
git clone https://github.com/Jonseed/ComfyUI-Detail-Daemon
Then restart ComfyUI. There are no model downloads and no heavy dependencies - it's pure sigma math, so the install is instant.
Where people get burned
The big one: this node only works out of the box with the custom sampler nodes like SamplerCustomAdvanced. If you plug its output into a plain KSampler or KSamplerAdvanced, nothing happens, because those don't accept a wrapped SAMPLER the same way. The fix is to build a sampler preset with the BlehSetSamplerPreset node from blepping's ComfyUI-bleh pack and select it in the KSampler - but honestly, if you're doing detail work you probably want to be on a SamplerCustomAdvanced graph anyway.
Second: push detail_amount too far and you don't get "more detail," you get an oversharpened, HDR-looking mess with haloed edges. If it looks fried, back the value down before touching anything else. Third, and easy to miss - adding detail can quietly change your composition. Because you're altering what the model denoises, a strong setting can turn a plain dress floral or shift small elements, which reads as broken prompt-following if you didn't expect it. Use a fixed seed and compare with the node bypassed so you can actually see what it changed, not just that it changed something.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| sampler | SAMPLER | — | |
| detail_amount | FLOAT | 0.10-5–5 | — |
| start | FLOAT | 0.200–1 | — |
| end | FLOAT | 0.800–1 | — |
| bias | FLOAT | 0.500–1 | — |
| exponent | FLOAT | 1.000–10 | — |
| start_offset | FLOAT | 0.00-1–1 | — |
| end_offset | FLOAT | 0.00-1–1 | — |
| fade | FLOAT | 0.000–1 | — |
| smooth | BOOLEAN | true | — |
| cfg_scale_override | FLOAT | 0.00–100 | If set to 0, the sampler will automatically determine the CFG scale (if possible). Set to some other value to override. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SAMPLER | SAMPLER | — |