Workflows & Automation
How to Use If/Else Branches in GoHighLevel Workflows
By Marnix Geerkens. Published 2023-02-16. Updated 2026-06-02.
The If/Else step splits a workflow into separate paths based on conditions you define. A contact goes down one path if the condition is true and a different path if it is not, letting a single workflow handle multiple outcomes without duplicating your entire automation. Conditions can test tags, contact fields, dates, message replies, and the specific trigger that brought the contact into the workflow.
Watch it, then build it
Get the full platform free for 30 days
That walkthrough runs on GoHighLevel. Start it free through RocketLauncher and you get 30 days instead of the usual 14, the whole platform unlocked, plus our setup help and a community of thousands of builders in 47+ countries.
30 days, not 14Full platform, nothing held backFree community and setup help
We earn a referral commission if you keep GoHighLevel after the trial. It never changes your price.
Summary. GoHighLevel's If/Else workflow step evaluates a condition at runtime and routes each contact down the matching path. You can branch on whether a tag exists, what month it is, which trigger link a contact clicked, or dozens of other data points. One workflow can then do the work of several by handling each scenario inside its own branch.
What you will learn
- Add an If/Else step to any point in a workflow
- Create branches based on contact tags, dates, or workflow triggers
- Route contacts down a yes path or a no path depending on the condition
- Build multi-branch If/Else steps with three or more outcomes
- Use If/Else to detect which trigger link a contact clicked
- Combine If/Else with other actions to build conditional follow-up sequences
Steps
Open your workflow and add an If/Else step
Click the plus icon where you want the branch to appear. Search for If/Else and select it. The step appears with a yes path and a no path by default.
Choose a condition type
Select the type of condition you want to test. Options include contact tags, contact field values, the current date or month, whether the contact has replied to a workflow message, and which workflow trigger brought them in.
Set the condition value
Fill in the specific value to check against. For a tag condition, choose the tag name. For a date condition, pick the month or day. Be as specific as needed so the branch fires only when intended.
Add actions to each path
Click the plus icon under the yes path and add the actions that should run when the condition is true. Then do the same under the no path for contacts who do not meet the condition.
Add more branches if needed
For scenarios with more than two outcomes, add additional branches to the If/Else step. Each branch evaluates its own condition, so you can route contacts across three or more paths from a single step.
Test the workflow
Run a test contact through the workflow and check the History tab to confirm it went down the correct path. Adjust the condition values if the routing does not match what you expected.
Tips
- When branching on which trigger link was clicked, set one branch per link so each outcome gets a tailored follow-up rather than a generic response.
- If/Else conditions can reference custom values, which lets you build logic around data stored in contact records rather than only system fields.
- Stack multiple If/Else steps in sequence to build decision trees that get progressively more specific as a contact moves through the workflow.
Related tutorials
Watch it, then build it
Get the full platform free for 30 days
30 days, not 14Full platform, nothing held backFree community and setup help
Frequently asked questions
What conditions can an If/Else step evaluate?
Tags, contact fields, dates, email events, custom values, and workflow trigger type.
Can a single If/Else step have more than two branches?
Yes. Add as many branches as you need, each with its own condition.
What happens if a contact meets none of the branch conditions?
The contact follows the default no path or exits the step if no fallback path is set.
Can I use If/Else to detect which trigger link a contact clicked?
Yes. Set each branch to match a specific workflow trigger, one per trigger link.
Does the If/Else step slow down workflow execution?
No. The condition evaluates instantly and the contact moves to the next step without delay.






