Posted on Leave a comment

Intents and Insights (and some small talk too)

Intents training

Flip the switch. Keeping every advanced feature that we already have, Activechat is now one of the easiest-to-use platforms for smart natural language bots.

If you’ve ever been confused by the advanced features of our visual chatbot builder, it’s time to relax. With our recent “Intents and Insights” release, your smart AI agent is ready in minutes and keeps improving forever. Watch the video for a short (10 min) demo or keep reading!

Watch the 10-minute demo of Intents and Insights


The intent is something that your customer wants to achieve. It can be a question, issue description, request, order, or any other action that requires your business to respond. In Activechat, you can define thousands of different intents, and each of them will be performing one of these three actions:

  • Simple response – to provide an instant answer that does not require any further action (like in “What’s your opening times?”)
  • Trigger skill – launch a sophisticated sequence of actions that may include additional questions to customer, accessing your CRM or database, processing data, etc. Fits best for tasks like appointment setting, lead generation, checking order statuses, accessing balance, and so on. 
  • Start live chat – choose this option to handle the conversation to a human agent for complex requests which are difficult to automate.

To define your intents, open “Automation – Intents” in the bot menu. This is where you list phrases that your customers may be using when messaging your business. Once you seed each intent with 5-10 phrases that your customers may use to describe it, the natural language understanding engine will start guessing similar phrases and trigger the intent even if the customer re-phrased it or mistyped.

Intents can be organized into groups and sub-groups. For example, in the banking domain, you may have an “Account actions” group with “Checkings” and “Savings” subgroups for different account types.

👉 Read more about Intents in our manuals.

Small talk

For some bot languages, we’ve introduced a set of “small talk” intents into your agent template. These intents keep the conversation human-like, with phrases like “How are you?”, “Are you a bot?”, “Can you help me?”, “I’m feeling sad”, etc. To edit these intents (or remove completely if you don’t need it), open the “Small talk” category in the intents tree.

Please note that when you start building up your intents, some phrases from the “Small talk” section may be conflicting with phrases that you use in other intents’ definitions. If this happens, consider removing some of your Smalltalk intents.


Intents are good, but how do you know which phrases your customers use? Most conversational designers will be guessing that or digging into individual chat transcripts message by message. We simplify that process by grouping all messages sent by your customers within a specific time period into “topics”. Each of these topics will contain messages that seem similar to our AI. All that’s left to do is tick some checkboxes and add these phrases to the definition of specific intent.

Go to “Automation – Insights” in the bot menu and choose the source of your Insights. It can be either of:

  • Chat history – for conversations that are already happening on your website (if you have our chat widget installed)
  • Zendesk chat transcripts – to import messages from your Zendesk account
  • Text file – to import messages from plain text files (one message per line)
Just tick the boxes to add new phrases to intents

👉 Read more about Insights in our manuals

These tools, combined, can make the process of building your smart AI agent and automating your routine customer care tasks easy as never before. Just flip the switch in the bot settings to change the default NLP engine from “Dialogflow” to “Intents and Insights”.

If you want to use “Intents and Insights” engine in your existing bot, follow these simple steps:

  1. Go to the “default” skill, delete everything except the “CATCH” block and connect NLP block to the CATCH (don’t mind the error message)
  2. Add the “_default_fallback” skill that will be triggered if none of the intents was detected.
  3. Add the “_start_live_chat” skill for human escalation intent.
  4. Go to bot settings and flip NLP engine from Dialogflow to “Intents and Insights”
  5. Run the bot.
  6. Add any other intents you may need…
  7. Enjoy!

Again, these steps are required only if you’re converting an existing bot. When creating new bots from scratch, you’re good to go instantly!

Posted on Leave a comment

GPT-3 for live chat makes life easier for customer service agents

The vision behind Activechat is to make the most advanced AI technology easily available for customer care applications even if your team has zero technical background. This vision empowers our natural-language integrations, sentiment detection, and other advanced features packed into our visual chatbot builder. But there’s more to it, and we’re happy to introduce our recent integration with OpenAI’s beta of their GPT-3 model – GPT-3 for live chat.

GPT-3 is a mega machine learning model, created by OpenAI, and it can write it’s own op-eds, poems, articles, and even working code. As a result of its humongous size (over 175 billion parameters), GPT-3 can do what no other model can do (well): perform specific tasks without any special tuning. You can ask GPT-3 to be a translator, a programmer, a poet, or a famous author, and it can do it with its user (you) providing fewer than 10 training examples. Damn.

Dale Markowitz

Activechat has partnered with OpenAI team to build something that looks like real magic. Once you describe the context of your business in a plain natural language and provide a couple of example questions and answers that your human live chat agents may encounter in their day-to-day conversations with customers, we can use the power of GPT-3 to provide instant hints to your agents to help them answer almost any question that a customer may have.

Let’s look at some real-life examples of this amazing tech.

Bike shop – default settings

Imagine that you’re the owner of a bike shop selling hundreds of bikes from various manufacturers. Your website has a lot of traffic and you introduce live chat to help your customers make their choice and grow your revenue. After a week of accepting incoming chat requests, you suddenly realize that training your agents so that they can really answer this crazy amount of questions from customers-to-be takes tons of time and is quite costly. You have your knowledge base, but most of your agents feel lost when it comes to answering specific questions, and looking for the correct answer often takes quite a lot of time.

Luckily enough, your live chat solution is powered by Activechat, so you can go to “Settings – Integrations – OpenAI” and describe your business case in plain natural language:

This is a conversation between a website visitor and a smart virtual assistant. The conversations are happening across various pages of the website that is selling bicycles, and virtual assistant can answer all kinds of questions about various bike brands and models and help choose the right one according to description made by the visitor.

That’s all you need to seed the OpenAI’s GPT-3 for live chat

Next, you provide answers to three questions that your customers ask most often:

Q: What’s the difference between a carbon and regular bike?
A: The primary difference between carbon and aluminum comes down to weight and ride quality. Carbon frames are usually a bit lighter than aluminum — up to a pound for mountain frames and up to a half-pound on road frames.

Q: How much does a good bike cost?
A: Road bikes range between $350 and $700, Mountain bikes around $1000, Single-speed bike – $400, Beach cruiser $200-300, Recumbent bike $1000-2000, and Kids’ bike (3-8 yrs) will be $140-200.

Q: How do I service my bike?
A: You should regularly service your bike to ensure it is running efficiently and that there are no worn or damaged components. The more you ride the bike the more frequent you should be servicing it, especially after riding in dirt, sand, mud and in the rain.

Guess what? Your training is complete!

Now your agents can pull the “Show AI hints” tab in their live chat interface, and on every new message from a website visitor, there will be 2-3 ready-made answers suggested by the GPT-3 engine.

GPT-3 for live chat provides instant answer suggestions

Clicking any of these hints will copy the answer to the message window, and your agents can send it immediately or edit it, adding specific links to your product pages or other resources. Based on our research, this can reduce the time needed to find and type the answer by 70-80%!

If you’re not satisfied with what you see, just hit the “Refresh” icon and a new set of hints will appear. These hints are powered by all knowledge that the Internet has (GPT-3 model is trained on Common Crawl data, Wikipedia, and multiple other data sources, including a huge amount of books). This makes suggested answers sound human-like and in most cases, they will be relevant, useful, and valuable to your customers.

AI-powered live chat for mobile phones outlet

Another use case from one of our customers – an online shop selling mobile phones. Again, the problem is quite similar to the bike shop above – customers repeatedly ask questions that require a solid chunk of knowledge from customer service agents. Novice agents keep forwarding these questions to more experienced team members, and instead of taking care of really complex queries, these team members keep wasting their time responding to the same questions again and again.

After they introduced GPT-3 for live chat, their seeding settings would look like this:

GPT-3 settings for mobile phones retailer

And here is an example conversation that was made completely by sending GPT-3 answer suggestions, with zero time required from the human agent:

GPT-3-powered live chat conversation

How to use GPT-3 for live chat?

Currently, OpenAI’s GPT-3 is in a public beta. Activechat partnered with OpenAI team to include these amazing features into our live chat platform, and they are available for all our users on Team and Company plans. Here’s how to jump-start your AI-enabled live chat:

  1. Go to “Settings – Integrations – OpenAI” in any of your bots and type your business description in plain natural language.
  2. Add three questions that are most relevant to conversations happening on your website.
  3. Ask your live chat agents to pull the “Show AI hints” tab below the message editing window.
Accessing OpenAI’s GPT-3 settings in Activechat

Yep, it’s that simple! We can’t wait to hear about your use cases, so please feel free to share your stories of GPT-3 making life of your human live chat agents easier.

Posted on Leave a comment

How to show WooCommerce products in your Activechat chatbot

Your chatbot is a great way to generate extra sales for your eCommerce store. And with ActiveChat is extremely simple to connect your WooCommerce webshop with your chatbot.

In this tutorial, I am going to show you how to show your WooCommerce products in an ActiveChat chatbot.

Connect WooCommerce to ActiveChat

First, we need to connect WooCommerce to Activechat, so we can use the products from WooCommerce.

Make sure your WooCommerce store has everything in place:

  1. Your website should have a secure connection protocol (HTTPS).
  2. Smart permalinks should be enabled in WordPress settings. Go to Settings → Permalinks in your WordPress admin panel.
  3. Legacy REST API access should be enabled in the WooCommerce settings. Go to WooCommerce → Advanced → Legacy API and check that setting:
Enabling the legacy REST API

Once this is in place, go over to ActiveChat and log in.

Open Settings → Integrations in the main chatbot menu on the left and click on the gear icon in the WooCommerce tile. Then fill in the URL of your store and click on “Connect”:

Connecting WooCommerce to ActiveChat

Now, fill in your username and password:

Logging into WooCommerce

Then, there comes a window that will ask for permission to access your WooCommerce store by ActiveChat. Click on “Approve”:

Granting ActiveChat the necessary permissions

Once you have approved, you will be taken back to ActiveChat and the integration settings will display all the products, categories, and variations of your WooCommerce store:

WooCommerce store data in ActiveChat

Show all categories in your chatbot

We have connected our WooCommerce store to ActiveChat. So, now it’s time to create the actual chatbot and show the different categories.

Important: Make sure that your WooCommerce categories have their own images because these will be used in the chatbot. If you didn’t set them yet, go to Products → Choose a category → Add thumbnail.

First, I will make a Welcome message, which has a greeting message and a button to go to our categories skill:

Welcome message in the Visual Builder

Which looks like this on the front-end:

Example of the Welcome message in Facebook Messenger

So, in our “woo_categories” skill (which shows all the categories of your store) we need to add an element after the catch event. You can do this by dragging a line from the Catch event to somewhere in the editor and then click on Blocks → eCommerce → Category:

Adding a new Category block in the “woo_categories” skill

This should look like this now:

The Category block in the “woo_categories” skill

Now, click on the WooCategory block and use the following settings:

  • Single/Multiple = Multiple
  • Category = 0
  • Exclude = 15
The Category block settings

There are also other settings, but you can just leave those ones out because we are not using them right now.

What this block does, is that it grabs all the categories of your WooCommerce store, except for the category with the ID 15. The reason why I leave that category out is that it is the standard Uncategorized category, and I don’t want that to show it in my chatbot.

But the ID 15 is only applicable to my category, so how do you find the ID of your Uncategorized category?

Go to Settings → Integrations and click on the gear icon again in the WooCommerce tile:

Opening WooCommerce settings

Then an overview of your WooCommerce categories comes up. Search here for your Uncategorized category and look up the ID:

The ID of the Uncategorized category

You need to use that number in the Exclude setting of your WooCategory block.

Okay, now we get back to our chatbot flow. 

Next, go back to your WooCategory block. Click on it and scroll down, hover over the + icon and click on the square icon:

Adding a new button to the Category block

Now, fill in “Show products” as button name, so it looks like this:

Example of the Show products button in the Category block

Then, hit “Run” on the top-right corner to update your chatbot. Now your chatbot shows all the categories of your WooCommerce store, like this:

Example of the product categories in Facebook Messenger

Show products per category

But, we also want to show the products per category, right? 

Okay, let’s do that!

Drag an arrow from the Show products button in your WooCategory block to somewhere in the editor and then click on Blocks → eCommerce → Product:

Adding a new Product block in the “woo_categories” skill

Then, use the following settings:

  • Single/Multiple = Multiple
  • Category = $_selected_category_id

For the rest, you can use the default settings.

The Product block settings

What this block does, is that it shows all the products from the category you just selected.

Now, scroll down and hover over the + icon and click on the square icon:

Adding a new button to the Product block

Now, fill in “More information” as button name, so it looks like this:

Example of the More information button in the Product block

Now, we show all the products of a category in our chatbot:

Example of the product menu in Facebook Messenger

Show individual products

The last thing we need to do is to show the individual products. 

So, we need to draw an error from the button “More information” of the WooProduct block to somewhere else in the editor and click on “Send to new skill”:

Readdressing to a new skill

Give the Skill title “woo_single_product” and click on “Create skill”:

Creating a new “woo_single_product” skill

Then, draw an error from the Catch block to somewhere else in the editor and click on Blocks → Talk → Image:

Adding a new Image block to the “woo_single_product” skill

Use $_selected_product_image as Image URL in the Image block:

Image block settings

So now we show the image of the product. But adding some text is also nice.

Thus, connect the Image Block with a text Block by adding an arrow:

Adding a new Text block to the “woo_single_product” skill

As text we use:

“$_selected_product_title is an excellent product.

Price: $_selected_product_price”:

Text block settings

This text blocks shows the name of the product and the price. But, that’s not all! We also need to give the user a description of the product, so another Text block:

Adding another Text block to the “woo_single_product” skill

You can show the description by using $_selected_product_description in a Text block:

Text block settings

At last, we also want to let them go to the webshop. So, we can do that by adding a button. Hover over the + icon and then click on the Share icon:

Adding a URL button to the Text block

Then, add “Go to product” as Name of the button and “$_selected_product_url” as URL:

Example of the URL button in the Text block

So it looks like this:

Example of the product description in Facebook Messenger

And when you click on the button, the user goes to your webshop:

WooCommerce store product page
Posted on

How to survive a $510,000 launch on Appsumo

How to survive a $510,000 launch on Appsumo

It was January 2019, and we’ve been getting ready to launch our product on Appsumo. They are the largest software deals marketplace with over 1.5 million subscribers which I felt made it the perfect place to officially launch a new kind of chatbot platform to the world.

Launching on Appsumo is a lot of work. It took the rest of the team and me almost three months of meetings, online demos, content building, and negotiation to secure a deal date.

Before the official launch, our cost for a single chatbot having up to 500 conversations was $49 per month. We planned to offer Sumo-lings, the collective term for AppSumo’s subscribers, lifetime access to a single bot for the same price. This was an incredible deal that both teams were confident would be a hit, and we launched Activechat into the Appsumo Marketplace.

The Start

The impact was immediate. Before the launch, the record amount of daily visitors to our website was 150. After the launch, it leaped to 1,500 a day, but that extra attention almost led to the end of Activechat. Appsumo’s subscribers are mostly freelance marketers, and small agencies hunting for software tools and services they can re-sell to their customers, and they were not happy with the terms of the deal.

“One bot per coupon? BS, give us more!” was the type of comment on the deal page.

This initial negative feedback reflected low sales of the deal. After discussing with the AppSumo team, we increased the number of bots from 1 per coupon to 10 and upped the limit of monthly conversations from 500 to 5,000.

Sales and comments improved but Sumo-lings continued to demand more. A group of long-term AppSumo customers approached me and suggested I offer unlimited bots, with unlimited conversations for those who bought the maximum of 5 deals for $245. This is where I should have said “No” and stuck with ten bots per coupon, but I was obsessed with making this launch a success and agreed.

Sales sky-rocketed. In two weeks Activechat made it to the #1 product in Appsumo history with over half a million dollars in sales, 6,000 paying users, and over a hundred 5-star reviews for our product. This influx of users put a new level of demand on the tool and the team. The support team worked 24-hour shifts to fix issues and answer questions as soon as they were reported. Customer feedback was healthy and positive. Sumo-lings accepted that Activechat was a new product, and they were happy to wait for new features to be delivered.

The launch provided a massive cash injection into the company, the users were happy, and I was confident that we would build on that success to attract more monthly revenue from regular subscriptions.

Everyone was happy!

The Tool

A quick note about the Activechat product. A long time ago, I started as a digital marketer specializing in chatbots. There are a lot of cool products out there, but they lack something important. Regular chatbots are limited to fixed responses to a user tapping pre-set buttons or typing a few phrases. This is restricting, and it’s why most people do not like chatbots. When two people talk their conversation does not follow a strict path. Sometimes they answer a question with another question, sometimes they change topics mid-sentence or take a while to figure out what they’re trying to say.

I dreamt of a drag and drop tool that would allow me to build chatbots capable of having complex natural language conversations for my clients. I could not find such a tool, so I decided to make one myself, and that’s how began.

Activechat goes far beyond a few menu buttons and simple, canned responses. A well built and trained Activechat bot can hold tens of thousands of real-time, natural conversations with visitors every day without the need for human intervention. 

Combined with the ease of a drag and drop builder, I was looking forward to seeing the different bots built by this new army of Activechat users and a rise in sales.

Life proved me wrong.

The Catch

After the Appsumo launch, we offered fully-featured Activechat subscriptions on a freemium self-service model. We targeted small to medium-sized businesses with the belief they would trial the service and move to a paid subscription for additional bots and conversations. 

Freemium growth was strong, with around 1,000 sign-ups each month for the next six months. Guess what? We did not close a single sale and had zero monthly recurring revenue!


Demand was also high for lifetime deals. Sumo-lings were selling on their unlimited bot accounts for up to $1,500 in some Facebook groups. People obviously wanted Activechat, so why weren’t we selling more regular subscriptions?

And there was another problem that I was really worried about. Despite multiple investor and marketing pitches, I could not explain to myself – what’s the problem that Activechat is solving.   

The Frustration

Our first thought was that our freemium model was too generous. In July 2019, we limited our Free plan to a simple set of features and rebuilt our onboarding series to highlight the benefits of the premium subscription. This change barely moved the needle. We went from zero conversions to slightly over 2%, well below our forecasts.

By the end of 2019, the entire Activechat team felt defeated after almost two years building a powerful product that hardly anyone wanted to buy. 

Is that all we’re good for?

To make matters worse, we were under extreme pressure from Appsumo users who demanded immediate delivery of all the features that we promised. Only a few Sumo-lings were actively selling chatbots to their clients based on the powerful natural language features we were so proud of. The demand was mostly for features already offered by traditional chatbot services, and that was exactly what we did not want to be.

There was a major disconnect between the product we were building and the audience we were targeting, and if we didn’t find it soon, Activechat was going under.

The Change

The big change came in December 2019 when Activechat was accepted into the 3rd batch of Overkill Accelerator. Overkill is a VC fund in Latvia to coach and fund startups. Working with the program and other SaaS founders, it became apparent what we had been doing wrong. 

Activechat creates bots capable of answering questions for entire teams of sales and support staff 24×7, and you really can do things 10x more complex and 10x faster in Activechat than with any other competitor product. Even with our drag and drop builder, it is a significant investment of time to design and build a fully conversational natural language chatbot. That investment of time is overkill for most small to medium businesses who just want to deploy a simple chatbot with more traditional features. 

With help from the accelerator program we’d discovered we were targeting the wrong people. The primary audience for Activechat wasn’t small to medium businesses looking for a DIY chatbot. It was large Enterprises looking for a solution to a specific problem!

Enterprise customers wanted help with their customer service and communication. They wanted to reduce long waiting times for customers, lower the high workload for support teams, speed up internal requests, convert more sales and help leads, clients, and staff gets the answers they needed faster. 

Armed with this knowledge, we rewrote our pitch and approached a large telecom company that immediately switched to us from a competitive product. That relationship further refined our value message and opened doors to other Enterprises.

This new understanding of the specific problem we solve for an Enterprise rebuilt our cold outreach program. We’ve built a new sales team of 2 lead research specialists and one sales development representative who do their best to close demos made by me as founder, and we started the cold outreach that actually brings us demos and starts to fill in our pipeline. This new approach has increased our monthly revenue from $42 to $3,700 per paying user, and that keeps growing with every new deal!

We now have many enterprise deals in the pipeline, and we’ve been approached by a company with 19 million small business customers to discuss reselling our product to them as an add-on service. We know we’ll have to progress those small businesses with more structured hand-holding for them to get the most out of Activechat. We know this because we learned that customers might love you for your product, but they only pay you for solving their problems. 

The lesson learned

Activechat no longer builds products; we solve problems. That’s how we survived the most successful launch ever on Appsumo. 

The Tool (revisited)

Now we’re closing a larger seed round with Overkill (there’s still space in it if you’re an early-stage investor reading this!), but most importantly now we know what kind of problems we’re solving for our customers. We also know who these customers are. 

We help large enterprises improve everything that has to do with customer service and communication. We’re fixing long waiting times, the high workload for support teams, low CSAT levels, low conversions, the complexity of multichannel communication, etc. And we’re targeting large companies in telecom, services, SaaS, and e-commerce – they are aware of these problems, actively seek solutions and are ready to pay high prices once the solution is clear. 

To the powerful chatbot platform that we already had, we’ve added live chat CRM and conversational intelligence AI tools, and now we provide a complete solution for all customer communication needs. We help automate mundane support conversations with chatbots and we help improve the efficiency of more complex conversations carried out by humans. Activechat helps bots and humans work hand in hand for awesome customer service and increased sales.

Better customer service for enterprises
Better customer service for enterprises

We’re still perfecting both our software and our presentation skills, but it’s getting better every day and we start feeling confident that we can compete with big players like Intercom, Drift,, or even Salesforce – we have a vision and a secret sauce that helps us do that.

The Ask

Everyone’s tired of answering the same support questions over and over again. They are tired of confusing IVR menus, long waiting times, and soulless announcements. We know how to make automated conversations bring value and feel human, and we know how to reduce stress and take the load off of human support teams.

If you’d like to see how Activechat can massively reduce the demand on your sales, support, and internal teams while increasing your service to Wow! level then let’s get in touch. 

If you can introduce us to a large enterprise that does a lot of customer communication, we can help them reduce costs and increase the quality of service at the same time. 

If you’re an investor potentially interested in joining our seed round led by Overkill Ventures, send me an email and let’s talk. I’m available at Andrew [🐶] 

Let’s talk?

This article was edited by Stephen Gordon from Email Marketing Superstars

Posted on Leave a comment

How to run multiple lead generation chatbot campaigns with Facebook Ads

Multiple lead generation chatbot campaigns with Facebook Ads

How to customize the lead generation chatbot and run chatbot ad campaigns on Facebook

Reading time: 15 min


So, your basic lead generation chatbot is up and running. Cool. Now, let’s use it to get even more leads with Facebook Ads campaigns.
Chatbots have some important advantages over traditional lead generation tools like website forms or even Facebook Lead forms. Once users click the “Send message” button in your ad, you get them as leads immediately (instead of waiting until they complete the form), and instead of a dull form with multiple questions you can reward them instantly with some content and then collect the information in the conversational form. This alone can dramatically increase your conversion rates!
This manual will walk you through the process of customizing your chatbot flow for multiple lead-generation campaigns and describes the process for setting up Facebook Ad campaigns to get more leads into your bot.

Ready? Let’s go!

Table of contents

How to customize the chatbot for multiple lead gen campaigns

The flow of the basic chatbot for lead generation that we’ve already built is designed to start the lead generation campaign immediately when users start their conversations with a chatbot. Quite often, though, this is not an opportunity – your chatbot will live on your website or Facebook page, and conversations should start with another welcome sequence, which will  introduce the bot and inform the user what it can do. 

So, first of all let’s build a dedicated lead generation skill in your chatbot (and maybe duplicate it for different lead gen campaigns). If you’re not familiar with chatbot skills yet, don’t worry – we have a complete description of chatbot skills in our manuals. 

Move the lead generation flow to a dedicated chatbot skill

Sign in to your chatbot dashboard, go to “Bot builder – Skills” in the menu on the left and choose the “start” skill tab. Zoom the skill out (if necessary) so that every block is visible. Then, hold the “Shift” on your keyboard and drag around all blocks to select every block except the first CATCH block that starts the skill. 

Now, right-click any selected block and choose “Copy to clipboard” from the right-click menu. 

Click the blue plus sign button in the skill tabs area to add new skill to your chatbot. We’ll use this skill for our lead generation sequence, and we’ll be running ad traffic directly to that skill, skipping the welcome message. Give your new skill a name (in this example, I’m using “lead_gen_1”).

Right-click the canvas again, and choose “Paste from clipboard” to paste your lead generation sequence here. Don’t forget to connect the CATCH block that starts that skill with your pasted sequence, and click “RUN” to compile your bot.

To test your new skill, click the “Test your chatbot” button and type “/lead_gen_1” in the conversation. This will trigger the skill, and your lead generation sequence should start. If it does not, most probably you’ve either forgot to click “Run” or didn’t connect the CATCH block with the rest of the sequence. Fix it. 

By the way, if you type “/” sign followed by the event name in your chatbot conversation, it  will trigger that event and start the skill. You can learn more in the “Triggering chatbot skills” article in our manuals.

Customise the “start” skill with a welcome message

Now we need to remove the lead generation blocks from the “start” skill and make this skill more generic, suitable for your Facebook page or website chat widget.

Like many other things in Activechat, this can be done in multiple different ways. 

The easiest option is to choose “Bot builder – Welcome message” in the main menu on the left, and click “Restore skill” button. It will replace the content of your “start” skill with a predefined template that was built to support our “quick and dirty” welcome message from the bot settings. Once you click it, enter your new welcome message and click “Save” and then “Update skill”

You can also use visual flow builder to design more complex welcome sequence – for example, to include a button that will take your customers straight to the lead generation flow. To do so, toggle the “Enable visual builder for this skill” switch in “Bot builder – Welcome message” and open the “start” skill from “Bot builder – Skills”.

Delete default blocks from the “start” skill (remember to keep the leading CATCH block intact!) and use TEXT (or any other blocks) to build your welcome sequence. You can add an “event” type button which will take your customers to the lead generation skill – just use the same event name (“lead_gen_1” in our example) for that button.

What if you have multiple lead generation campaigns? Can this be done in Activechat? Absolutely!

Duplicate the lead gen skill for another campaign

You can have any number of lead generation skills in your chatbot, each customized for specific use case or ad campaign. We’ll look into setting up chatbot ad campaigns on Facebook in a moment, so let’s start with duplicating our lead gen skill and changing its content.

Imagine that you’re planning another lead gen campaign that will not require customers to enter their company name or phone number. Just two simple questions – customer’s name and email, and that’s all. We’ll duplicate our lead gen skill and remove unnecessary parts. 

Open your lead generation skill in the visual builder (“Bot builder – Skills”), right-click the skill tab with your mouse (in our example it’s “lead_gen_1” skill) and choose “Duplicate skill” from the right-click menu. A new skill will appear with a temporary name, and you can right-click it’s tab to edit the name (choose “Edit skill” from the right-click menu). 

IMPORTANT! Do not forget to change the name of the event that will be triggering this skill! If you forget to do this, the same event (“lead_gen_1” in our example) will be triggering both skills simultaneously. This will definitely cause a lot of confusion – messages doubled, different messages displayed at once, etc. So, click the CATCH block at the beginning of your new (duplicated) skill and change event name to “lead_gen_2”, for example (you can choose any other event name if you want).

Now, customize your new flow by removing unnecessary blocks and adding extra messages / questions / etc that you need (see the video above for details). Once you’re done with it, click the “Run” button to deploy your changes to the cloud. 

Now, you will have two independent lead generation skills in your chatbot, each of them triggered by it’s own event. You’re ready to start driving traffic to these skills with ad campaigns!

How to set up and run Facebook Ads with the chatbot

As you may have already noticed, every Activechat bot is built around various skills that it can handle, and in this example we’ve already created two different lead generation skills – “lead_gen_1” and “lead_gen_2”. The best part about Activechat architecture is that any of these skills can be triggered independently for new chatbot users, skipping the welcome message. One of the most frequent use cases for this is running ad campaigns that drive traffic to specific bot skills (lead generation in our example). Once that skill is completed, users can access any other skill in the chatbot according to the conversation flow that you’ve designed. 

As an example, let’s see how you can set up Facebook Ad campaigns to drive traffic to each of your lead generation skills. 

Campaigns that send traffic to Facebook bots are called “Click-to-Messenger” campaigns in Facebook Ads Manager. Their primary goal is to start new conversations with your Facebook Page. When you have your chatbot connected to your Page, these messages can be handled automatically by the bot. 

So, start with opening your Facebook Ads Manager and create new campaign, choosing “Messages” as your marketing objective.

Name your campaign and click “Continue”. Next, at the “Ad set” step, choose “Click to Messenger” as destination, set your ad audience, placements and budget settings exactly as you do with other ad types, and continue to the ad setup.

For those of you who have multiple Pages in their ad accounts, it’s essential to choose the right page in the “Identity” section (it should be the same page that your bot is connected to).

Building your ad creative is similar to any other ad type on Facebook – choose the image or video (or gallery), headline, text, description and CTA. We advise to use “Send message” as CTA to make it clear for your customers what will happen when they click your ad. 

Example below shows a creative for a pizza delivery chatbot, but it can be customized for your business case (particularly, lead generation).

Once the creative is in place, you should continue to Messenger setup. Scroll to that part of the ad setup screen and choose “Create new”. Later, when you have some Messenger templates designed, you will be able to choose one of them by switching to “Use existing” instead.

Choose the “Start conversations” template and click “Edit” to customize. Once you click “Edit”, another window will pop up, pre-populated with some standard questions from Facebook (we’ll get rid of it in a moment).

Messenger template consists of two parts – greeting and customer’s actions. When customers click the CTA button in your ad, Facebook will send them the greeting and expect them to take some action.

First, choose what kind of greeting you would like to use in your click-to-Messenger ad. Your options are “Text only”, “Text and image” and “Text and video”. In the example above we’ve been using “Text and image” to make the customer experience more consistent (using the same image in the template that we used in the ad creative), but the choice is completely yours. In certain situations “Text only” option will work best.

Next, type the greeting text in the box below. You can personalize it with the customer’s first, last or full name. Designing this part is crucial for your conversion rate and ROI since it will define the first impression that the customer gets from your chatbot.

Finally, you need to design certain “actions” that the customer is supposed to take upon seeing the initial “greeting”. Scroll down to the “Customer Actions” section and choose which options you would like to use. It can be either “Buttons” or “Quick replies”. Do not use “Frequently Asked Questions” or “None” – both of it will reduce your conversion rate dramatically since these options are for Pages that do not have a chatbot connected.

Based on our research, the “Quick replies” option works best in terms of interaction quality, but your case can be different. To learn more about differences between buttons and quick replies, check “How to use buttons and quick replies with Facebook Ads” article in our manuals. For now, let’s stick to quick replies.

Usually, you will want just a single quick reply that customers will click to start the conversation with your chatbot. Reducing the choices in your Messenger template will increase conversions. Keep the quick reply text simple and focused on your offer.

Since you already have different chatbot skills in Activechat, you can experiment with multiple quick replies, each triggering different (or even the same) skill in the chatbot. Refer to “How to use buttons and quick replies with Facebook Ads” article and don’t forget to share the results of your experiment with us!

In our simple example, we’re using two quick replies (“Sure!” and “Why not?”) that will trigger the same skill in the chatbot.

Edit quick reply text and click “Connect your bot” to specify the skill that should be triggered once the customer clicks on this reply. Add your skill name (actually, the name of the event that triggers that skill), preceded by the “/” sign. In the example above, we’re using the “fb_ad1” skill, but you should replace it with the name of the actual skill that should be triggered by this ad. Since we’ve named our lead generation skills “lead_gen_1” and “lead_gen_2”, choose one of these names here. 

IMPORTANT! Please note that if you do not specify the event name, the “default” skill will be triggered when the customer clicks that reply. The reason for this is that quick replies are treated as regular messages sent by your customer, and the “default” skill is triggered on every incoming message. The text of the quick reply will be available in the $_last_user_input system attribute. When you specify the event name in the “Connect your bot” box, the “default” skill will not be triggered.

You’re almost there! Give your Messenger template a recognizable name (remember you can re-use it in other ads and campaigns?) and click “Save and Finish”. You can also click “Preview on Messenger” to see how the template will work – Facebook will send the message to your own Messenger account.

Now you can preview your ad on Facebook, and publish it once you’re satisfied with the result. Don’t forget to experiment a lot, since fine-tuning your Messenger template and the conversation flow in your Facebook ads chatbot skill will have a dramatic effect on your conversion rate and ROI.

Repeat the process above for any other lead generation ad campaign that you have in mind, choosing various chatbot skills as Bot Payloads for your buttons and quick replies. 

Quick reminder: do not forget to click “Run” in Activechat bot builder when you copy or create new skills. Until you do this, the skills will not be deployed to your actual chatbot and Facebook ads will fail. Always test your ads by previewing it on Facebook to make sure that the right template is used, and the correct skill is triggered when the user performs an action. 

And, last but not least, keep experimenting and be creative with your conversation flows. As said before, even the most subtle changes can affect your ad performance immensely!

Not sure what's next?

Do you find this useful? Click to share with other bot builders!


© 2018-2020 Activechat, Inc.

existing users

Posted on Leave a comment

Build a chatbot for lead generation in 15 minutes

Build a chatbot for lead generation

and set it live in 15 minutes


Table of content:

Welcome to the world of chatbots! 🤖

Getting started with a technically complex product is always a challenge, so we’ve prepared this short guide to help you get your first chatbot up and running in a very short time. Reading and watching this guide will take approximately 15 minutes, and your bot will start bringing you new leads in less than half an hour after that – even if you’ve never heard about chatbots before!

IMPORTANT: please add to your address book (white-list the address, or mark the email as “Not spam” if it ended in your spam folder) to make sure that you get our emails with manuals and other important info (like lead data and notifications) from Activechat. 

The conversation in this chatbot is quite simple – it asks for the visitor’s name, then asks a couple of business-specific questions (which you will be able to customize) and finally gets visitor’s email and phone number, sends the data to your email and (optionally) adds it to Google Sheets and your CRM. 

For those of you who already have some background with chatbots and software, we’ve included some extra steps (they are marked with “ADVANCED” tag) to show the powers of Activechat, but you can easily skip them until later.

Ready? Let’s go!

Build a bot from template

Start with logging into your chatbot dashboard and click “New bot”. In the templates, choose the “Marketing” tab and click the “Lead generation chatbot”.

Once you do this, you will be taken to the bot settings page where you can choose a name for your new chatbot and upload an avatar (it will be displayed in the chat widget on your website pages).

Now you can click the “Test your chatbot” button at the top to open the stand-alone chat widget (later, at step 3, we’ll embed it into your website). Walk through the conversation as if you were the visitor of your own website, check your mailbox for that “You’ve got new lead” email when you answer bot’s questions, and let’s see how the conversation can be customized to your specific business case.

Customize the conversation

Now let’s customize the conversation so that it fits your actual business use case. You will love the power and flexibility of our visual chatbot builder, once you’re familiar with some basic concepts

Click “Bot builder” in the menu on the left and choose “Skills”. Don’t worry if you have no idea what a “skill” is – you can check our “Building chatbot conversations” guide later.

Find the “start” skill in the tabs on top of the page and you’ll see some basic building blocks that outline the conversation. Click the block on the canvas to edit its content.

Each message sent by the bot comes from a TEXT block, and you can start with adding your business name and chatbot name in the first two blocks.

After these first messages are displayed, the bot starts listening to the user’s input with the LISTEN block. Actual user responses are saved into chatbot attributes and you can use it later in the conversation. We’ll skip the first LISTEN that is asking for user’s name, and move straight to the second one, which is showing three canned responses (called “quick replies”). Your visitor can click one of these responses as an answer to the bot’s question (“What is your primary objective?”), and you can customize both the question itself and the options displayed by the chatbot. 

Uncheck the “Block keyboard input in the chatwidget” to enable free-form input by the user.

If you want to add more questions, just copy and paste some TEXT and LISTEN blocks, and reconnect them in the required sequence by arrows that you can pull from the connection point at the bottom of each block. Change message texts and don’t forget to change attribute names in LISTEN blocks to save user responses to specific attributes.  

There are three questions in this chatbot template: visitor’s objective, visitor’s company name and visitor’s team size. Make sure that these questions are relevant to your use case, customize it as described above and add or remove some questions if you need to. Just keep in mind that chatbot is sending messages with the TEXT block, and gets responses from your visitors with LISTEN block. It means that every question should contain one or more TEXT blocks and a single LISTEN.

Once the chatbot gets responses to each of these questions, it displays a confirmation message with a button that takes your visitor to some specific page on your website. Again, you can customize everything – the text of that message, the name of the button and the link that it contains. 

There’s a LEAD block after the last question that your chatbot asks. This block is sending lead data to your email address (Activechat will use the same address that you use to log in to the platform). Again, you can customize the content of the “Message” field in the editor to include any extra answers that you stored in user attributes when changing the conversation flow. This data will be delivered to your mailbox together with other attributes that chatbot collected from the user. 

Once you’ve made some changes to the conversation, click the “Run” button in the top right corner of the platform to push the new conversation to your chatbot. It takes 4-5 seconds to build, and you can immediately click “Test your chatbot” to go to the chat widget again. Hint: right-click the “Test your chatbot” button and open the link in incognito mode to restart the conversation, or just type “/start” in the existing conversation to start it from scratch. (Advanced – there are multiple ways to trigger chatbot skills in Activechat, and typing “/” followed by the skill name is just one of them).

Connect the bot to your website and/or Facebook page

Cool, your bot is ready now, congrats! Did it take more than 10 minutes to customize? Your lead generation questions can be too complex then, and it makes sense to reconsider your conversation flow. Remember, keeping the conversations as simple as possible is the key to getting more leads and conversions!

Now, let’s connect this chatbot to your website and Facebook page and put it to work.

Facebook Messenger chatbot

To connect the bot to your Facebook page, go to “Settings – Channels” in the main menu on the left, and click the gear icon in the “Facebook” tile. Authenticate with your Facebook account and click “Connect” to the right of the page that you want your bot to be connected to. It will start the conversation that you’ve just built for every new user who is messaging your Page. Check our “Messaging channels – Facebook Messenger” guide for more details.

IMPORTANT: Make sure that you have Admin rights for the Page that you want to connect, and that you give Activechat permissions to access that page when authenticate with Facebook for the first time. Hit “Refresh” in the integration settings to grab new pages from Facebook if you’ve been added as Admin there recently. 

Once your bot is connected to a Facebook Page, you will be able to open conversation with the bot on Facebook Messenger right from the “Test your chatbot” button, clicking the down arrow on the right.

WordPress plugin for website chat widget

If you’re using WordPress, the installation of the chat widget is very easy – just install and activate our WordPress chatbot and live chat plugin and paste your chatbot ID in the settings. Bot ID can be found in the “Settings – General – Advanced” in the main menu. For more details, check our “How to install pixel and website chatbot with WordPress plugin” guide.

Adding website chat widget with code

For those of you who use other web platforms, installation can be done by adding some lines of code to the <BODY> tag of your webpage. It will install the website chat widget and activate the chatbot pixel so that your bot will be able to interact pro-actively with your website visitors (more on this in the next series of this onboarding guide).  

Go to the “Settings” menu and click “Install pixel”. Type in your website domain and click “Validate”, then copy the code and paste it into your web page.

Finally, let’s choose and customize the chat widget for your website. Go to “Settings – General – Chat widget” and choose one of the options – “Activechat widget” or “Facebook messenger”. Each option has its pros and cons. Not sure which one to choose? Check our Website chat widget guide. 

Click the gear icon next to the selected widget to customize its appearance – fonts, colors and messages.

Congratulations! Your brand new lead generation chatbot is now live, connected to your website and to your Facebook page! It will collect lead data for you automatically, 24/7, and you can relax for a while and think about how it can be improved in the future. Opportunities are endless – we’ll be adding more advanced features like keyword detection or pro-active page-specific messages in the next series of this onboarding sequence.

Collect leads into Google Sheet [advanced]

This step (and the next one on CRM integration) is intended for users who already have some basic chatbot knowledge and want to explore advanced Activechat features and integrations. You can skip it if you’re just starting and get back to it later when you get used to our flow builder. 

Getting lead data in your mailbox is nice, but when the number of leads grow it can easily become hard to manage. Let’s connect your chatbot to your Google Sheets account and push lead data into the spreadsheet there. 

First, you need to connect your Google account. Go to “Settings – Integrations” in the main menu and click the gear icon in the “Google” tile. When you do this for the first time, the window will show “It looks like your Google account is not connected” message. Click “Connect” to fix this.

You will be taken to the standard Google authentication process, where you will be able to choose one of your Google accounts to use (if you have multiple). Click “Allow” when asked for permissions to access your Google Drive

Once you do this, a list of your Google Sheets (with their IDs) will be displayed in Activechat. Click “Refresh” to update the list when you add new Sheets in your Google Drive.

Create a new empty spreadsheet in your Google Account to store lead data from your chatbot and click “Refresh” to fetch its name and ID into Activechat. 

Now, open the visual flow builder again (select “Bot Builder – Skills” from the main menu) to choose which spreadsheet to use to store lead data. 

Remember that DATA block at the very beginning of your “start” chatbot skill? We did not mention it in the previous explanation to avoid extra confusion – data processing is one of the advanced features in Activechat. We’re using that block in our template to set the value of $google_sheets attribute. By default, it’s set to “false”, and the chatbot is skipping the integration (you’ll see how it’s made in a moment!). Now, when we have Google account connected, we can set this attribute to “true”.

At the end of our lead-generating conversation flow, there’s a SWITCH block that checks the value of this attribute and proceeds with sending the data to Google Sheets only if the value is set to “true”.

Notice that there are no blocks connected to the “≠ true” condition. It means that when $google_sheets attribute value is not equal to “true”, nothing will be executed. In other case (when $google_sheets is set to “true” by the DATA block at the beginning of the skill), the flow will continue to the next block, which is GS-UPDATE (part of our advanced Google Sheets integration). 

Click the GS-UPDATE block on canvas to open its settings and choose your spreadsheet and worksheet in the block editor.

Notice the use of the “Row” setting and “Insert” trigger – this combination tells Activechat to add new data as row #2 in the spreadsheet, shifting existing rows down. This will keep most recent leads at the top of your spreadsheet. Row #1 is reserved for column names.

Further down in the block settings, there are some assignments – which user attributes to put into certain columns of your spreadsheet. As you see here, we store $user_name attribute to column A, $user_phone to column B, $user_email to column C, etc. All these are attributes that the chatbot obtained from your potential customer in the conversation. 

Now, it’s time to click “Run” to deploy your changes to the chatbot cloud and test your conversation again. Click “Test your chatbot” and type “/start” in the conversation to re-start the bot. Once you answer all the bot’s questions and new lead notification arrives to your mailbox, there should be a new row in the spreadsheet that you’ve just connected.

Notice the use of system attributes ($_year, $_month, $_hour, etc) to store the exact time when specific lead was captured into column G. 

For extra convenience, give your columns specific names to make it easier to understand. Use row #1 for this, since new data will be added by your chatbot from row #2.

Now you can share this spreadsheet with other people on your team and they will be able to use that lead data to grow your revenue!

Send leads to your CRM [advanced]

Whoa, this stuff is really advanced! If you’re not satisfied with leads in the Google spreadsheet, you can go further and integrate your chatbot with a CRM of your choice. We’ll use Zapier for this, but you can do the same with other services like Integromat, or even connect the bot directly to your CRM’s API. 

To use this feature, you will need to create a Zap that will be triggered by a webhook, and set up a JSON block (connect it in the flow instead of the GS-UPDATE – or after it, if you need leads both in Google Sheets and in CRM).

For more details, check our “How to send data to Zapier” how-to. It’s based on a similar lead generation chatbot and explains how to send data to Pipedrive, but you can use it to connect any of dozens of CRMs supported by Zapier.

What’s next?

In this short tutorial we’ve just scratched the surface of the Activechat visual chatbot builder. In the next series we’ll continue to explore more advanced features, such as pro-active chatbot conversations on specific pages of your website, running Facebook Ads to get more traffic to your chatbot, using keywords to answer simple questions, etc. 

For an advanced version of quick-start with Activechat, try our “Getting started” section of the platform manuals.

Don’t forget to join our Facebook community of more than 3,000 chatbot developers. It’s a friendly group that can provide useful advice, answer your questions and share a lot of chatbot knowledge.

Stay tuned to our emails, and enjoy bot-building with Activechat!

Not sure what's next?

Do you find this useful? Click to share with other bot builders!


© 2018-2020 Activechat, Inc.

existing users