Smarter, Streamlined Bot Paths with Conditional Logic Nodes

Instabot recently released a new product feature that is a bit of a game changer- Conditional Logic Nodes!


What is ‘conditional logic’?

After a quick Google search, one definition describes conditional statements and constructs as  “features of programming language, which perform different computations or actions depending on whether a programmer-specified binary value condition evaluates to true or false.” 

This might be a little complicated for those who are not computer programming-inclined, aka, me. Basically, conditional logic takes its cue on what action to take depending on a user’s qualification in regards to a true or false condition or selection.

A basic illustration of this is: Does the user meet condition 'A'? If so, take them to point ‘C’. If the user does not meet 'A', then take them to point ‘B’.

How does Instabot define 'conditional logic'?

In the context of Instabot, a conditional logic node sends a user to the appropriate based on that user’s previous answers, the value of a specific user property, completion of a specific goal, or, a webhook response. With conditional logic, you can take all this user information into account and selectively alter the conversation flow, based on some condition that the user’s profile or behavior either meets or does not meet (using true/false logic).

For example: If a user’s email hasn’t been recorded, then the bot will send the user to the node that asks for their email. Otherwise, if the email has been collected in previous bot interactions, the bot will send the user to the node that asks other questions, bypassing the email collection because this value has already been collected for that specific user.

Doesn’t Instabot already do this?

Not quite. This is a new feature that will further enhance your bot's ability to create a unique and personalized bot experience with dynamic responses. With this new node type, there is the greater ability (and less work involved) to connect varying use cases within a single bot, simplifying the bot building process. In addition, you can compare quantitative amounts, make qualitative analysis and decisions within bots. You can send users to specific conversation nodes based on very specific qualities, like their favorite color, or age.

The main difference this adds is that our bots previously only used a decision tree framework, in which a user’s choice determines the conversation path the bot will take. Without conditional logic, the bot does tailor the conversation path based on the user’s choice, but it does so with some limited knowledge, based only on the previous choice the user just made in the conversation. It does not take into account previous knowledge about the user's goals or preferences.

To help illustrate this difference in a simple manner, I’ll use the email collection example from above.

Let’s say you want to communicate with all site visitors, about new products and upcoming company events.

Using a decision tree framework, all users must communicate with the bot starting from the first node in order to get an idea of what events are occurring. Somewhere in those conversation paths, there are nodes asking for demographic questions like name, email, etc, and therefore all users are potentially going to be sent to those nodes, depending on which multiple choice selection they make (or not, if those questions are present down every path).

With a decision tree framework, If you wanted to make sure that visitors who are already registered for your site are not re-asked demographic questions, you would likely have to create another bot devoid of demographic questions, and launch that version only to a user segment of people whose information you already have.

Now, by using conditional logic, you can have the same bot appear to all your site’s visitors, but the bot will know what node to start the conversation for each user, based on information in their profile. Users whose name and email have already been collected will bypass the nodes asking for that information. You can get vital information to returning users about your events and new features without them having to trudge through re-typing demographic information and any repeat conversation elements. You won't have to create another bot for that different segment, since the bot can now take in all the user profile information you have and selectively send users down a specific path based on their profile, goals completed, and behavior in the conversation.

In other words, conditional logic helps to create shortcuts and sends users down the correct path(s), because you know what they are looking for, you know what their preferences are, and what goals they have hit in previous interactions with your bots.


How can I use it?

You can access this feature when creating a bot. Simply click to “+ Add Node”, and “Conditional Logic” will be listed along with other node types. You will need to format the True/False conditions and subsequent path that direct the conversation from that point onward.

Conditional Node for Email Capture

Conditional Node for Email Capture

There are a few options when formatting the True/False conditions and responses, including: 

1) User's response to a prompt (what they are telling the bot)

2) Information from the User's profile (what Instabot knows about the user) or 

3) User Goals (what they have done in the past)

Instabot will evaluate that variable or information, verify if it is true or false and strategically direct that conversation in the ways that you have formatted, giving each user a unique bot experience, based on their profile, behavior, and goals.


We know plenty of clients and users have been asking for this functionality, and we're glad to have it added in our toolbox! If you need support with utilizing conditional logic nodes, contact our team at