Entry And Exit Conditions


Entry and exit conditions allow you to send users to different blocks before or after they've entered the block they're added to, you can read more about how to create conditions here.

Instead of a user going directly to a block, an entry condition will check a series of conditions first and make sure the user goes to the right place. For example, you could add an entry condition before a block that prompts a user for their email in order to check if you've already collected their email.

An exit condition can be used to help create contextual responses to user input. For example, after completing a purchase or finishing a flow, a user might reach a block that asks if there's anything else they need help with, if a user says "no" or "no thanks" you probably don't want to send them your standard "no" intent response. In this case you'd most likely send them to a block that say something like "great, if there's anything else we can help you with please let us know". So you'd create an exit condition that would check if the user had triggered the "no" intent on this block in order to send them the correct response.

Using Entry and Exit Conditions

Creating an entry or exit condition is the same as creating a conditional response with one distinction: they don't require you to set a fallback response. For an entry condition, the block you're using the entry condition on serves as the de facto fallback response. This means that if a user doesn't match any of the conditions created in the entry condition, they'll be sent to that block. Exit conditions are triggered when a user leaves a block via a free text entry, meaning the default intent response, or the catch all block if no intent is triggered, serves as the fallback response.

Entry conditions run before a user gets to the block the entry condition lives on, meaning that if a user matches a rule within the entry condition, they will never go to the block the entry condition is on. Exit conditions will run once a user leave a block by entering free text, so if a user clicks a button or quick reply, they will bypass an exit condition. To learn how to create a condition on a button click, read about conditional responses.


Entry conditions will always appear before any message element in a block. Exit conditions will always appear after all message elements in a block.

Entry and exit conditions can be saved, reused, and created on any block within your experience. They can be accessed from their respective drop downs located above and below the content contained within a block.

1. Saved entry and exit conditions - This dropdown contains all of the entry and exit conditions you've previously created and saved. Select (Disconnect) to remove an entry or exit condition from a block.
2. Create New - Use this button to create a new entry or exit condition.
3. Edit condition - Once a condition has been selected the create new button turns into an edit button, which allows you to modify the selected condition.

Creating and editing entry and exit conditions

Entry and exit conditions use the same components and UI as all other conditions, so the components will be familiar if you've used segmentation, made a reengagement, or created a conditional response before. A series of conditions and responses are created, and if a condition evaluates true for a user, the user is sent to that block. Conditions are evaluated in order, so if a user matches condition 1, Snaps won't check if they match condition 2 as well. For this reason it's important to place your conditions in the order you'd like them to be evaluated in.

Editing a Condition

When making an edit to a condition, the update will be applied to all blocks that are using that condition. Double check any changes you make to conditions being used in multiple places.

What's Next

Content Library

Entry And Exit Conditions

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.