Table of Contents

Lead Scoring block

What is Lead Scoring?

This feature is available for Professional and Business Plan accounts

Prefer watching than reading? No problem, we've got you covered πŸ‘‡

Lead scoring refers to assigning points to leads based on how relevant they are to your goal. For example, how likely they are to purchase your product.

Basically, you want to identify what your best leads have in common (demographics, acquisition channel, behaviors...etc), and prioritize your leads based on these attributes.

It's a popular method used by sales and marketing teams to increase ROI (return over investment), and we let you do this easily with Lead Scoring block!

Why can't I just use Conditions & Set Variables?

Technically, you can implement lead scoring with Conditions & Set Variable blocks.

However, it's very hectic to do it this way. You'd have to set up something like this for every variable...

For Web (Landbot)

Here is how you must set up the lead scoring block:

Save Score As

Select or create the variable you want to save as the user's final score. This variable must be saved in the NUMBER format.

Rule Group

This is where you set up the score assignment logic.

That means, you will create a scoring logic, based on the answers that were already stored in variables you used in other blocks.

Ideally, you should design rules based on what your best customers or leads have in common.

  1. Choose a variable to create scoring rules for

  1. Set up scoring rules based on the selected variable
    Example: If @budget > $100, +3 points.
    Example 2: If @age > 18 , +1 point.
    1. Meet this condition: You can choose here what kind of condition will be applied to trigger a scoring rule.
    Check the Format of the variable used in each step, and if it is compatible with the condition to be met.

    Ex: You can't use a variable in the String format and check if it is Greater or Smaller than ( > or < ), which is a condition that can only be applied to dates and numbers.
    1. Then assign this score: Choose the score, in numbers, you want to assign when the above condition is met.
      You can assign either a positive or a negative score to that condition (+/-).


If you want to target users that are older than 18 years, you can check if that variable fulfils the condition you have defined, assigning points (a score) to that rule group.

So you must choose the variable @age as the Rule group, and apply the scoring you define for it.

Give +1 point if the variable has a number bigger than 18 (> 18).

  • Add new rules to the same variable: You can add more rules to that same variable.

Please keep in mind that they will be triggered at the same time. So make sure that these rules are compatible with each other.

Ex: If you are checking the condition that @age is bigger or equals to 18 (> or =), you should not have another rule applied to that same variable, checking that @age is less or equals to 18 (< or =) at the same time:

In this case, if the user's age is 18, the score will be 0, as it will rest and sum 1 point at the same time, which is not the desirable output.

Add Rule Group

You can add as many rule groups as you want, adding specific rules for each one of them.

Output - Final Score

In the end, the block will calculate all the scores you have attributed to each Rule Group, and save them in the variable you have defined in the Save Score As field.

If the rules you have applied do not apply to that lead, the variable will be saved with the value 0 (zero).

A lead score is calculated, now what?

You can now split the flow based on a user's lead score. You can do so using Conditions block.


Let's say you have a limited number of Sales Representatives on the team AND...

  • You want to prioritize their time to chat with your best leads live. So lower score leads will wait for email replies.
  • You decided that a lead score of 10 is a good threshold.
    Then you can set it up like this:

Why is there a "Failed" output for this block?

In some cases (e.g. wrongly formatted conditions), the score calculation might fail. Therefore, we recommend setting up a failed path to avoid a dead end in your bot flow.

Can I assign scores based on data NOT collected in Landbot?

Yes! To assign scores based on data not collected in the Landbot flow, such as UTM tags, you just have to set them up as Hidden Fields.

In other words, you will pass these data to Landbot as URL parameter, then store them as variables.

Please check this article to learn more on how to use Hidden Fields.

For WhatsApp

This block works exactly the same as in the Web channel.

For Facebook Messenger

This block works exactly the same as in the Web channel.

How did we do?

Keyword Options πŸ”‘ Assign keywords to buttons (WhatsApp and Facebook)

Persistent Menu