Creating Efficient Conditions

Objective

After completing this lesson, you will be able to optimize conditions so that your content plays efficiently.

Introduction

It is important to build conditions in a way that allows them to be evaluated efficiently. Doing so ensures that the content we create will perform as expected for end users.

Watch the video to understand how WalkMe works under the hood when evaluating conditions.

Key Takeaways
  1. WalkMe waits for the page to load.
  2. After the page loads, WalkMe injects itself either via the Snippet or Browser extension.
  3. Page Load Evaluation: WalkMe will run through a page load evaluation to check which content should display based on conditions you've created.
  4. Continuous Evaluation: WalkMe then continuously checks if there are any changes happening on the page to ensure if additional WalkMe content should appear.
How to optimize performance

When building conditions, we can structure them in a top down format that makes rule evaluation more efficient.

Rules can be categorized as Light, Moderate, or Heavy, depending on how efficient they are.

When creating conditions, you can use the suggested hierarchy to optimize the performance of your rules in the Condition Builder.

The lightest and quickest rules are URL/Variable/Cookie and User Data. These are rules you want to put on top and build first to quickly assess if the WalkMe content should display to who and where.
On screen element Visible/Not Visible has a moderate rule and is a bit more intensive than the previous examples since we are waiting for a user action to occur on the screen.
Heavy rules are jQuery & On screen element - Clicked/Hovered jQuery & On screen element - Clicked/Hovered. WalkMe needs to spend the most computing power on this type of rule, so you’ll want to put this one at the bottom.

Tips for Building Efficient Conditions

  1. Prioritize light rules over heavy rules (assuming both are applicable).
  2. If you have a heavy rule, make sure that a light rule is above it. This way, if the light rule is false, WalkMe will not try to evaluate the heavy rule.
  3. In general, try to avoid too many heavy rules.

Using our knowledge of condition efficiency, we can optimize the performance of WalkMe by looking at an example of a condition below that has a Current URL and an Element on Screen rule.

Remember, we want to place LIGHT rules at the TOP because they are the lightest and quickest to evaluate, and HEAVIER Rules at the BOTTOM because they take longer.

The image depicts a conditional logic interface with two criteria set in a web application. The top condition checks if the current URL contains /login. The bottom condition, linked by 'And', verifies that an on-screen element is visible. Both conditions are marked with green checkmarks, indicating validation success. The layout is clean and minimalistic, focusing on functionality and clarity.

The light URL rule is placed at the top to be evaluated first, and the heavier Element on Screen rule is placed at the bottom to be evaluated second.

The WalkMe Evaluation Process happens in two distinct phases: Page Load Evaluation and Continuous Evaluation. Some of the concepts in the next section, such as Segmentation, have not yet been discussed in detail. But, don't worry, we'll be talking about them again in later courses.

Page Load Evaluation

The first phase of evaluation is Page Load Evaluation.

The figure shows the breakdown of the process that happens.

The figure shows the breakdown of the process that happens.

Go through the checks below to better understand how each of these work.

Segments

The figure shows create segment to identify which content should play.

The figure shows create segment to identify which content should play.

Creating segments allows us to push content to specific groups based on things like location, role etc.

WalkMe will first check created segments to identify which content should play.

If a segment's conditions are not met, WalkMe will not load content in that segment.

Local Segmentation

The figure shows the Display Condition to display SmartTips.

The figure shows the Display Condition to display SmartTips.

Next, WalkMe will check any local segmentation such as display conditions for SmartTips or other apps.

From the filtered down content, it will now further filter down to see what content is supposed to display on the particular page we have currently loaded.

Engagement Rules

The figure shows the Auto Play Condition.

The figure shows the Auto Play Condition with Play according to a rule Update Auto Play Rule checkbox is selected.

Finally, WalkMe then checks Engagement rules, which checks if something should be autoplay on the page such as a ShoutOut or Smart Walk-Thru.

Continous evaluation

The second phase of evaluation is Continuous Evaluation which happens AFTER your WalkMe content has loaded. There are three things that WalkMe will continuously evaluate in the WalkMe Editor.

  • Goals
  • Element Behavior
  • Display Conditions

These areas will be covered in later sections, but if for now if you want to understand them in more detail please follow the table.

Goals

Goals measure successful completion of a process. When we create goals on our Smart Walk-Thrus or Onboarding Tasks, these are continuously evaluated.

For Goals in Smart Walk-Thrus it will continuously evaluate from the time is started for up to

two hours. Onboarding tasks, on the other hand, are

constantly evaluated.

Element Behavior

For SmartTips and Launchers if we select any of the options aside from the default, WalkMe will constantly look for changes on the page to ensure our SmartTip or Launcher displays as a result of dynamic changes on the page.

Display Condition

This one is unique in that WalkMe will only continuously evaluate if we toggle on "Constantly check the condition to decide whether to display the item."

In the next section we will put into practice some of the concepts we have learned in a simulated activity.

Introduction: Grouping

divider

Grouping in the Condition Builder is a process that organizes rules and conditions to evaluate them collectively.

  • When you have two or more rules under one condition and at least one rule outside of that condition, the rules under the same condition will be grouped together automatically.

  • When you have more than two rules, you can also manually group at least two of these together.

Grouping helps in creating complex logical structures where multiple conditions need to be evaluated together.

Watch the video to understand the concept of grouping.

Key Takeaways
  • Depending on the use case or business need, some solutions may require multiple conditions or rules in order to play the way we want them to.
  • Grouping is a way to ensure that, when using multiple conditions or rules, they are still organized and easy to follow in the Condition Builder.
Using multiple Rules

Lets try to understand this concept with the help of an example.

We create a piece of content such as a ShoutOut, and we want to display this on two different website URLs: the Home Page and the Cart Page.

Instead of creating two of the same ShoutOut in the Editor, we can create one ShoutOut, but use theCondition Builder to structure rules so that it will play on either page.

Create a ShoutOut Autoplay condition.
  1. URL Rule 1 : The rule for the Home page.
  2. The Operator: The 'OR' operator ensures that the ShoutOut will play on either the Home or the Cart page.
  3. URL Rule 2: The rule for the Cart page.

Note

By grouping, you can also easily troubleshoot if your WalkMe item is not playing correctly. You'll be able to clearly see which specific part of your condition is evaluating as True or False.
Understanding condition and rule evaluations

When you have multiple conditions, rules, or groups, and you're not sure if your condition is working, then you can use the visual markers to see how rules are being evaluated and if the overall condition for your content will work.

The condition evaluations will be one of the following:

  • True (Green Tick)

  • False (Red X)

  • Incomplete (Yellow Pencil Icon)

  • Cannot Assert (Gray Question Mark)

Rule evaluation for multiple conditions

In this example, we have created two conditions for WalkMe to play:

  1. One for either of two URLs containing:/partners OR /cart-page.

  2. One for specific day of the week: Tuesday.

We can see from the markers beside each line that one of the Current URL conditions is evaluating as true and one as false, and that the Date condition is also evaluating as true.

If at least one of these conditions is true, then the final evaluation is true because we're using the "Or" operator between the conditions. In this example, our SmartTips Set will play, as shown by the green tick at the top of the Condition Builder window.

Rule evaluation for the overall condition

Note

When looking at evaluation, always check theoperator(s) between rules/conditions to see if it is AND or OR. This is also called an operator, which might be confusing, but is only used between rules/conditions and is not specific to one rule.

In the next section, we will begin to talk about how to structure conditions to ensure your WalkMe content works efficiently.

Exercise: Use the Condition Builder

Below is a simulation that will guide you through using the Condition Builder to build conditions for a SmartTips set. The simulation will replicate what you will experience when you build in your own Editor.

Summary

Creating Conditions Using Condition Builder
  • The Condition Builder is a fundamental part of building with WalkMe. It is found everywhere.

  • Using the Condition Builder is how we will determine how content plays.

  • WalkMe evaluates these rules in the background as users interact with your webpage or application, thus determining how the content behaves.

Related Resources

Condition Builder Knowledge Base Article

This article includes an overview of the Condition Builder.

View Article

Rule Types

This article from our Knowledge Base covers the Rule Types available.

View Article

Log in to track your progress & complete quizzes