A funnel-driven approach to Messenger bots for lead generation
Testing. Testing is one of the main things I have devoted my energies to in the past year. Testing assumptions. Testing concepts. Testing product increments.
Incrementalism is key whenever you are building something that does not exist yet.
When we started Visualbots, a chatbot tool for lead generation, the assumptions to test were many. The industry was still in its infancy and marketers were not used to tools like ours. And we did not know which bot design and optimisation strategies would have worked the most.
But we were sure there was a key product assumption to test:
“Can Messenger bots be used for lead generation and deliver better results than the two main substitute products (namely landing pages and lead ads)?”
In order to prove this assumption, we have worked with tens of early adopters across different industries spending tens of thousands of euros, following this process: we transformed an existing landing page into a chatbot, we run Facebook advertising campaigns on the bot and we measured the performance of the full funnel, with the ultimate goal to achieve a target conversion rate (see one of the first examples below).
This has allowed us to gather a lot of data and generate expertise on how the lead generation bot funnel works on Messenger. And I am writing this article to share some of the lessons we have learned on the three following points below:
- The Messenger bot funnel
- The Messenger bot KPIs
- Optimising Messenger bot KPIs
Enjoy the article.
The Messenger bot funnel
As every user acquisition activity, the messenger flow can be represented as a funnel, which consists of 3 main steps:
1. Acquisition (= the ad)
Acquisition refers to the marketing channel used to send traffic to the bot.
In our case it is constituted by the Facebook click-to-messenger ad used to drive traffic to the Messenger chat.
2. Activation (= the welcome message)
Activation refers to the first meaningful action accomplished by the user that starts to chat with the bot. In our case it consists in the interaction with the welcome message of the bot.
The welcome message is the first thing a user sees when they encounter the Messenger bot from the ad.
It is technically a part of the ad itself, but we always analyse it separately, given it has its own characteristics and optimisation techniques.
3. Conversion (= the bot body)
Conversion refers to reaching the goal of the bot.
In our case, since we are talking about lead generation, it typically consists in gathering an email, after multiple qualification questions contained in the “bot body” have been replied.
The Messenger bot KPIs
Each step of the bot funnel has its own KPI. The main ones we look at are:
- cost per click
- welcome message conversion rate
- lead conversion rate
Below you can find more details about each KPI.
1. Acquisition KPI (= cost per click)
The main KPI we use is cost per click (CPC). It indicates how costly a click sending traffic to the ad is.
This KPI is almost totally dependent on the ad setup itself, so that the actual content of the bot does not really matter here.
The formula is the following:
cost per click = amount spent/ clicks
A reasonable range of values for the metric is between 0.20€ and 0.40€.
We have seen cases in which the price was much lower, which normally translated in a very low lead quality, or higher, sometimes leading to better conversion rates down the funnel that compensate for the higher cost of traffic acquisition.
2. Activation KPI (= welcome message conversion rate)
The main KPI we use is the welcome message conversion rate. It indicates how many people that have seen the welcome message have actually interacted with it, initiating the conversation with the bot.
This KPI mostly depends on the consistency between the ad text/ image and the content of the welcome message and the way the message itself is written (e.g. short rhetorical questions normally work better).
The formula is the following:
welcome message conversion rate = conversations started/ link clicks
The “Conversations started” metric refers to the number of times people started messaging your business. It includes conversations with new users as well as previously engaged ones (in that sense being different from Facebook´s definition of Messaging Conversations Started).
The “Link clicks” metrics refers to the number of clicks that led users to open the chat (in the same way as it is defined by Facebook). We prefer to use this metric, rather than normal clicks, so that we can exclude the effect of people clicking on parts of the ad that do not link to the chat, such as the page name.
A reasonable range of values for the metric is between 25% and 50%.
3. Conversion KPI (= lead conversion rate)
The main KPI we use is the lead conversion rate. It indicates how many people that started interacting with the bot ultimately left their more precious personal information (e.g. an email or a phone number), which are typically asked at the end of the funnel.
This KPI depends on how the whole funnel is structured, on the length of the flow and the way the personal information are asked.
The formula is the following:
lead conversion rate = leads/ conversations started
The concept of “Lead” varies greatly from company to company, but can be normally defined as a users that replying to the most important qualification question in the funnel.
Also defining a range for this metric is really difficult, since it varies a lot depending on the industry.
A reasonable range of values for a mid-long qualification funnel (i.e. with more than six questions) is between 25% and 50%.
But it can easily skyrocket above 75% in case of really high performing funnels.
Optimising Messenger bot KPIs
Before we go into the technicalities of how to improve the KPIs above, there is a main concept to keep in mind when creating and optimising a Messenger bot built for customer acquisition purposes:
You need to create consistent ad-to-bot experiences.
The ad and the bot needs to be conceived together, since there is no way you can start to improve the bot if the ad is not consistent with it. You would simply receive poor traffic that you will not be able to optimise for.
We have learned this the hard way, when the first tests were not producing the expected results. And the first signal of it was a really low welcome message conversion rate (i.e. only a few people interacting with the Facebook ad started to engage with the bot).
To understand the reasons why it was happening we did multiple UX tests with the bots, asking users to go through the whole funnel and tell us what they were expecting, step after step. It clearly emerged that the first reason people dropped was that what they received on the chat was not what they were expecting.
And this happened because who was doing the ad (the tester) was different from who was creating the bot (us).
That´s when we understood that, before even building the bot, we needed to think at the whole funnel together, beginning from the ad (and as a consequence we stated designing ads together with the bot — using this super cool tool for ad mockups).
Having said that, we can now go more into the details of what to look at when improving the different steps of the funnel.
1. Optimising the acquisition KPI (= cost per click)
These are the key questions we ask ourselves when the ad is not performing as intended (i.e. CPC consistently out of the expected range).
- Are you using Messages objective campaigns (campaign level optimisation)?
In our tests, they have proven to perform consistently better than other campaigns, including conversion campaigns.
- Are you using the right audience (ad set level optimisation)?
This has revealed to have a huge impact on the performance of the ad, as it happens in any other type of Facebook campaigns. The only aspect worth mentioning here is that a good optimisation technique is the following: after that a good number of conversations has been collected, you can create lookalike audiences to target people similar to the ones that already chatted with your bot. And this works pretty well.
- Are you using a low effort call-to-action (CTA) (ad level optimisation)?
In our tests, CTAs implying high potential effort for the user (e.g. “Send message”) performed worse than low effort ones (e.g. “Learn more”).
2. Optimising the activation KPI (= welcome message conversion rate)
These are the key questions we ask ourselves when the welcome message is not performing as intended (i.e. conversion rate consistently below 25%).
- Is your welcome message content consistent with the ad text and image?
As highlighted before, the main reason for bot acquisition campaigns to fail is that the ad and bot experience have not been thought together. Align the content of the ad with the one of the welcome message.
- Are you your asking a low effort question?
The welcome message role is essentially to ask the user to opt in the conversation with the bot. As a consequence you want to minimise friction as much as possible. And the way the message is phrased has a big impact. As michael highlights in his article, low effort asks work well, especially if they are in the form of rhetorical questions. Examples could be “Do you want to start?” or “Do you want to receive a free coupon code?”.
3. Optimise the conversion KPI (= lead conversion rate)
Being the concept of lead different from company to company, it is difficult to abstract lessons on how to optimise this KPI. Please keep that in mind when reading the key questions we ask ourselves when the lead conversion rate is not performing as intended (i.e. conversion rate consistently below 25%).
- Is the conversation building enough trust for the user to leave its contact details?
While carrying out our tests we realised something we had not expected before. We initially moved from the design assumption that shorter bots would have performed better than longer ones, since users would have gone through less steps.
But these short bots were not performing as expected, and removing questions produced even worse results. When we run UX tests we started receiving comments like the following:
“Feels like it hasn’t been enough questions to give out email address”
“How is this gonna provide me a personal quote with such a limited number of information given?”
It paradoxically seemed that users expected many questions before they could consider the bot reliable and decide to provide their personal details. In other words:
Questions build trust
The reality is indeed that the bot funnel of a lead generation bot looks more like the one you can see below.
- Are you explaining why you are asking for the personal information?
Before you ask for an email or a phone number, is always a good practice to explain why you need such information and what will happen after the user submits it, including when they will be contacted, by whom and for which reason (e.g. “We will send you a custom quote”, “We will book a visit in our apartments for you”).
- Are you providing any incentive?
It is a good practice to provide an incentive for the user to leave his personal details, such as a free quote, sample or a high quality content. This can be allowed already at the ad level and emphasised on the welcome message, but should ultimately product gains at the lead conversion level.
These are some of the lessons that we have learned over the last year while approaching Messenger bots as funnels and optimising them in a data-driven fashion (some further insights here).
I hope this will be helpful for you as well.
Have a good journey,
> Disclaimer: this article has been published a year after it was originally written. In the meanwhile, the project Visualbots has been discontinued and many things have changed in my life and in the chatbot landscape. I am sharing this article in the hope that the insights gathered in over one year of activity could still be useful for the Messenger marketing community. <
A funnel-driven approach to Messenger bots for lead generation (with real metrics) was originally published in Chatbots Magazine on Medium, where people are continuing the conversation by highlighting and responding to this story.