When adjusting parameters in AI image generation, you’ll encounter a setting called “sampler.” With many options like Euler, DPM++, and LCM, it can be hard to know which to choose.
This article organizes the mechanisms and characteristics of the major samplers and explains how to choose based on your use case.
What Is a Sampler?
Stable Diffusion generates the final image by gradually removing noise from a random noise image. The algorithm that governs this repeated denoising process is the sampler.
Different samplers use different methods for removing noise and progressing through calculations. As a result, even with the same prompt and seed, different samplers produce images with different texture, detail, and convergence speed.
Classification and Characteristics of Major Samplers
Euler Family (Euler / Euler a)
The most fundamental samplers. Based on the first-order Euler method — computationally simple with fast per-step processing.
- Euler: Deterministic. Returns the same result for the same parameters
- Euler a (Euler Ancestral): Re-injects noise at each step, so changing step count significantly changes the image. High diversity, but somewhat lower reproducibility
DPM++ Family (DPM++ 2M / DPM++ 2M Karras / DPM++ SDE Karras)
A group of samplers based on DPM-Solver++, widely used in the SD1.5 to SDXL era. Known for producing high-quality results even with fewer steps.
- DPM++ 2M: Second-order multi-step method. Good balance of stability and quality
- DPM++ 2M Karras: A classic combination with the Karras scheduler. Finer denoising in the later steps tends to alter texture
- DPM++ SDE Karras: Uses stochastic differential equations (SDE). Noise re-injection creates higher diversity and more varied outputs, but generation speed is somewhat slower
LCM (Latent Consistency Model)
Strictly not a sampler but a distillation-based inference method — included here because it’s selected as a sampler in UI tools.
Uses distillation technology to generate images in just 4–8 steps. A massive reduction from the 20–30 steps typical samplers require.
- Extremely fast generation
- Ideal for real-time preview and prompt iteration
- May require compatible LoRA or models
DDIM (Denoising Diffusion Implicit Models)
A deterministic sampler that has been around since early days. Produces the same result with the same settings every time — useful when reproducibility is a priority.
- Changing step count doesn’t drastically break image composition
- Tends to converge more slowly at the same step count compared to DPM++
UniPC (Unified Predictor-Corrector)
A sampler integrating predictor-corrector methods, achieving high-quality output even at low step counts (10–15).
- High stability at low step counts
Sampler Comparison Table
| Sampler | Speed | Quality | Recommended Steps | Reproducibility | Notes |
|---|---|---|---|---|---|
| Euler | Fast | Standard | 15–20 | High | Simple and easy to use |
| Euler a | Fast | Standard | 15–25 | Low | Produces varied results |
| DPM++ 2M Karras | Moderate | High | 20–30 | High | Current standard |
| DPM++ SDE Karras | Slightly slow | High | 25–40 | Low | Rich texture |
| LCM | Very fast | Standard | 4–8 | High | Specialized for ultra-low steps |
| DDIM | Moderate | Standard | 20–50 | Very high | Deterministic and stable |
| UniPC | Fast | High | 10–15 | High | High quality at low steps |
※ Quality depends heavily on model and prompt — treat as reference values
Scheduler Differences
The scheduler is configured alongside the sampler. The scheduler controls how much noise is removed at each step.
In A1111/Forge, the scheduler is embedded in the sampler name (e.g., DPM++ 2M Karras), while in ComfyUI, the sampler and scheduler are configured separately.
| Scheduler | Characteristics |
|---|---|
| Normal | Removes noise uniformly. Standard behavior |
| Karras | Removes noise aggressively at the start, more finely at the end. Affects fine detail in later stages |
| Exponential | Changes noise level exponentially. Features smooth convergence |
| SGM Uniform | Equally-spaced schedule. May have better compatibility with distilled models |
For non-distilled SD1.5 and SDXL models, the Karras scheduler tends to be preferred. However, the optimal scheduler varies by model. Combination with DPM++ samplers is widely used.
Relationship to Step Count
Step count is the parameter that determines “how many times to repeat denoising.”
- Fewer steps: Faster generation, but details may be rough
- More steps: More detail, but improvement plateaus beyond a certain point. Processing time also increases proportionally
The “minimum steps needed to reach adequate quality” differs by sampler. While LCM is sufficient at 4 steps, DPM++ SDE Karras recommends 25+ steps. Increasing steps beyond what’s needed provides almost no quality improvement, so choosing an appropriate step count for your sampler is important.
Recommended Combinations
General Purpose (When in Doubt)
DPM++ 2M Karras / 20–30 steps
Good balance of quality, speed, and stability — produces consistent results with most models. A reliable go-to setting for beginners and advanced users alike.
Fast Generation
Euler / 15–20 steps or LCM / 4–8 steps
Useful when adjusting prompts or generating large volumes. LCM requires compatible models or LoRA but provides overwhelming speed.
High Quality Priority
DPM++ SDE Karras / 25–40 steps
Suited for when you want to emphasize texture and fine detail. Generation time is longer, but this setting tends to produce more varied texture expression.
Recommended Settings for z-image-turbo
z-image-turbo, the model used on this blog, is a distilled model and behaves differently from standard SD models.
| Parameter | Value |
|---|---|
| Sampler | euler |
| Scheduler | ddim_uniform |
| Steps | 8 |
| CFG | 1.0 |
For distilled models, guidance is embedded within the model itself, so CFG is fixed at 1.0. The model is also optimized for low step counts — increasing steps does not improve quality. When using a distilled model, the best approach is simply to follow the model’s recommended settings.
Summary
Sampler selection directly impacts image generation quality and speed, but there’s no single “correct answer.” Since compatibility with your model also matters, start with DPM++ 2M Karras (20–30 steps) as a baseline and try other samplers as needed.
When using distilled models, just use the model’s recommended settings as-is. Changing the sampler or step count rarely improves results, so it’s more effective to spend your time refining prompts.


