CLIP Text Encode FLUX Merged (CRT)
One prompt box instead of two
- clip
- CONDITIONING
Flux runs two text encoders at once - CLIP-L and T5-XXL - and ComfyUI's stock Flux text-encode node gives you a separate box for each, because in theory you can send different text to each one (CLIP for "soup of words" tag-style prompting, T5 for full natural-language sentences). In practice, most people writing most prompts just want to type one thing and have it go to both. That's what this node does: one prompt field, fed to both encoders, plus the guidance slider Flux needs since it doesn't do classifier-free guidance the normal way.
Why the two-encoder split exists (and why merging it is fine most of the time)
Flux's dual encoders exist because CLIP and T5 do genuinely different things - CLIP finds image associations from short phrases, T5 parses full sentences and complex descriptions, which is a lot of why Flux handles long, specific prompts so much better than SDXL did. Splitting the two prompt fields is a real technique some advanced users lean on. But it's also one more thing to manage, and for the overwhelming majority of prompts, sending the same text to both encoders produces exactly what you'd expect. This node is the "just write the prompt" version of Flux text encoding, and it's a reasonable default unless you already know you want the split.
The inputs and output that matter
clip(CLIP) - from your Flux dual-CLIP loader (T5XXL + CLIP-L).prompt(STRING, multiline) - the node's own tooltip says it plainly: "Text prompt for both CLIP-L and T5XXL encoders." One box, sent to both.guidance(FLOAT, default 3.5) - Flux's guidance scale. 3.5 is the community's long-standing default, though it's worth knowing it's controversial: a lot of experienced Flux users run it lower, around 1.8-2.0, specifically because high guidance is a big contributor to Flux's "same generic face" problem - the community calls it Fluxmaxxing. If your outputs are coming out looking oddly homogenous or over-smoothed, guidance is one of the first things to try lowering, and pairing it with a higher resolution (1500px+) can offset some of the prompt-adherence you lose by going lower.
Output is a single CONDITIONING, which goes straight into your KSampler's positive slot - Flux Dev and Schnell both skip a real negative prompt due to guidance distillation, so this is typically the only conditioning node you need per generation.
How to install it
Part of CRT-Nodes. Through ComfyUI Manager: search CRT-Nodes, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/PGCRT/CRT-Nodes.git
pip install -r CRT-Nodes/requirements.txt
then restart. As with every CRT-Nodes install, you're pulling in the pack's full dependency list for the whole suite, not just this one conditioning node.
Common issues & troubleshooting
Faces all look the same, or skin looks plastic-y. This is a well-documented Flux thing, not a bug in this node - try dropping guidance toward 2.0, avoid generic beautifying words in the prompt, and vary ethnicity/styling/pose explicitly in the text rather than leaving it to the model's defaults.
You need different text for CLIP vs T5. This node doesn't support that by design - its whole point is merging the two fields into one. If you need the split (some advanced prompting techniques and certain fine-tunes benefit from it), use the stock two-field Flux text-encode node instead.
Wrong sampler settings make everything look muddy regardless of the prompt. Flux wants Euler with a Simple or Normal scheduler; the wrong scheduler produces blurred, muddy output that has nothing to do with what you typed here.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| prompt | STRING | Text prompt for both CLIP-L and T5XXL encoders | |
| guidance | FLOAT | 3.50–100 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |