Adaptive AI Knowledge Base
Calendars, Appointments & Services
The User Replied trigger fires whenever a user (member of your team), sends a message to a contact. Use it to measure how quickly your team responds, stop automations once a person steps in, log outbound activity, and route conversations based on who replied and where. This article shows how to setup and use the User Replied trigger in Workflows.
What is the User Replied Trigger?
The User Replied trigger starts a workflow when someone on your team sends a message to a contact from the conversation view. It is built around reply and response activity, and it fires on two kinds of messages a user sends:
Important: This trigger fires only on messages a user sends from the conversation view, and only once
that message is delivered, not the moment it is sent. Messages sent by workflow actions (Send SMS, Send Email, and so on) or by Conversation AI do not fire it. For automation based on Conversation AI, use the separate Conversation AI Trigger, which fires on a condition you define rather than on a specific message.
Key Benefits of Using the User Replied Trigger
How to Use the User Replied Trigger in Workflows
Trigger Filters
Filters let you control which user replies should start the workflow. You can combine several of them to get as specific as you need.
Filter | Operator | Values | Notes
Sent By | Is any of | Grouped user picker (see below) | Multi-select. Pick the contact's assigned user and/or specific users.
Message Channel | Is any of | SMS, Email, WhatsApp, Facebook Messenger, Instagram DM, Live Chat | Select one or more channels to match. Some channels offer additional channel-specific options.
Contains Phrase | Contains | Free text (case-insensitive) | Runs only when the message includes the words or phrases you specify. Supports several comma-separated phrases.
Exact Match Phrase | Equals | Free text (case-insensitive) | Runs only when the message matches exactly. Whitespace is trimmed before comparing.
Has Tag | Has any of | Tag picker | Runs only if the contact has the selected tag.
Doesn't Have Tag | Has none of | Tag picker | Runs only if the contact does not have the selected tag.
Replied By: The Grouped User Picker
The Replied By filter is a single, searchable, multi-select dropdown with two kinds of options:
Channel Behavior
The trigger works across all the main conversation channels. Because each channel threads its conversations a little differently, what counts as a brand new outbound message versus a reply can vary. The table below shows how that works on each channel.
Channel | New Outbound | Reply to Existing
Email | User writes a new email, where a new subject line starts a new thread | User replies inside an existing email thread
SMS | First SMS to a contact who has no prior messages | Any later SMS in the ongoing thread
WhatsApp | User starts with a template message, outside the 24-hour window | User replies inside the 24-hour service window
Facebook Messenger | First message to a contact with no prior conversation | Any later message in the ongoing thread
Instagram DM | First DM to a contact with no prior conversation | Any later DM in the ongoing thread
Live Chat | Not applicable, since the visitor always starts the session | User replies inside an active session
Email is the only channel where a user can keep several separate threads going with the same contact. On single-thread channels like SMS, Messenger, and Instagram DM, every message simply adds to one continuous conversation.
Custom Values
The trigger makes the following values available inside your workflow actions and If/Else conditions. Use them to personalize notifications, log activity, and route conversations.
Name | Custom Value | Description
User Name | {{user_replied.senderName}} | Name of the user who sent the message
User ID | {{user_replied.userId}} | Internal user ID of the sender, which is more reliable than the name for external integrations
Message Body | {{user_replied.messageBody}} | The content of the message
Channel | {{user_replied.channel}} | The channel the message was sent on, such as SMS, Email, or WhatsApp
Timestamp | {{user_replied.timeStamp}} | When the message was sent
Conversation ID | {{user_replied.conversationId}} | The conversation or thread ID
User Email | {{user_replied.senderEmail}} | Email address of the user who sent the message
Use Cases
Keyword-Based Routing
Log Outbound Activity
Setting Up SLA Tracking and Escalation
Response-time SLAs are the most common reason to reach for this event. If you want to make sure a rep replies within a target time and escalate when they do not, you build that with the User Replied event as a Wait condition and a Goal, rather than with the trigger on its own.
The pattern looks like this:
Frequently Asked Questions
Q: Do messages sent by a workflow fire this trigger?
No. Automated messages from workflow actions such as Send SMS or Send Email do not fire it. Only a message a user sends from the conversation view counts.
Q: Will it fire on cold or mass outbound outreach?
Not reliably. The trigger is built around replies and responses, not cold first-touch outreach.
Q: Can I fire only when the contact's assigned user replies?
Yes. Add a Sent By filter and choose "User assigned to the Contact".
Q: What happens if a user sends several messages quickly?
Each message fires the trigger on its own, unless re-enrollment is restricted on the workflow.
Q: What if a contact is enrolled in more than one workflow?
The trigger fires independently in each workflow.