Articles on: Automations

How to use Message Triggers and Quick Replies in Hugo AI Agent

Learn how to use Message Triggers and Quick Replies to adapt your Crisp chatbox based on visitor behavior and context.


Message Triggers let you automate chatbox actions, such as opening the chatbox, showing a message, playing a sound, or changing the quick replies visitors can click. They help you guide visitors toward the right action at the right moment, without waiting for them to start a conversation.


Message Triggers are available on the Crisp Mini, Essentials, and Plus plans.


In this guide, you will learn how to:



Watch the Message Triggers walkthrough


If you prefer a quick visual walkthrough, this video shows how to use Message Triggers to display automated messages, configure quick replies, and adapt the chatbox based on visitor behavior.




What are Message Triggers?


Message Triggers are rules that decide what should happen in the Crisp chatbox when specific visitor conditions are met.


A trigger can react to a page visit, a delay, a click, a leave intent, a URL parameter, a user event, or custom user data. Once the trigger runs, it can open the chatbox, show a message, change quick replies, or play a sound.



What a trigger is made of


A Message Trigger is built with four main parts.


  • Actions → what happens in the chatbox
  • Events → when the trigger should run
  • Behaviors → additional rules that control how the trigger behaves
  • Platforms → whether the trigger should run on desktop, mobile, or both


When to use Message Triggers


Use Message Triggers when you want to adapt the chatbox experience based on what the visitor is doing on your website.


Common use cases include:

  • Pricing assistance → show pricing-related quick replies on your pricing page
  • Product education → guide visitors toward useful product questions
  • Lead generation → help visitors ask the right question before starting a conversation
  • Support deflection → suggest common help topics before a teammate gets involved
  • Contextual guidance → update chatbox options based on a visitor’s current page or app section


If you only want to change the default message displayed in your chatbox, read this guide: How to change the chatbox welcome message


If you need a longer automation flow with multiple steps, conditions, or actions, use Workflows instead: Getting started with Workflows


If you want to send messages over time based on user behavior, read this guide: How to use Automated campaigns



Create your first trigger


A trigger starts with a clear name and identifier. Then, you define what the trigger should do, when it should run, and where it should be available.


Open Message Triggers


Open Crisp, then go to AI Agent → Automate → Message Triggers.



Create a new trigger


Click New Trigger, then add a trigger name and identifier.


  • Trigger name → internal name used to recognize the trigger in Crisp
  • Trigger identifier → technical identifier that can be used to call the trigger from your website or app


Use a short and clear identifier, such as pricing-message, billing-help, or onboarding-quick-replies.



The trigger identifier is especially useful when you want to run a trigger manually with the Crisp SDK.


Enable or disable a trigger


Each trigger can be enabled or disabled from its settings. Disabling a trigger pauses it without deleting its configuration.


This is useful when you want to test a trigger, pause a campaign-like experience, or temporarily stop a chatbox message without rebuilding it later.



Choose what should happen in the chatbox


Actions define what Crisp should do in the chatbox when the trigger runs.


Available actions


You can combine multiple actions in the same trigger, depending on the experience you want to create.


  • Open chatbox → opens the chatbox automatically for the visitor
  • Show a message → sends an automated message in the chatbox
  • Change quick replies → updates the quick replies shown in the chatbox
  • Play a sound → plays a notification sound when allowed by the browser



Modern browsers enforce strict autoplay policies. A visitor may need to interact with the page before a sound can be played.


Show a message


Use Show a message when you want Crisp to send a proactive message to visitors.


For example, you can show a message on your pricing page to ask whether the visitor needs help choosing a plan.


Good examples of trigger messages:

  • Pricing page → “Need help choosing the right plan?”
  • Demo page → “Want to talk to our team before booking?”
  • Help page → “Can’t find what you’re looking for?”


Change quick replies


Use Change quick replies when you want to update the clickable options shown in the chatbox.


Quick replies are useful when you want visitors to start faster with predefined questions or topics, instead of typing their message from scratch.


For example, on a pricing page, you can show quick replies such as:


  • What plan should I choose?
  • Can I talk to sales?
  • Do you offer a free trial?
  • How does billing work?



Use quick replies in Message Triggers


Quick replies are predefined messages that visitors can click in the chatbox. They help visitors start a conversation faster and guide them toward the most relevant topic.


There are two main types of quick replies: global quick replies and per-trigger quick replies.


Global quick replies


Global quick replies are shown by default to visitors who do not have an active conversation.


They are useful when you want to display general questions that apply across your website.


For example:

  • How can I contact support?
  • How can I set up my account?
  • What are your main features?
  • What is your pricing?



Per-trigger quick replies


Per-trigger quick replies are shown only when a specific trigger runs. They can replace the global quick replies based on the visitor’s context.


This lets you adapt the chatbox options to the page, section, or situation the visitor is in.


For example:

  • Pricing page → show pricing and plan-related quick replies
  • Billing section → show invoice, payment, and subscription quick replies
  • AI Agent page → show Hugo setup and automation quick replies
  • Onboarding page → show setup, migration, and training quick replies


Per-trigger quick replies help you make the chatbox more contextual without creating a full workflow.


How quick replies behave with trigger messages


Quick replies are designed to guide visitors before a conversation is active.


If a trigger is configured to send a message in the chatbox, predefined quick replies from that same trigger may not be shown because the chatbox already contains a message.


Choose the experience you want:


  • Show a message → best when you want to proactively start the conversation with a sentence
  • Change quick replies → best when you want to offer contextual options without pushing a full message


Avoid combining too many proactive actions at once. A simple chatbox experience is usually easier for visitors to understand.



Translate quick replies


Quick replies can be localized so visitors see predefined options in their language.


If no localized quick replies are configured for a visitor’s locale, Crisp uses the default quick replies instead.


Add localized quick replies


When editing quick replies, select the locale you want to configure, then add the translated quick replies for that language.



Recommended setup:

  • Default locale → create the main version first
  • Localized versions → add translations for your most important languages
  • Fallback behavior → keep the default version clear, because it is used when no localized version exists


Start with a strong default version before adding translations. This keeps the experience reliable for every visitor.



Decide when your trigger should run


Events decide when a trigger should run. You can use one event or combine several events to make the trigger more precise.


Available events


A trigger can run based on visitor behavior, page context, or data sent from your website.


  • After delay → runs after a defined time on the website
  • On pages → runs on specific pages or page patterns
  • On leave intent → runs when the visitor appears to be leaving the page
  • On click on link → runs when the visitor clicks a specific link
  • On URL parameters → runs when the current URL contains specific parameters
  • On user event → runs when a custom event is pushed from your website
  • On user data → runs when custom user data matches your trigger condition



Combine events


You can combine multiple events to create more precise triggers.


For example:

  • Pricing page + delay → show a pricing message after 30 seconds
  • Help page + leave intent → suggest help before the visitor exits
  • Billing section + user data → show billing quick replies to existing customers
  • Specific URL parameter + desktop only → adapt the chatbox for visitors coming from a campaign


Use user events and user data


User events and user data let you trigger chatbox actions based on information sent from your website or app.


This is useful when the trigger depends on a product action, a logged-in user state, or a specific customer context.


To learn how to send events to Crisp, read this guide: How to push Crisp profile events


When using custom data to start a trigger, use clear string values so the trigger can match them reliably.



Configure trigger behaviors


Behaviors are additional rules that control how a trigger should be executed.


They help you avoid showing the wrong message, repeating triggers too often, or running a trigger in the wrong situation.


Available behaviors


You can enable or disable behavior rules depending on your use case.


  • Sent from website → sends the trigger message as coming from the website
  • Execute only if website is online → runs the trigger only when your website is online
  • Execute only upon first visit → runs the trigger only for first-time visitors
  • Execute if no other triggers used → prevents the trigger from running if another trigger already ran
  • Execute only if user is from country → runs the trigger only for visitors from selected countries



Choose the right behavior


Use behavior rules to keep the chatbox experience controlled.


For example, if you have several triggers on the same page, Execute if no other triggers used can help avoid stacking multiple chatbox actions for the same visitor.


If your trigger is meant for a specific market, Execute only if user is from country can help you localize the experience.


Too many overlapping triggers can create a confusing chatbox experience. Keep your rules simple and test them on real pages.



Choose platforms


You can decide whether a trigger should run on desktop devices, mobile devices, or both.


Desktop and mobile behavior


Some triggers work well on desktop but may feel intrusive on mobile.


Recommended approach:

  • Desktop devices → useful for proactive messages, pricing help, or longer quick reply options
  • Mobile devices → better for lighter experiences, short quick replies, or delayed triggers



If a trigger opens the chatbox automatically, test it carefully on mobile before enabling it for all visitors.



Target pages with wildcards


Page targeting supports exact URLs, wildcards, double wildcards, and negated matches.


The URL matcher is strict. If your website uses www.example.com, configure www.example.com, not only example.com.


Simple wildcard


Use * to match one path segment.


For example, https://example.com/*/pricing matches:



Double wildcard


Use ** to match deeper subdirectories.


For example, https://example.com/product/** matches:



Negate match


Use ! to exclude matching pages.


For example, !https://example.com/product/*/bbbbbb excludes:




Use Message Triggers with the Crisp SDK


Message Triggers can also be called manually from your website or app using the Crisp SDK.


This is useful when you want to dynamically update the chatbox based on your own product context, instead of relying only on page visits or standard visitor events.


Run a trigger with its identifier


Each trigger has an identifier. Your website or app can use this identifier to run the trigger when a specific action happens.


For example, you can call a trigger when a user opens a billing section, reaches an onboarding step, or visits a specific area of your app.


Common SDK-based use cases:

  • Billing section → show billing-related quick replies
  • Onboarding step → show setup-related quick replies
  • Plan selection page → show pricing-related quick replies
  • Feature page → show product-specific questions


To learn more about available $crisp methods, read the Web Chat SDK documentation: $crisp Methods


SDK-triggered quick replies are useful when your website or app has context that Crisp cannot detect from the URL alone.



Pause or edit a trigger


You can pause, edit, or delete a trigger from AI Agent → Automate → Message Triggers.


Pause a trigger


Disable the trigger if you want to stop it temporarily. This keeps the configuration saved, so you can enable it again later.


Edit a trigger


Open the trigger if you want to update its actions, events, behaviors, platforms, messages, or quick replies.


After editing a trigger, save your changes and test the result on the matching page or context.



Troubleshoot Message Triggers


If a trigger does not run as expected, review its actions, events, behaviors, platforms, and quick replies.


Common reasons a trigger does not appear


Check these settings first:

  • Trigger disabled → the trigger must be enabled to run
  • Wrong page pattern → the current URL may not match your page rule
  • Delay not reached → the visitor may leave before the delay ends
  • Website online condition → the trigger may only run when your website is online
  • First visit only → returning visitors may not see the trigger again
  • Another trigger already ran → another trigger may prevent this one from running
  • Wrong platform → the trigger may be disabled on desktop or mobile
  • Blocked chatbox → the chatbox may be blocked for the current page, visitor, or locale
  • Already fired → a trigger starts only once per user when the same conditions match


Common reasons quick replies do not appear


Quick replies may not appear if the chatbox is already in a state where quick replies are not displayed.


Check these cases:

  • A conversation is already active → quick replies are mainly shown before an active conversation starts
  • A trigger message is shown → trigger quick replies may not be shown when the trigger already sends a message
  • No localized version exists → Crisp falls back to the default quick replies
  • Another trigger overrides them → a more specific trigger may change the quick replies
  • The trigger did not run → the event or behavior conditions may not match


For practical ideas, read 25 live chat trigger examples for customer engagement.



Frequently Asked Questions


Still have questions which were not covered in this article? Here is a collection of the most frequently asked questions on this topic.


What is the difference between global quick replies and trigger quick replies?


Global quick replies are shown by default to visitors who do not have an active conversation. Trigger quick replies are shown only when a specific trigger runs, so they can adapt the chatbox to the visitor’s current page or context.


Can trigger quick replies replace global quick replies?


Yes. When a trigger with quick replies runs, it can replace the global quick replies with more contextual options.


Can I translate quick replies?


Yes. You can create localized quick replies for specific languages. If no localized version exists for a visitor’s locale, Crisp uses the default quick replies.


Why are my quick replies not showing?


Quick replies may not appear if the visitor already has an active conversation, if the trigger sends a message instead, if another trigger overrides them, or if the trigger conditions are not met.


Can I trigger quick replies from my app?


Yes. You can run a Message Trigger manually from your website or app using the Crisp SDK and the trigger identifier.


Can a trigger run more than once for the same visitor?


A trigger is remembered after it fires for a visitor. This prevents the same automated message or quick reply update from repeatedly appearing when the visitor meets the same conditions again.

Updated on: 28/05/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!