Nodes/ComfyUI/SkipLayerGuidanceDiTSimple
ComfyUI Node Runs on cloud

SkipLayerGuidanceDiTSimple

The same detail trick at half the price

By Comfy-Org·Created 4 years ago·Updated about an hour ago· 129,964
SkipLayerGuidanceDiTSimple
  • model
  • MODEL
double_layers7, 8, 9
single_layers7, 8, 9
start_percent0.000
end_percent1.000

The regular SkipLayerGuidanceDiT node buys sharper detail by running a whole extra model pass during the early steps - which is its one real downside. SkipLayerGuidanceDiTSimple is the same trick, restructured: instead of a separate pass, it modifies the uncond pass it's already running. The negative prediction gets computed with your chosen transformer layers skipped, so it becomes a "skip-layer negative" - and the detail boost costs almost nothing extra. Same family, half the price.

It shipped in ComfyUI core alongside its bigger sibling in July 2025, flagged experimental like the rest of the guidance family. If you're running a DiT with real CFG - which means SD3-style models, Wan at CFG 3+, and de-distilled Flux - and you want SLG's structure boost without paying double, this is the one to reach for. The full DiT node is for when you want the boost on models that don't run a separate uncond pass (like stock Flux with guidance).

How it works

The node hooks the sampler's cond-batch calculation. When the current sigma is inside your window, it splits the normal cond/uncond computation: the cond pass runs normally, and the uncond pass runs with the selected double and single blocks patched out to a no-op. The CFG formula then subtracts this deliberately-degraded negative from the positive - and because the negative is less detailed than a normal one, the difference the CFG extrapolates from carries a structural-detail signal. It's perturbed-attention guidance (PAG) territory, via skipped layers.

The source is explicit about the one condition: if there is no uncond (uncond is None), it uses the plain computation and the node does nothing. It's the cheap version because it leans on a pass that already exists.

Inputs and what to set

  • model - the MODEL to patch.
  • double_layers / single_layers - comma-separated block indices, default 7, 8, 9. Same tuning as the full node: pick the layers where your model settles detail.
  • start_percent / end_percent - default 0.0 / 1.0. Unlike the full node, this one defaults to the entire sampling range, so it's active from the first step to the last. That's fine for quality but it does mean the skipped-layer uncond runs everywhere; narrow the window if you want it only in the early structural phase.

There's deliberately no scale knob - you tune intensity by choosing which layers to skip and how long the window is. Output is the patched MODEL. Ships with ComfyUI core.

Common issues & troubleshooting

The big one: on CFG-1 models it's a no-op. No uncond pass, nothing to modify. This is the trap with this node - it looks like it should work on anything, and on Flux with guidance (or any Turbo/Schnell checkpoint) it silently does nothing. Check that your model actually runs a negative before you spend time tuning layers.

"Simple" means fewer controls, not weaker results. If you can't find a scale input, that's by design. The trade is real, though: you can't push the effect as hard as the full node can, because you're limited to what skipping layers in the uncond pass produces.

Experimental, defaults for Flux. As with the whole family, is_experimental applies, and 7, 8, 9 assumes a Flux-scale block layout. On smaller DiTs, verify the layer numbers against your model before assuming the node is broken.

Categoryadvanced/guidance

Inputs (5)

NameTypeDefaultDescription
modelMODEL
double_layersSTRING7, 8, 9
single_layersSTRING7, 8, 9
start_percentFLOAT0.0000–1
end_percentFLOAT1.0000–1

Outputs (1)

NameTypeDescription
MODELMODEL