Skip to content

Add conditional branching to a workflow

A Condition step lets one workflow send records down different paths depending on what is true about each record. You decide the rules; the workflow routes every account or contact that reaches the Condition to the right next step. Use it when you want, for example, accounts that pass qualification to go on to research while everyone else stops, or contacts in one region to take a different path than the rest. For the broader picture of how steps connect, see Workflows.

The workflow builder is an early-access surface: it shows up only for accounts with administrator access, and only outside the live production environment. If you do not see it, that is expected. See Missing navigation items.

  • You need an open workflow in the builder. Start one in Build a workflow.
  • A Condition can only route to steps that already exist on the canvas, so add the steps you want it to branch into first. You can always come back and point the branches at them.
  • A branch can be restricted by filters. If you want to reuse filters you have already set up elsewhere, save them as a view first so they are available to prefill. See Saved views.
  1. In the builder, open the left panel of possible steps and find the Routing group below the list of agents. Click Condition, whose description reads “Routes records down different paths based on rules”. The step drops onto the canvas and its editor opens on the right.

  2. At the top of the editor, set Entity type. The choices are Account and Contact. This decides whether the Condition evaluates each account or each contact that reaches it, and it controls which fields are available when you build branch filters. Changing the entity type after you have added branches clears any filters and target steps on those branches, so set it before you build the branches out.

  3. Under Branches, click Add to create a branch. Each branch is labeled Branch 1, Branch 2, and so on, in the order you add them. A new branch always runs by default, shown as “Always runs (add filters to restrict).” Add as many branches as you need; remove one with the trash icon on its header.

  4. Decide whether the branch is restricted or always runs:

    • To make a branch run only for matching records, click Add filters. The branch header changes to “Run when filters match:” and the filter builder appears.
    • To reuse filters you already saved, click Prefill with views and pick a saved view from the menu. Only views that match the branch’s entity type and that actually carry filters appear in the menu. The button is unavailable when you have no saved views at all. The view’s filters are copied into the branch, and you can edit them from there.
    • To leave the branch unrestricted, add no filters. It will run for every record that reaches the Condition.
  5. Build the filters when you have chosen to add them. Inside the filter group, click Add field or group. A panel opens with two tabs:

    • Field lets you search for and pick a field to filter on. After you pick one, choose how it should match and enter the value to compare against.
    • Group lets you nest a sub-group joined by AND or OR, so you can express rules like “this and that, or this other thing.” Between two or more items, a small AND or OR chip shows how they combine; click it to open the group editor, where the Operator setting switches the join. To clear everything on the branch, click Remove all filters, which returns the branch to “Always runs.”
  6. Set where the branch leads. At the bottom of each branch, use the step selector to choose the next step. The placeholder reads “Select step,” and the menu lists the other steps on the canvas.

    • When the branch has no filters, the target is labeled next: this is simply the step the record moves to.
    • When the branch has filters, the target is labeled then, and a second selector labeled else appears below it. The record goes to the then step when its filters match and to the else step when they do not. You can leave else empty if records that fail should stop here.
  7. Add or adjust as many branches as the routing needs, then close the editor. The Condition and its branch targets are drawn as connections on the canvas, so you can see each path at a glance.

The Condition is part of the saved workflow definition; it does not run on its own. When the workflow runs, each record that reaches the Condition is checked against the branches and sent on accordingly: a filtered branch routes the record to its then step when the filters match and its else step when they do not, and an unfiltered branch sends every record to its next step. Records then continue through whatever agents those steps run. To run the workflow, see Run a workflow; to put it on a schedule, see Schedule a workflow.

Before a workflow can be saved or run, every step has to be reachable. A branch with no target step is flagged, and a step that nothing connects to is flagged as unreachable. If saving fails, work through the flags first. See Workflow validation errors.