Next Level Personalization with Conditional Logic

A quick recap: Instabot’s Conditional Logic Node are formatted to send each user down the appropriate bot path based on:

  1. What the user says in the bot conversation,

  2. What the user does (goals the user completes), and

  3. Something Instabot knows about the user (user property).

This allows you, the bot maker, to be smarter about what the bot asks, and more importantly, what the bot does not ask.

If you’re learning about the Conditional Logic Node for the first time or need a quick refresher on conditional logic, check out our blog post about the feature release here!

There are three options when formatting a Conditional Logic Node to leverage the True/False conditions and provide the appropriate response:

  1. User’s response to a prompt (what a user is telling the bot)

  2. Information from the User’s profile (what Instabot knows about the user)

  3. User Goals (what a user has done in past bot interactions)

Here are some insights on leveraging each case that will offer a base point for you to create your own conditional logic paths!

1. User’s Response to a Prompt

Before, when a user entered a free text response in a conversation path, there wasn’t much a bot could do, other than save their response as a user-property, or send it to a natural language processing (NLP) service.

Now, with conditional logic nodes, a bot can use it to send a user down one of two paths, depending on the user’s response what was written.

There are 8 operators you can utilize to qualify a user’s response:


Match / Does Not Match:

“Pizza” matches “Pizza” = True

“Pizza” matches “Piz” - False

“Pizza” does not match “Piz” = True

“Pizza” does not match “Pizza: = False


Contains / Does Not Contain:

“Pizza” contains “Pizza” = True

“Pizza” contains “Piz” = True

“Pizza” contains “Lasagna” = False

“Pizza” does not contain “Pizza” = False

“Pizza” does not contain “Piz” = False

“Pizza” does not contain “Lasagna” = true


Starts With / Does Not Start With:

“Pizza” starts with “Pizza” = True

“Pizza” starts with “Piz” = True

“Pizza” starts with “za” = False

“Pizza” does not start with “Pizza” = False

“Pizza” does not start with “Piz” = False

“Pizza” does not start with “za” = True


Ends With / Does Not End With:

“Pizza” ends with “Pizza” = True

“Pizza” ends with “za” = True

“Pizza” ends with “Piz” = False

“Pizza” does not end with “Pizza” = False

“Pizza” does not end with “Za” = False

“Pizza” does not end with “Piz” = True


Conditional nodes are perfect for situations where the path of the bot depends on what the user says.


2. Information from the User’s profile

After a user has given your bots some information, Instabot is able to save that as a User Property under their profile.

With conditional logic nodes, you have the ability to call upon that saved information and determine based on that saved information, if the user engaged with your bot before!

For example, if you have a returning user that previously gave their email (which your bot saved via User Properties), you can use a conditional logic node to detect if the user’s EMAIL property exists. If it does not exist, ask for it. If it does, don’t ask them again.


To accomplish this:

First, click “Add Node” in your bot conversation and choose the “Conditional Logic” node.
Next, select “the User property of” under the IF dropdown menu.


Next, select the User Property that the node will look for, which in this case is “Email”

Then, select the operator to evaluate the user property upon. In the case of our example above, select “Exists”


By selecting “Exists” as the operator, you are essentially creating a case where if the user’s email address exists, declare this condition as “True” and continue without asking the user for their email.

If the conditional logic node determines that there is no email property does not exist, the conditional would be declared “False” and go along the separate path, which in this case, asks the new user for their email.

NOTE: You can set up this same logic, but switched, using “Does not exist” as the condition, in which case "True" would point to asking the user for their email and "False" would direct the returning user.

Lastly, once the conditional logic node has been added, you can go ahead and continue writing the conversation paths for each scenario.

Beyond that, a property can be tested against other operators, such as “Matches”, “Contains”, “Ends With”, etc. Much like the case of a user’s response, a user’s saved property (which can be any information collected about them) can be leveraged to send that returning user down one path or another.  

3. User Goals

Similar to using information already given by a user and saved onto their profile, Instabot can remember if a user reached a Goal. An Instabot Goal is defined as an important place or action that was taken in your bot conversation and is designated by the bot builder. To read up on Goals and to learn how to create them, read here!

The conditional logic node can determine if a user interacting with the bot has completed a certain Goal in prior conversations with bots (True or False).

By checking if a user completed a specific Goal, usually from a different bot, you can understand the following things:

  1. The current user has visited your site before and interacted with one of your bots

  2. The previously completed goal indicates how far along the user went down a conversation path

  3. By having knowledge of #2, you can avoid repeating any information the user already been given and cut straight to a Call to Action or an appropriate bot path, based on their previous bot engagements.

For example:

Let’s say a user comes to your bot for the first time.

User engages and goes down the conversation flow, getting all sorts of info and details.

Finally, the bot asks the user for contact information - the point of conversion

Unfortunately, the user decides to drop off at that moment and leave without giving any info. No name, no email, nothing.

Well, all is not lost! Fortunately, right before the user was asked to give some contact information, a conversation node with a Goal (made so thoughtfully by you), was reached!

Formatting Conditional Nodes in Instabot builder

Formatting Conditional Nodes in Instabot builder

By having reached this Goal, Instabot knows who that person is despite not having any additional identifying information. So later, when the user decides to come back to your site and re-engage with the same bot, your conditional logic node can be in place to recognize the user, and send them along a different path to convert them this time around.


By mastering the basics and experimenting with different methods of using Conditional Logic, you can make your chatbots the most efficient and useful tools to convert your leads!

If you would like to try this for yourself, or need any assistance employing conditional logic, shoot us a note over at