> ## Documentation Index
> Fetch the complete documentation index at: https://docs.comfy.org/llms.txt
> Use this file to discover all available pages before exploring further.

# ComfySoftSwitchNode - ComfyUI Built-in Node Documentation

> Complete documentation for the ComfySoftSwitchNode node in ComfyUI. Learn its inputs, outputs, parameters and usage.

> This documentation was AI-generated. If you find any errors or have suggestions for improvement, please feel free to contribute! [Edit on GitHub](https://github.com/Comfy-Org/embedded-docs/blob/main/comfyui_embedded_docs/docs/ComfySoftSwitchNode/en.md)

The Soft Switch node selects between two possible input values based on a boolean condition. It outputs the value from the `on_true` input when the `switch` is true, and the value from the `on_false` input when the `switch` is false. This node is designed to be lazy, meaning it only evaluates the input that is needed based on the switch state.

## Inputs

| Parameter  | Data Type   | Required | Range | Description                                                                                                                                                  |
| ---------- | ----------- | -------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `switch`   | BOOLEAN     | Yes      |       | The boolean condition that determines which input to pass through. When true, the `on_true` input is selected. When false, the `on_false` input is selected. |
| `on_false` | MATCH\_TYPE | No       |       | The value to output when the `switch` condition is false. This input is optional, but at least one of `on_false` or `on_true` must be connected.             |
| `on_true`  | MATCH\_TYPE | No       |       | The value to output when the `switch` condition is true. This input is optional, but at least one of `on_false` or `on_true` must be connected.              |

**Note:** The `on_false` and `on_true` inputs must be of the same data type, as defined by the node's internal template. At least one of these two inputs must be connected for the node to function.

## Outputs

| Output Name | Data Type   | Description                                                                                     |
| ----------- | ----------- | ----------------------------------------------------------------------------------------------- |
| `output`    | MATCH\_TYPE | The selected value. It will match the data type of the connected `on_false` or `on_true` input. |
