Skip to main content

Workflow Automation

Workflows let you build multi-step automations visually. Connect trigger nodes, condition branches, actions, and delays on a canvas. When a visitor matches the trigger, the workflow runs the full sequence automatically — no developer needed after the initial setup.


What workflows can do​

Recover funnel drop-off When a visitor spends time on your checkout page without completing, fire a corner banner offering help. Use the Funnels page to find the biggest drop-off step, then click Fix with workflow to get a pre-built starting point.

Run conditional experiences Show one banner to mobile visitors and a different one to desktop. Branch by UTM source to give paid traffic a specific offer. Use A/B splits to send a random 30% of visitors to a tour while the rest see a banner.

Fire guided tours from behavior Trigger a guided tour when a visitor scrolls 50% down a feature page, when they've been idle for 30 seconds, or on exit intent. The Start Tour action fires any tour you've built in the Tours section.

Sequence actions with delays Show a corner banner immediately on page load. Wait 10 seconds. If the visitor is still on the page, show a second modal with a stronger CTA. Chain as many steps as needed.


The canvas​

Open any workflow to see its canvas. Nodes connect left to right (or top to bottom when vertical). Drag a connection from one node's output handle to another node's input handle.

Keyboard shortcuts:

  • Backspace / Delete — delete selected node or edge
  • Ctrl/Cmd + Z — undo last canvas change
  • Click an empty area to deselect

Changes save automatically. Use the Save button in the top bar to force-save before closing.


Node types​

Trigger​

Every workflow starts with one or more trigger nodes. A trigger fires when a visitor matches the condition.

TriggerWhen it fires
Page LoadAs soon as the page finishes loading
Exit IntentWhen the visitor moves their mouse toward the top of the browser (about to leave)
Scroll DepthWhen the visitor scrolls past a threshold (e.g. 50%)
Idle TimerWhen the visitor stops interacting for N seconds
Time on PageAfter the visitor has been on the page for N seconds
Rage ClickWhen the visitor rapidly clicks the same element 3+ times in 400 ms
JS ErrorWhen an uncaught JavaScript error occurs on the page
URL MatchWhen the visitor's current path matches a pattern (e.g. /checkout*)
UTM SourceWhen the utm_source parameter matches a value

Frequency controls how often the workflow fires per visitor:

SettingBehavior
Every timeFires on every matching page load
Once per sessionFires once per browser session
Once per dayFires at most once every 24 hours
Once everFires once per visitor, permanently

Condition​

Branch the workflow based on visitor context. Connect a YES handle and a NO handle to different next nodes.

ConditionChecks
Device ismobile, tablet, or desktop
Browser isChrome, Safari, Firefox, or Edge
UTM Source containsPartial match on the utm_source query param
Referrer containsPartial match on the referring domain
Random A/B splitSends N% of visitors to YES, the rest to NO — assignment is deterministic: the same visitor always lands in the same branch across page loads and sessions

Action​

Performs something visible to the visitor. Actions run immediately when reached in the flow.

Show Banner Display an announcement banner or notification. Two modes:

  • New banner — configure a banner inline (type, severity, message, CTA, dismiss memory). Supports all banner types: Top Bar, Bottom Bar, Slideout, Corner Card, Modal, Toast.
  • From library — pick any banner you've already built in the Banners section. The full config is snapshotted at save time, so the workflow fires the exact banner even if broadcast is off. Re-select to pick up any edits you make to the banner later.

Patch DOM Change the text, HTML, href, style, or a custom attribute of any element on the page. Use the visual element picker to target elements without writing CSS selectors.

Hide Element Hide any element by CSS selector. Use the visual picker or enter a selector manually.

Remove Banner Remove an active banner by its ID — useful for cleaning up after a condition resolves.

Start Tour Fire any guided tour from the Tours section. The tour starts immediately when this action node is reached. The tour's own page-load frequency settings are independent from the workflow's frequency guard — the workflow trigger controls when this fires.


Delay​

Pause the workflow for a specified duration before continuing to the next node.

Set the wait in milliseconds or seconds. Useful for spacing out actions — e.g. show a banner immediately, wait 15 seconds, then show a modal if the visitor is still on the page.


End​

Marks the end of a branch. Every path through the workflow should end at an End node. No configuration needed.


Building a workflow step by step​

  1. Go to Automations → Workflows
  2. Click New workflow and give it a name
  3. Click the workflow card to open the canvas
  4. Drag a Trigger from the node palette onto the canvas
  5. Configure the trigger type and frequency in the right panel
  6. Drag an Action node and connect it to the trigger's output
  7. Configure the action
  8. Drag an End node and connect it to the action's output
  9. Click Save
  10. Toggle the workflow to Active on the Workflows list page

The workflow starts running for all visitors immediately after activation.


Starting from a funnel drop-off​

The Funnels page shows where visitors drop off in your flows. When a step has a significant drop (more than 5%), a Fix with workflow button appears next to it.

Clicking it:

  1. Creates a new workflow named Fix: [step name]
  2. Pre-populates it with a URL Match trigger (targeting that exact path) and a Corner Banner action with a help message
  3. Opens the canvas so you can customize from there

This gets you from "I see a problem" to "I have a working recovery flow" in under a minute.


Combining workflows with A/B experiments​

Use a Random A/B split condition node to run experiments within a workflow:

  • Trigger: Page Load on /pricing
  • Condition: A/B split (50%)
    • YES → Show Modal with strong CTA
    • NO → Show Corner Banner with soft CTA
  • Both paths → End

Then add a funnel in the Funnels page segmented by your experiment ID to measure which variant converts better.


Tips​

One trigger per page session. If a workflow fires on page load with once_per_session, it won't fire again on the next page view in the same session. For cross-page flows, use every_time or set the trigger to a more specific URL.

Delays don't block the page. A delay node sleeps the workflow in the background — the visitor can still interact with the page normally.

Library banners are snapshotted. When you choose "From library," the banner config is copied into the workflow at that moment. If you edit the original banner, re-select it in the workflow to update the snapshot.

Tour frequency is independent. When a workflow fires a Start Tour action, the tour's own page-load frequency guard is bypassed — only the workflow trigger's frequency setting matters. This prevents double-counting if the tour also has its own page-load trigger.