Create a Smart Flow
The recipe builder (/smart-flows/recipe) is the fastest way to create automation. You describe logic in plain language: When this happens → optional and only if conditions → Then actions.
Use this guide for your first flow and for most day-to-day automations. Switch to Advanced Builder when you need branching nodes, drip sequences, or AI Employee nodes.
Video
Who can do this
Admin or users with Smart Flows create/edit permission.
Before you begin
- Decide the trigger (e.g. contact created, WhatsApp message received, form submitted)
- List actions (send email, create task, update contact status)
- Connect integrations for messaging actions
- For WhatsApp actions: approved WhatsApp templates and a sender number
- Optional: create a folder on the dashboard first
What you'll accomplish
- A named automation with trigger, optional filters, and one or more actions
- A Draft or Live flow you can test on a real contact
- Visibility in Run history and Analytics on the recipe panel
Open the recipe builder
- Sidebar → Smart Flows → Create Flow (
/smart-flows/recipe). - Or from the dashboard quick card Create New Flow.
Step 1 — Name the automation
- At the top, replace placeholder Untitled automation with a clear name (e.g.
New lead — WhatsApp welcome). - Names appear on the dashboard and in execution logs—use team-readable labels.
Step 2 — Choose a trigger
- In the Trigger section, select When this happens.
- Use Search triggers... to filter.
- Pick a trigger from grouped categories:
| Category | Examples |
|---|---|
| Contact | When a contact is created, When a contact's status changes |
| Deal | Deal stage or value changes |
| Conversation | When a WhatsApp message is received, email events |
| Tasks | Task created or completed |
| Forms | Form submission |
| Scheduling | When the schedule runs, When an appointment is booked |
| Other | When this automation is run manually, When a webhook is received |
- Configure trigger-specific tokens:
- Scheduled: Every day / Every week / Every month, weekday, time
- Status changed: pick status (new, contacted, qualified, lost, won)
- WhatsApp received: Configure receiving number → Select receiving number
- Webhook: endpoint path placeholder /your-endpoint
Verify: Trigger row shows your sentence (e.g. When a contact is created).
Step 3 — Add conditions (optional)
Conditions narrow who enters the flow.
- Under Conditions, each row starts with and only if.
- Build a row: field → operator → value.
Common operators:
| Type | Operators |
|---|---|
| Text | is, is not, contains, does not contain, starts with, ends with, is empty, is not empty |
| Number | equals, greater than, less than, between |
| Date | is today, is before, is after, passed in last N days |
| Tags | has tag, does not have tag |
- Select + add condition for additional rows (AND logic).
Example: and only if Source is Web form *and only if Status is new.
Step 4 — Add actions
- In Actions, the first step shows Then; later steps show and then.
- Click do this (or the action row) to open the action picker.
- Search Search actions... or browse groups:
| Group | Examples |
|---|---|
| Communication | send a WhatsApp message, send an email, send an SMS |
| Inbox | Assign thread, snooze, close |
| Contact | create a contact, update contact, tag contact |
| Tasks | Create or complete tasks |
| Deals | Create or update deals |
| AI / Conversational | Start WhatsApp conversation, AI steps |
| Utility | wait, call webhook |
-
Configure each action in the right sidebar (e.g. WhatsApp message — template, sender; Email — subject, body).
-
Badges show configured or incomplete—fix all incomplete before going live.
-
Select + add action for sequential steps.
Step 5 — Save and set Draft vs Live
Top bar controls:
| Control | Behavior |
|---|---|
| Draft / Live toggle | Draft = saved but not enrolling; Live = published |
| Saved | Flash when autosave succeeds |
| More actions | Duplicate, Execution history, Export as JSON, Delete workflow |
- Select Create automation (new) or Update automation (existing).
- Wait for Saving... to finish.
Publish (Live) only after testing. A live flow runs on every matching trigger in production.
Step 6 — Test on a contact
After saving, the right panel appears with tabs: Test, Run history, Trace, Info, Analytics, Help.
- Open Test tab.
- Search and select a contact…
- Select Run automation (shows Running automation… while executing).
- Open Trace tab → check Execution outcome: SUCCESS / FAILED.
- Open Run history → confirm the run appears.
Verify on the contact: timeline shows emails, tasks, or status changes from your actions.
Step 7 — Review analytics
Analytics tab (last 10 days):
- Success, Fail, In progress
- Total runs, Total actions
Use this weekly to catch rising failure rates before customers notice.
Start from a template (alternative path)
- Smart Flows → Templates (
/smart-flows/templates). - Filter: All Templates, Real Estate, Sales, Marketing, Support, Onboarding, Operations.
- Search Search templates...
- On a card, select Use Template (shows Creating... while cloning).
- You land on
/smart-flows/recipe/:workflowIdwith a pre-filled recipe—edit trigger/actions, then publish.
Real Estate examples: New Inquiry — Speed to Lead, Post-Viewing Follow-Up, Document Collection Reminder.
Verify your work
- Dashboard shows flow with Published or Draft status
- Test run shows SUCCESS in Trace
- Contact record reflects actions (message sent, task created, etc.)
- Run history lists the test run (empty state: No automation runs yet until first run)
Tips
Use When this automation is run manually while building—test actions without firing real triggers.
For inbound WhatsApp, always configure Select receiving number on the trigger so the wrong number does not start the flow.
Link to Open in advanced visual builder → only when Recipe limits you—avoid maintaining two copies of the same logic.
Troubleshooting
| Problem | Fix |
|---|---|
| Action stays incomplete | Open action sidebar; fill required template, sender, or field mapping |
| Test run FAILED | Trace tab → expand failed step; check integration/credits |
| Flow runs but wrong contacts | Tighten Conditions; use Trigger Events diagnosis |
| WhatsApp action fails | Template must be approved; number assigned |
| Cannot find trigger | Search exact words; check category (Contact vs Conversation) |