How to Group in ComfyUI: Frames, Subgraphs, and Clean Workflows
Group nodes in ComfyUI with frames, use subgraphs for reusable groups, and avoid losing workflow clarity as your canvas grows.
To group nodes in ComfyUI, select the nodes and press Ctrl+G on Windows/Linux or Cmd+G on macOS.
That creates a frame around the selected nodes. Frames are for visual organization. If you want a reusable node-like group, use a Subgraph instead.
Quick Answer
| Goal | Use | Shortcut or Action |
|---|---|---|
| Organize a messy canvas | Frame | Select nodes, press Ctrl+G |
| Move several nodes together | Multi-select or frame | Drag selected nodes or the frame |
| Reuse a group as one node | Subgraph | Select nodes, click the subgraph icon |
| Hide implementation details | Subgraph | Expose only needed inputs and outputs |
| Share a reusable block | Subgraph Blueprint | Publish from the subgraph tools |
Step 1: Select the Nodes
Use one of these methods:
- drag a selection box around the nodes
- hold
Ctrland click each node on Windows/Linux - hold
Cmdand click each node on macOS - use
Shiftclick to add nodes to the current selection
Make sure you select the full set of nodes that belong together, not just the final output node.
Step 2: Press Ctrl+G
After selecting the nodes, press:
Ctrl+GOn macOS:
Cmd+GComfyUI adds a frame to the selected nodes. In the official shortcut list, this action is described as adding a frame to selected nodes.
Step 3: Rename the Frame
Give the frame a job-based name, not a vague label.
Good frame names:
Prompt EncodingFace DetailerControlNet PoseUpscale PassVideo Frames
Weak frame names:
Group 1StuffTestNodes
Naming frames well matters because large ComfyUI workflows become hard to debug when every section looks the same.
Step 4: Use Frames for Visual Organization
Frames are best when you want to:
- label a section of a workflow
- keep prompt, sampler, ControlNet, upscale, and save nodes separated
- explain a shared workflow to another person
- move a visual block without turning it into a reusable component
Frames do not turn several nodes into one new node. They are an organization layer on the canvas.
When to Use a Subgraph Instead
Use a Subgraph when you want the group to behave more like a reusable component.
Subgraphs are better for:
- repeated blocks used in several workflows
- complex node chains you want to collapse into one node
- exposing only a few inputs instead of showing every internal connection
- building a workflow library for a team
The official ComfyUI Subgraph guide says the feature requires frontend version 1.24.3 or later.
How to Create a Subgraph
- Select the nodes you want to group.
- Click the subgraph icon in the selection toolbar.
- Let ComfyUI create the subgraph from the selected inputs and outputs.
- Open the subgraph to rename, clean up, and expose the right parameters.
- Save the workflow.
After that, the subgraph works like a higher-level node. You can edit its internals when needed, but the parent workflow stays cleaner.
Frames vs Subgraphs
| Feature | Frame | Subgraph |
|---|---|---|
| Fast visual grouping | Yes | No |
| Turns nodes into a single component | No | Yes |
| Good for beginners | Yes | Sometimes |
| Good for reusable workflow blocks | Limited | Yes |
| Can expose selected inputs and outputs | No | Yes |
| Best use case | Organizing the canvas | Packaging logic |
If you are new to ComfyUI, start with frames. Move to subgraphs when a section becomes stable and reusable.
Troubleshooting
Ctrl+G does nothing
Check that nodes are selected first. If the shortcut was customized, open ComfyUI settings and check the Keybinding section.
I grouped nodes but they did not become one node
That is expected. Ctrl+G creates a frame. Use a Subgraph if you want a reusable node-like group.
The frame is too small
Resize it from the frame edge or corner, then move the nodes inside it. Leave extra space so new nodes can be added later.
Connections became hard to follow
Split the frame into smaller sections. A useful frame usually explains one job: prompt, loader, sampler, ControlNet, detailer, upscale, save, or export.
I want to share a clean workflow
Use frames for readability, then save the workflow JSON. If the recipient needs reusable blocks, use subgraphs and test that all exposed inputs and outputs still work.
Workflow Organization Pattern
For a text-to-image workflow, a clean canvas often looks like this:
| Section | Nodes |
|---|---|
| Model Loading | checkpoint, VAE, LoRA |
| Prompt Encoding | positive and negative CLIP text encode |
| Latent Setup | empty latent image or image input |
| Sampling | KSampler and scheduler-related nodes |
| Decode and Preview | VAE decode and preview image |
| Save | save image or custom output nodes |
That structure makes troubleshooting easier because you can tell which section failed without reading every node.
How Wonderful Launcher Helps
Wonderful Launcher does not replace ComfyUI frames or subgraphs. It helps with the environment around the workflow:
- keep separate environments for stable and experimental workflows
- preserve working workflows before installing risky custom nodes
- collect logs when a workflow section fails after plugin updates
- avoid rebuilding a good setup just because one workflow got messy
For saving and backing up grouped workflows, see Save Workflow in ComfyUI.
Related Guides
- ComfyUI Interface Guide
- Save Workflow in ComfyUI
- Install Custom Nodes
- ComfyUI Common Issues and Fast Fixes
Wonderful Launcher 文档