Nodes/PG Nodes/Scheduler Select
ComfyUI Node

Scheduler Select

The scheduler dropdown that hands over a real SCHEDULER object

By GizmoR13·Created 11 months ago·Updated 11 months ago· 16
Scheduler Select
    • scheduler
    scheduler_name

    Scheduler Select is the quiet sibling of the pack's Sampler Select: one dropdown over every scheduler ComfyUI knows - normal, karras, exponential, ddim_uniform, sgm_uniform, beta, simple, and friends - and a real SCHEDULER object out. You feed it into an advanced sampler that accepts a scheduler input, and the schedule shape is decided in one tidy place.

    People constantly conflate samplers and schedulers, so let's get it straight because it decides whether this node matters to you. The sampler is the algorithm that removes noise each step. The scheduler decides how much noise gets removed at each step - the shape of the trajectory. A linear schedule removes equal amounts every step; Karras concentrates denoising effort in the middle of the run, which is why "DPM++ 2M Karras" became the default combo for SD-era models.

    How it works

    Same pattern as every PG selector. The dropdown materializes at import from comfy.samplers.SCHEDULER_NAMES (falling back to KSampler.SCHEDULERS), so it always mirrors your ComfyUI version. Pick one and it builds the scheduler object via ComfyUI's scheduler_object() and returns it on the scheduler output.

    One thing worth internalizing, because it's the source of half the "my images look wrong" threads: the "right" scheduler depends on the model family, not taste. On classic SD 1.5/SDXL and their SDXL-based fine-tunes (Illustrious, NoobAI, Pony), Karras is a correction and usually helps. On flow-matching models like Flux and the guidance-distilled crowd, Karras can actively distort a straight trajectory - those want their native schedules. If you're on a modern model and the pack's own master workflows (SD/FLUX/SD3) ship a specific schedule, trust that default before you start clicking.

    The input and output

    • scheduler_name - dropdown over the 9 standard schedules (plus any your ComfyUI build adds).
    • Output: scheduler (type SCHEDULER).

    Pair it with Sampler Select and you've replaced two buried widget choices with two visible dropdowns.

    Install

    Ships with PG Nodes:

    ComfyUI Manager → search "PG Nodes" → Install → restart
    

    Manual: clone https://github.com/GizmoR13/PG-Nodes into custom_nodes (folder named PG-nodes), restart. It's under PG/Select. No dependencies.

    Common issues

    • Schedules missing after update. Restart ComfyUI - the list is built at import.
    • Karras made it worse. Not a bug. On flow-matching models Karras is often wrong; switch to the model's native scheduler. Check what your checkpoint family expects before blaming the node.
    • Need a plain string, not an object? The PgSchedulerSelectCombo ("Scheduler Select name") variant returns the raw name as a string for loaders that want a combo-style value instead of a SCHEDULER object.

    Scheduler selection is the kind of knob beginners change randomly and veterans change rarely. This node just makes the change visible and deliberate - and it's honest about doing nothing else.

    CategoryPG/Select

    Inputs (1)

    NameTypeDefaultDescription
    scheduler_nameCOMBO9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3

    Outputs (1)

    NameTypeDescription
    schedulerSCHEDULER