Lead generation

Chatbots and virtual assistants can be a great source of new leads for your business. You can run various lead generation chatbot campaigns on multiple channels, including Facebook Messenger, SMS, and your website pages. Every purchase starts with a conversation, and your virtual assistant is a perfect tool to get these conversations going.

In this guide, we will check various options for chatbot-powered lead generation and show you how easily Activechat can handle even the most complex lead generation scenarios.

Some features described in this guide will require a basic understanding of a visual chatbot builder in Activechat. Please check this introductory guide to building conversations visually if you didn't do it yet.

Lead generation chatbot flows

Since every part of conversational AI in Activechat is based on various chatbot skills, you should use exact same approach with your lead generation campaigns. The process is extremely straightforward:

  • Design a conversation flow for your lead generation campaign

  • Trigger this flow in a certain communication channel

  • Collect lead data and send it for further processing

We'll start this guide by building a simple lead generation sequence that can be used to collect visitors' data on your website pages. The basic parts of this flow are:

  1. The Hook. Something that grabs your visitor's attention and invites him or her to chat. The hook can be a simple message, a question that continues the inner dialogue that customers may have in their mind, an offer, or anything else that is interesting enough to get the customer's attention.

  2. The Flow. This is a quick engagement flow that builds a quick relationship with a customer. The goal is to collect data about the customer that will be used to rate and classify this lead and lay some foundation for further interactions (like arranging a call or visit).

  3. The Integration. This part of a chatbot lead generation flow will send lead details for further processing. It can be a simple email sent to your virtual assistant's admin address, or a more complex integration when lead data will be pushed directly to your CRM or another backend.

Setting up the hook

Let's start with an extremely simple lead generation campaign that will be triggered right from the beginning of a conversation. That means we can put the whole flow into the /start skill of your virtual assistant.

Here's the hook message in the visual flow builder:

The hook is made up of three messages - welcome text, image, and another text with a button. This is how it will be rendered in the actual conversation:

This message will be sent to every new website visitor (or any new Facebook user sending a message to your page, if you have a Facebook Messenger channel connected).

If you are following the guide and building this skill in a visual flow builder, don't forget to hit the blue "RUN" button in the top right corner of your screen to deploy your changes to the cloud virtual agent.

Let's suggest that the offer in the hook is attractive and the customer clicks the "Sure! Please do." button. Now we have to get the customer's data and send the actual coupon.

Building the flow

Once your visitor is ready to get the coupon, we need to get some data in exchange. For simplicity, let's limit this data to the visitor's first name and email.

Since we may have multiple lead generation campaigns with different hooks but similar flows, it makes sense to arrange this part of a conversation as a separate skill. It will allow you to re-use the sequence later in other similar situations by triggering that skill.

Let's hit the "+" button in the visual builder and add a new skill, naming it something like "send_coupon" (you can choose any other name if you want, just keep in mind that only Latin characters, digits, and underscores can be used.

The skill name is actually the name of the event that will trigger this skill in a conversation. You can use the SEND block to trigger events from anywhere in the bot. Read more about events and skills in Activechat.

Let's start building the flow for your new skill:

This skill is also very straightforward. We use the LISTEN block to ask the user about her email, saving the response to the $_email system attribute, and then ask their name, saving it to the $_first_name attribute.

Both $_email and $_first_name are system-reserved attribute names. The values you put there will be displayed in the customer profile in your live chat CRM.

Click here for the complete list of system-reserved attributes.

Notice the use of a special kind of quick reply in the first LISTEN block. On some messaging channels (Facebook Messenger or Telegram) it will be replaced automatically with the customer's email available on this messenger, removing the need to type it in manually.

We also added an URL type button to the second message, so that the customer could click it and go to a specific section of the website.

Here's how this skill will render in the actual conversation:

If you check the list of Conversations, this lead will be already there:

Ok, now that we have the customer's data, it's time to send the coupon. You can do it in multiple ways (for example, by setting up automation in your email platform or CRM), but for now, let's just send an email through Activechat.

Creating the integration

First of all, let's send the coupon to the customer. We'll do that right from the conversation flow, using the EMAIL block:

Before using the EMAIL block in your flows, make sure to set up your SMTP server credentials in the integration settings.

Read more about e-mail integration in Activechat.

In the example above, we used the second EMAIL block to send the lead details to our own example address. This approach is ok for manual lead processing and if the number of leads you get is quite small. Here's how we craft the notification email with attribute values that we get in the conversation previously:

Certainly, this kind of manual lead processing is not an option for larger campaigns with hundreds and thousands of new leads. In this case, some advanced approaches can be used.

Advanced integration options

There is a number of approaches that you could use to store and process lead data in Activechat. Let's briefly check the available options.

Google Sheets

With the native Google Sheets integration, you can send lead data directly to your Google Drive. Other teams can access the shared sheet to further process the data.

Click the link below to read more about Google Sheets integration in Activechat.

pageGoogle Sheets


Zapier is an advanced integration tool that helps you connect various applications and send data between them. You can easily integrate Zapier into Activechat by triggering a Zapier webhook with the JSON block.

Zapier can help you send new leads to most CRMs (Salesforce, Hubspot, Zoho, Freshdesk, etc).

Click the link below to read more about Zapier integration.

pageZapier integrations

Custom APIs

The same JSON block mentioned above can be used to send lead data from your virtual assistant to any custom API that your backend system may have. To build this kind of integration, you may need some assistance from a developer.

If you need help integrating your virtual assistant into your business framework, don't hesitate to ping us at ask@activechat.ai for advice. We can suggest the most efficient integration option and even do the development for you.

Validating the data

Making your automated conversation as fool-proof as possible should always be a goal for a conversational designer. Activechat has a set of tools to validate data entered by customer and ask for corrections if the format is not valid.

Let's add a quick email validation sequence to the lead generation flow that we've built before:

We're using the VALIDATION block to check if the value in the $_email attribute is actually an email. Next, we use the SWITCH block to check the validation result in the $_validation_result system attribute. If it is true, the "=true" exit of this block will be triggered and the flow will continue to the next TEXT block asking for the customer's name. But if the validation fails, the SWITCH block will continue to another TEXT that informs the customer about the problem and asks to re-enter the email, returning the flow back to the LISTEN block.

Next steps

You can connect your lead generation chatbot flow to the Facebook Ads campaign to get new leads from conversations on Messenger.

Click here to read more about Facebook Ads integration for lead generation on Facebook Messenger.

You can also customize lead generation flows for different pages of your website and introduce advanced features like triggering the conversation after specific time spent on a page or a specific number of visits.

Click here to read more about advanced website tracking.

Last updated