Skip to main content
Conditions let your workflow make decisions. Instead of every run following the same linear path, a condition step evaluates one or more rules against the data in your workflow and routes execution down a true branch or a false branch. Use conditions to handle different cases — approving or rejecting a request, routing a ticket by priority, sending different messages based on a customer’s plan, and so on.

Adding a condition step

1

Click the add step button

On the canvas, click the + button where you want to insert the decision point — usually after a trigger or a data-fetching action that produces the values you want to evaluate.
2

Select Condition from the step type selector

The step type panel opens. Click Condition. A condition step card appears on the canvas with two outgoing branches: True and False.
3

Open the condition configuration panel

Click the condition step card to open its settings on the right. You’ll build your rules here.
4

Add your first rule

Click Add rule. A rule row appears with three fields: the value to evaluate (left), the operator (center), and the comparison value (right). Fill in all three fields.
  • Value to evaluate: Click {} to open the data picker and select a field from a previous step — for example, trigger.body.status or steps.fetch_user.output.plan.
  • Operator: Choose from the list of supported operators (see below).
  • Comparison value: Enter a static value or select a dynamic reference.
5

Add more rules if needed

Click Add rule again to add additional conditions. Choose AND to require all rules to be true, or OR to require at least one rule to be true. You can mix AND and OR groups using rule groups (see below).
6

Save the condition step

Click Save. The canvas now shows two branches extending from the condition step: a green True path and a red False path.
7

Add actions to each branch

Click the + button on the True branch to add the steps that should run when the condition is met. Click the + button on the False branch for steps that should run when it isn’t. You can leave a branch empty if no action is needed for that outcome.

Condition operators

Choose the operator that matches the type of comparison you need.
OperatorDescriptionExample
equalsExact match (case-sensitive)status equals active
not equalsDoes not matchcountry not equals US
containsString includes the valueemail contains @company.com
not containsString does not include the valuesubject not contains unsubscribe
starts withString begins with the valuename starts with Dr.
ends withString ends with the valuefilename ends with .pdf
greater thanNumeric comparison — left is largeramount greater than 1000
less thanNumeric comparison — left is smallerage less than 18
greater than or equalLeft is equal to or largerscore greater than or equal 80
less than or equalLeft is equal to or smallerquantity less than or equal 0
is emptyValue is null, undefined, or an empty stringphone_number is empty
is not emptyValue has any non-empty contentcompany_name is not empty
is trueBoolean value is trueis_verified is true
is falseBoolean value is falseemail_opt_in is false
All string comparisons are case-sensitive by default. To do a case-insensitive comparison, use the Format text data transformation action before the condition step to normalize the value to lowercase first.

Multi-condition rules: AND / OR logic

When a condition step has more than one rule, you choose how the rules combine:
  • AND — All rules must be true for the condition to evaluate as true. If any single rule fails, the workflow takes the false branch.
  • OR — At least one rule must be true for the condition to evaluate as true. The false branch is only taken if every rule fails.
For more complex logic, use rule groups. A rule group is a set of rules evaluated as a unit, and groups themselves can be combined with AND / OR. This lets you express logic like:
(status equals “pending” AND amount greater than 500) OR (priority equals “urgent”)
To add a rule group, click Add group in the condition panel. Each group has its own AND / OR selector, and the groups are joined by the top-level AND / OR.

Creating true and false branches

After saving a condition step, the canvas renders two outgoing paths:
  • The True branch (green) runs when the condition evaluates to true.
  • The False branch (red) runs when the condition evaluates to false.
Add steps to each branch independently. Branches can themselves contain additional condition steps, creating nested decision trees. After both branches complete their steps, execution merges back into a single path for any steps you place below the condition step.
If you only need to act on one outcome, leave the other branch empty. Empty branches are valid — execution simply continues past the condition without doing anything for that case.

Example: routing a form submission by department

Imagine a contact form that captures a department field. You want support requests to create a ticket in Jira and all other requests to be logged in a Google Sheet.
1

Add a condition step after the form trigger

Insert a condition step after your webhook or app event trigger.
2

Set the rule

Configure the rule: trigger.body.department equals Support.
3

Add a Jira action on the true branch

On the True branch, add a Jira — Create issue action. Map the form fields to the Jira fields: trigger.body.message → description, trigger.body.email → reporter.
4

Add a Google Sheets action on the false branch

On the False branch, add a Google Sheets — Append row action. Map the full form payload to columns in your tracking sheet.
5

Activate the workflow

Publish and activate the workflow. Every form submission now routes to the correct destination based on the department value.
Trigger: Webhook (form submission)

└─ Condition: trigger.body.department equals "Support"

       ├── TRUE ──► Jira: Create issue

       └── FALSE ─► Google Sheets: Append row

Workflows

Build and manage the workflows that contain your conditions.

Actions

Add actions to each branch of your condition.

Triggers

Control what data enters your workflow before conditions evaluate it.

Troubleshooting

Debug workflows where conditions route incorrectly.