# Terminate

> The Terminate node halts all active branches of a workflow immediately, regardless of parallel work in progress.

## What it does

Immediately stops the entire workflow, ending every branch that is still running.

Terminate fits when a specific path must halt the workflow, such as after detecting an unrecoverable error or reaching a conditional branch where no further work should happen anywhere in the workflow.

## Choosing between Terminate and End

| Situation | Use |
|---|---|
| Stop the whole workflow now, including any parallel branches still running | **Terminate** |
| Finish only the current branch and return its output while other branches continue | **[End](node-end.md)** |

Terminate is global: it ends the run regardless of what else is in progress. End is local to its branch.

## Configuration

The Terminate node has no **Status** or **Message** field. Its **Parameters** tab offers **Add output variable**, which defines a value that the workflow returns. The node does not support error handling. The node that should stop the workflow connects to its input handle.

## Notes

- Terminate stops the run cleanly. It doesn't raise an error on its own. In the execution trace, the Terminate node and the run both show **Completed**.
- Inside a subflow, Terminate ends only that subflow, and the parent workflow continues.
- Any parallel branches still in progress are ended when the workflow terminates, so Terminate belongs only on paths where stopping all remaining work is the intended outcome.

## Next steps
- [End](node-end.md): finishing only the current branch.
- [Control flow](control-flow.md): the nodes that branch, repeat, and rejoin paths.
- [Error handling](error-handling.md): routing a failure to an error path.
- [Community](community.md): ask questions and share workflows with other builders on the UiPath Forum.
