Skip to main content

ComfyUI Sampler & Scheduler Guide

What each sampler and sigma scheduler does, when to use it, and how steps/CFG/denoise interact. Plain-language reference.

Quick answers

Just want a good default? dpmpp_2m + karras, 25-30 steps, CFG 5-7.

Fastest usable result? euler or lcm at 4-8 steps with low CFG (1-2).

Video (LTX/Hunyuan/Wan)? euler_ancestral or res_multistep with the model-recommended steps; keep CFG near 1-3 for distilled checkpoints.

Samplers

euler

The simplest solver: one correction per step. Deterministic - same seed, same image.

Use when: Fast drafts, video, and any time you want reproducibility. Excellent quality per step at 20-30 steps.

euler_ancestral

Euler plus fresh noise injected each step. Results vary slightly run to run even with a fixed seed.

Use when: Richer textures, video models (LTX, Hunyuan), and when deterministic looks too sterile.

heun

Second-order solver: two evaluations per step, roughly halves the steps needed for equal quality.

Use when: Quality-focused stills when compute is fine; use ~2/3 of your usual steps.

dpm_2 / dpm_2_ancestral

Second-order multistep family. Better convergence than euler, similar ancestral trade-off.

Use when: Still images where detail matters.

dpmpp_2m

Probability-flow predictor-corrector, multistep. The community default: fast, stable, deterministic.

Use when: Everyday default for SD1.5/SDXL with karras scheduler at 25-30 steps.

dpmpp_2m_sde

dpmpp_2m with stochastic (SDE) corrections. Grain and texture appear earlier in the schedule.

Use when: Photoreal skin, fabric, organic detail; slightly slower, non-reproducible.

dpmpp_3m_sde

Third-order SDE variant. Even smoother convergence, best at high step counts.

Use when: Final quality renders at 30-40 steps.

ddim

The classic deterministic solver from the original DDIM paper. Conservative and predictable.

Use when: Older SD1.5 workflows, training-style pipelines.

uni_pc

Unified predictor-corrector designed for few-step convergence.

Use when: Low step counts (5-10) on non-LCM models.

lcm

Solver for LCM-distilled models that generate in 2-8 steps at very low CFG.

Use when: LCM LoRA/model combos and real-time previews.

res_multistep

Multistep sampler tuned for video diffusion models.

Use when: LTX and Hunyuan video with their recommended step ranges.

ddpm

The original diffusion sampler with full noise scheduling per step.

Use when: Educational comparisons; rarely the practical choice.

Schedulers (sigma schedules)

normal - Linear spacing across the sigma range. The neutral default.

karras - Exponentially spreads sigmas toward the end of the schedule, spending more steps on fine detail. Best general companion to dpmpp samplers.

exponential - Aggressive decay; concentrates steps early. Good for high-noise-heavy styles and few-step runs.

sgm_uniform - Uniform spacing with the SGM tail; commonly used for video and SDXL turbo variants.

simple - Short, coarse schedule; pairs with turbo/lightning models.

beta - Beta-distributed sigmas; an alternative tail-heavy curve for artistic variance.

vp - Variance-preserving schedule from score-based diffusion papers; research workflows.

How steps, CFG and denoise actually interact

Steps is how many denoising passes the sampler makes. More steps = finer refinement, diminishing returns past the model sweet spot (SD1.5/SDXL: 20-30; distilled models: 4-8).

CFG scales how hard the model steers toward your prompt each step. Too low: ignores the prompt. Too high (8+ on SDXL, 3+ on video models): oversaturated, burnt, rigid. Flux/LTX style models often want CFG 1-3 because they were distilled with guidance baked in.

Denoise (img2img and refiners) is how much of the step budget actually changes the image. 1.0 = full generation, 0.5 = roughly half the schedule runs, keeping composition. Lower denoise needs fewer steps to be effective: effective steps = steps x denoise.

Seed fixes the starting noise. Same seed + same everything else = same image; change seed only to explore variations.

About

Samplers are numerical solvers for the diffusion ODE/SDE - deterministic ones (euler, dpmpp_2m) give reproducible results for a seed; ancestral ones (euler_ancestral, dpmpp_2m_sde) inject noise each step for more varied texture at the cost of exact reproducibility.