# Connect nodes and manage connections

> Connect nodes in Nodespell by dragging between sockets, learn which content types fit, and reroute, reorder, cut or replace connections without breaking the graph.

Source: https://docs.nodespell.com/graph/connections/ · Last updated: 2026-11-10

A connection in Nodespell is a link from one node's output socket to another node's input socket. Connections carry text, images, video, audio or data downstream, so a prompt can feed a model and a model's result can feed an effect. Each input checks what it receives and tells you when the content type does not match.

## Connect two nodes

1. Press on an output socket of the source node. In the default top-to-bottom flow, outputs are on the bottom edge.
2. Drag towards the target node. The connection snaps to the nearest suitable input socket and shows its name.
3. Release to create the connection.

You can also drag from an input socket back to an output. Hover any socket for a moment to see its name, whether it is an input or output, its type, and **Multiple** if it accepts several connections.

To add a node that is already connected, right-click a socket and pick a node from the menu, which only lists nodes that fit that socket. Selecting a node and pressing `Tab` also connects the node you create.

## What can connect to what?

Every socket has a content type and a data type. The content type is what matters day to day.

| Content type | Carries                                                |
| ------------ | ------------------------------------------------------ |
| **Text**     | Prompts, captions and other text                       |
| **Image**    | Still images                                           |
| **Video**    | Video clips                                            |
| **Audio**    | Speech, music and sound                                |
| **3D model** | 3D meshes                                              |
| **Any**      | Whatever is connected; used by general-purpose sockets |

Matching content types connect cleanly. A socket of type **Any**, or a data type of **Inferred**, adapts to what it receives.

If you connect different media types, for example an audio output into a video input, Nodespell still creates the connection but labels it **Expects Video, got Audio** while you drag. Before a run that includes it, a **Check input connections** dialog lists each mismatch; choose **Cancel** to fix it or **Run anyway** if the mismatch is intentional.

## How do single and multiple inputs differ?

| Input kind   | What happens when you connect                                                                 |
| ------------ | --------------------------------------------------------------------------------------------- |
| Single input | Takes one connection. Connecting a new source replaces the old connection.                    |
| Multi-input  | Takes several connections, up to the limit the node sets. The socket info shows **Multiple**. |

A multi-input's connections have an order, which matters for nodes such as reference-image inputs or merges. In Parameters, a multi-input shows its connection count and three ordering buttons:

- **Order By Position**: orders connections by where their source nodes sit on the canvas.
- **Order By Name**: orders them alphabetically by source node name.
- **Reverse**: reverses the current order.

The [Node Browser](https://docs.nodespell.com/graph/add-nodes/) lists each input's minimum and maximum number of connections.

## Move, reroute and replace connections

| To                                             | Do this                                                 |
| ---------------------------------------------- | ------------------------------------------------------- |
| Move one connection to another socket          | Drag the end of the connection line onto the new socket |
| Move all connections on a socket               | Drag the socket itself onto another socket              |
| Reroute a connection through another node      | Drag the middle of the connection onto that node        |
| Insert a node into an existing connection      | Drag the node onto the connection                       |
| Swap the first two inputs of the selected node | `Shift+R`                                               |

Dropping onto an occupied single input replaces whatever was connected there.

## Tidy long connections with Dots

A Dot is a tiny pass-through node that bends a connection or splits it to several targets.

- Press `.` (period) to create a Dot at the pointer. If one node is selected, the Dot is created connected to it.
- Right-click a connection and choose **Add Dot**.
- Hold `Option/Alt` and drag from a connection to pull out a Dot where you release.

Double-click a Dot to open **Edit Dot Text** and label it.

## Disconnect and cut connections

| To                                 | Do this                                                      |
| ---------------------------------- | ------------------------------------------------------------ |
| Remove one connection              | Double-click it, or right-click it and choose **Disconnect** |
| Cut several connections            | Hold `Y` and drag across them, then release                  |
| Pull selected nodes out of a chain | Press `X`, or shake a node while dragging it                 |
| Delete a node but keep the chain   | Select it and press `Backspace` or `Delete`                  |

`X`, shaking and deleting all reconnect the nodes on either side so the rest of the chain keeps flowing. Every change can be undone with `Cmd/Ctrl+Z`.

## Connect an input to a parameter

Many parameters can be driven by a connection instead of a typed value. Drag a connection onto a node; if the node has parameters that can accept it, a **More inputs** target appears. Click it to open **Connect to hidden input**, which lists **Best matches** and **Other eligible parameters**. You can also right-click a parameter in Parameters and choose **Connect as input**. See [Drive a parameter from a connection](https://docs.nodespell.com/graph/parameters/).

## Why is a connection rejected?

When Nodespell cannot create a connection, it leaves the graph as it was. The usual reasons:

| Reason                                                        | What to do                                                                               |
| ------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| The same connection already exists                            | Nothing; the link is already there                                                       |
| The multi-input already has its maximum number of connections | Disconnect one first, or use another node                                                |
| Several sources were dropped on an input that takes one       | Connect one source, or use a multi-input (**Requires multi-input to connect N sources**) |
| The socket no longer exists, for example after a node update  | Reconnect to the node's current sockets                                                  |

Inside a compositor, some sockets accept only compositor-compatible sources. See [Compositing](https://docs.nodespell.com/edit/compositing/).

## Frequently asked questions

### Can I connect an image output to a video input?

Yes, but Nodespell marks it as a mismatch and asks you to confirm with **Run anyway** before running. Most models ignore or misread media of the wrong type, so check the connection first.

### What happens to the old connection when I connect a new one to the same input?

On a single input, the new connection replaces the old one. On a multi-input, the new connection is added alongside the existing ones until the input's limit is reached.

### How do I change the order of reference images on a multi-input?

Select the node and use **Order By Position**, **Order By Name** or **Reverse** on that input in Parameters. **Order By Position** follows the left-to-right position of the source nodes.

### Can I cut connections with a trackpad?

Yes. Hold `Y` and drag across the connections with a normal trackpad click, or double-click a single connection to remove it.

## Related

- [Navigate the Graph Editor](https://docs.nodespell.com/graph/graph-editor/): sockets and node parts
- [Add nodes](https://docs.nodespell.com/graph/add-nodes/): create nodes already connected
- [Edit parameters](https://docs.nodespell.com/graph/parameters/): drive parameters from connections
- [Run nodes](https://docs.nodespell.com/graph/run-nodes/): what runs when connections change
- [Organize your graph](https://docs.nodespell.com/graph/organize/): groups and tidy layouts
