Every GoHighLevel workflow is built from two kinds of steps: triggers and actions. A trigger starts the workflow. Actions are everything that happens after. A simple workflow might have one action (send an email). A complex workflow might have twenty actions with conditions and delays between them.
GoHighLevel has dozens of built-in actions. Some work with contacts: add or remove a tag, update a custom field, assign to a user. Others send messages: email, SMS, voicemail drop, or Conversation AI reply. Others manage pipeline: create an opportunity, move it to a stage, mark it won or lost. And some call external systems: outbound webhook, MCP Node, or third-party integration.
Actions run in order. Each action completes before the next one starts, unless you add a delay or a wait step in between. You can branch the action sequence with a condition that sends contacts down different paths based on their data.
How Action works
In the workflow builder, you drag an action from the sidebar into the canvas and drop it below the trigger or another action. You configure the action, for example selecting the email template for a "Send Email" action. The workflow runs each action in sequence for every contact that enters it.
Actions can also use data from earlier steps. If a previous step collected an AI response or a webhook payload, you can reference that data in a later action using merge tags. This makes the output of one action the input of the next.