Nodes/ComfyUI/StableCascade_StageB_Conditioning
ComfyUI Node Runs on cloud

StableCascade_StageB_Conditioning

The bridge between Stable Cascade's two sampling stages

By Comfy-Org·Created 4 years ago·Updated about an hour ago· 129,964
StableCascade_StageB_Conditioning
  • conditioning
  • stage_c
  • CONDITIONING

Stable Cascade is a weird one to stumble onto in 2026 because the model itself is a relic - launched early 2024, technically interesting, then run over by the SD3 announcement and forgotten. But its ComfyUI workflow is still worth understanding because it's the cleanest example of a two-stage cascade architecture, and this node is the seam between the stages.

The model is Würstchen-based, which means generation doesn't happen in one pass. Stage C is the big text-to-latent model: it reads your prompt and produces a heavily compressed latent. Stage B then takes that latent and upscales it in latent space - same prompt, smaller model, more detail. Stage A (the VAE decoder) finally turns the Stage B output into pixels. This node is Stage B's conditioning: it takes the Stage C latent you already sampled and attaches it to the prompt conditioning so Stage B knows exactly what it's refining.

Inputs: conditioning (your text conditioning for Stage B - same prompt you used in Stage C) and stage_c (the sampled latent that came out of the Stage C sampler). Output: a single CONDITIONING that now carries stable_cascade_prior - the node just copies the stage_c samples into the conditioning dict. That's the mechanism; it's a handoff, not a transformation.

The workflow shape, for the unfamiliar: StableCascade_StageC_Conditioning (or the plain text encode) → Stage C sampler → StableCascade_StageB_Conditioning (with that node's latent in stage_c) → Stage B sampler → VAEDecode via the Stage A VAE. People new to Cascade routinely try to run Stage B with the pixel-space result of Stage A and get nonsense, because Stage B expects the latent-to-latent refinement, not the final decode.

It's core, in comfy_extras/nodes_stable_cascade.py - no install. If you're running it, you already have the checkpoints (the stable_cascade_stage_c and stable_cascade_stage_b models, plus the Stage A VAE) and the corresponding empty-latent nodes for both stages.

The classic mistakes are all about matching the two stages. The stage_c latent must be a Stage C latent, not Stage A's output; and the conditioning you pass in should be encoded for Stage B's text encoder, not the SD-style one. Beyond that, expect the usual Cascade quirks the community documented back in the day: strong prompt adherence, but you pay for it in steps, and the aesthetic takes some coaxing. If you're here, you probably found a preserved template from the 2024 wave - this node is the part that keeps the two samplers in sync, so wire it correctly and the rest just works.

Categorymodel/conditioning/stable cascade

Inputs (2)

NameTypeDefaultDescription
conditioningCONDITIONING
stage_cLATENT

Outputs (1)

NameTypeDescription
CONDITIONINGCONDITIONING