Nodes/ComfyUI/Apply Style Model
ComfyUI Node Runs on cloud

Apply Style Model

Steal the look without touching the prompt

By Comfy-Org·Created 4 years ago·Updated about an hour ago· 129,800
Apply Style Model
  • conditioning
  • style_model
  • clip_vision_output
  • CONDITIONING
strength1.000
strength_type

Apply Style Model is the node that takes "make it look like this image" and turns it into conditioning math. You hand it a reference image's CLIP vision features and a style model, and it injects that visual style into your existing prompt conditioning. The prompt stays yours; the look comes from somewhere else. It's the core's answer to "style transfer without training a LoRA," and it's how Flux Redux workflows work.

You'll reach for it in two flavors. The old-school one: the T2I-Adapter style models that people used on SD 1.5/SDXL back in 2024 to copy a painting's vibe. The one that still gets used every day: Flux Redux. Redux models (like flux1-redux-dev.safetensors) load through the exact same "Load Style Model" node and apply through this one, which is why you'll see "redux + style lora + depth controlnet" stacked in all those Ghibli-style workflows. Same node, modern model.

How it works

The pipeline is: Load Style Model (style_models folder) → CLIP Vision Encode (reference image) → Apply Style Model (conditioning in). The node runs the reference image's hidden states through the style model to get a style embedding, then fuses it into your text conditioning.

The inputs that matter:

  • conditioning - your text-encoded prompt. The style gets layered on top of it.
  • style_model - from Load Style Model; accepts the old style-embedding adapters or the Redux image encoder.
  • clip_vision_output - the reference image, pre-encoded with CLIP Vision Encode. The image whose style you want.
  • strength - 0 to 10, default 1. How hard the style pulls.
  • strength_type - "multiply" scales the style embedding directly; "attn_bias" routes the style through attention bias instead. Multiply is the intuitive one; attn_bias behaves differently when masks are involved and is what you switch to if the style fights your prompt.

One output, a CONDITIONING, feeding your KSampler's positive (and usually not the negative).

Where people get burned

Missing the CLIP vision model. The most common failure is wiring Apply Style Model without a CLIP Vision Encode on a reference image - the node will error or silently do nothing. You need clip-vit-large-patch14 (or the matching vision model for your style file) loaded.

Wrong style model file. The node errors with "invalid style model" if the file isn't a style-embedding adapter or a Redux encoder. If you downloaded something from a random HF repo and it fails, that's why. Redux files go in models/style_models/ alongside the classic adapters.

Strength fights. At strength 1 a strong style model can overwhelm the prompt entirely - you get the style but none of your content. Start at 0.4–0.6 for Redux if the image matters, and work up. And if style + text are in conflict, attn_bias often resolves it where multiply can't.

It ships with ComfyUI core; nothing to install, just the model files. If someone tells you style transfer needs a custom node pack, they're talking about IP-Adapter - a different mechanism for a similar goal. This is the built-in.

Categorymodel/conditioning

Inputs (5)

NameTypeDefaultDescription
conditioningCONDITIONING
style_modelSTYLE_MODEL
clip_vision_outputCLIP_VISION_OUTPUT
strengthFLOAT1.0000–10
strength_typeCOMBO2 options: multiply, attn_bias

Outputs (1)

NameTypeDescription
CONDITIONINGCONDITIONING