In a previous article, I talked about why it would be a good option to use a rules-based, conditional logic bot as a "pre NLU" bot before you build out your actual NLU-based website chatbot.
A good option for this is Collect.chat.
I tried out the Collect.Chat service for a month (I chose the Standard plan - $49/month so I could experience the entire set of features) and I really liked it. There are also other similar services, and while I haven't compared them all, I have very little hesitation in recommending Collect.chat for creating your preNLU bot.
Note: the link above is an affiliate link, but I am recommending the service because I believe it is best-in-class for the task it does.
About the bot
This video shows you how the bot works.
The bot builder
The video below shows you the bot builder, and other features within the Collect.chat web interface.
What I like about Collect.chat
As I have already mentioned, I have been generally impressed with Collect.chat.
Here are a few things that stand out:
Popup look and feel
The popup design for bots created using Collect.chat is simple but quite visually appealing, and isn't intrusive.
Option to embed into an iFrame
You don't need a popup on every page. Sometimes adding the chat widget in a page as an iFrame is a more logical choice (and provides more context). I did this on one of the pages on my course website. Notice that the quiz bot doesn't show a border, and looks like it is just part of the page itself.
Easy to design conversation
As I demonstrate in the Builder video, it is very easy and intuitive to design conversations using the Collect.chat builder.
Supports rich controls
There are plenty of rich controls you can use to improve your bot's engagement, such as the Rating feature.
Rich Text Edit control works well
Every time I need to use a rich text edit control on websites, I am usually feeling a little dread. It is rare that the rich text editor works correctly and consistently.
Thankfully, the rich text editor in Collect.chat is quite good, and I haven't experienced any glitches till now. It is somewhat limited as far as rich text editors go, but I think that is one reason why it works well.
Fast and snappy UX
Just about everything on the Collect.chat website is snappy. You rarely notice any delays when you use their web app. This is definitely something you will notice as you use their site, and it is a welcome relief nowadays.
And since the website bot is also just as fast and snappy, I am doubly impressed. (And I hope they maintain this in the long run).
The builder doesn't get in the way
A lot of thought has been put into designing the Builder canvas, and it doesn't get in the way for the most part.
This is becoming table stakes these days, but I am still glad that user submissions on your website bot are forwarded to your email address very quickly.
The widget can be hidden after X number of page visits
There is a setting to hide the chat widget if the visitor has already read a few pages so it doesn't "follow" them around the whole site.
This could be an issue if the visitor suddenly "remembers your bot" and wants to interact with it but cannot find it. But I definitely like having the option to hide the bot after X number of pages.
CSV download of user responses
You also get a CSV download of your user's responses (even on the free tier). This brings about some confusion (obviously) in terms of column names if you ever change your bot's script, but that's certainly not Collect.chat's mistake.
Visual summary for multiple choice questions
There is a section in the Responses called Insights, which I find pretty nice as a visual summary for multiple choice questions.
What could be improved
There are also a few things that I would like to see get better.
The "funnel" in the "Metrics" tab (Responses > Metrics) doesn't work very well for conversations with logical jumps. Questions which are effectively peers on a regular conversation flowchart are not represented on the same level.
I think they need to think through this visualization quite a bit more.
Flag spam responses
Spam happens 🙂
In some cases, it is quite easy to add a simple Spam filter and guess that a user's submission is probably spam. I would suggest adding some kind of spam filter.
Something similar to what you get out of the box for the Dialogflow web demo integration would be a nice-to-have feature, but it isn't a big deal.
Tips for getting better responses
You can get better responses on average by adding more friction for the spammers.
Unfortunately, these tips will still not stop the most determined types.
But it will reduce the number of spam submissions. Since spam submissions are also counted towards your quota (which is already very small on the free plan of collect.chat), you probably want to go through this section if you are interested trying out the collect.chat service.
Start with a slightly long intro text
Notice that the intro fills up the entire chat widget.
It can be especially difficult for spammers who usually cannot comprehend so many words smushed into such a small screen area.
Provide a hyperlink to another page on your website within the intro text
You will notice that I link to another page on my website inside the intro section itself.
This will distract the spammer into clicking away to another page, while increasing their dwell time on your website. After all, Google cannot distinguish between the dwell time of spammers and non-spammers. (Although you never know, considering that its Google).
Start with a single choice button
Again, this will also help thwart spammers, who will already feel annoyed that they are starting the conversation by complying to your demand by clicking on the only available choice.
Create a longer conversation
Add more steps into the conversation.
If the conversation script is thoughtful, the genuine responders will appreciate it.
The image below is the full script of my bot. As you can see, it requires many steps for the user to get to the end of the conversation.
Ask for an email address
You might be thinking - well, a spammer is never going to use their real email address, so how does that even help?
But based on the small sample size of responses I have collected, it certainly gives them pause.
Besides, you obviously need a way to get in touch with those who are asking you a genuine question.
Ask for a rating after that
This is surprisingly effective, mainly because a spammer almost certainly isn't going to want to give the bot a good rating.
And some kind of cognitive dissonance seems to take over, where they are marking the bot experience as "Terrible" and still continuing to type away into the chat widget. (The spammer's inner voice probably says "Why would you continue doing something which is Terrible, unless you are an idiot?")
Regular users usually choose Okay, Good or Awesome.
Which leads to the next tip....
Ask why if they give you a bad rating, otherwise end the conversation
Since the spammer is almost certainly going to choose Bad or Terrible, immediately follow up with a blank "Why?"
It irritates the spammers to no end, because they usually write some complete gibberish, at which point their inner voice is probably saying "Of course you don't have a good answer, because you are an idiot".
On the other hand, those who ask the most cogent questions also give the highest rating, so that is another very good reason to ask for the rating.
In case you are wondering, yes, this section is definitely a little tongue-in-cheek.
But these are tips which will still help you filter for the best responses, as you can see in the last image.
I got a comment on my YouTube channel about this article.
So I will add some clarifications:
The preNLU bot is not comparable to Dialogflow
Conditional logic bots such as those built using Collect.chat are primarily intended for collecting responses from users (and intended to replace web forms) and not for "parsing the meaning" of the text that the users type. There is no NLU in these chatbots.
On the other hand, building a rich NLU-based website chatbot is an entirely different beast.
And the cost of building (and especially maintaining) a rich NLU-based website chatbot is quite easily more expensive than the preNLU bot's monthly price, because you usually also have to find developers to build and maintain your NLU-based bot.
There are some companies like BotCopy which allow you to automate this - that is, you can integrate Dialogflow into your website without writing code. And BotCopy's pricing is also comparable to Collect.chat's pricing. Also, even if you use a service like BotCopy, odds are pretty high that you are still going to need a developer. (Well, if you ARE a developer already, your time is still not free).
Overall, there is no free option if you actually want to build a website chatbot with rich controls.
Use the preNLU bot until you need it
In my case, I used the bot for a month, got a reasonable number of responses, and paid $49. I could have used the $24 plan, but I also wanted to understand all the features which were offered, plus I knew it was only a month-long experiment, so I went ahead and got the $49 plan.
You can downgrade the bot
You do have a free tier (50 total responses per month) in Collect.chat, but it doesn't have conditional jumps, which will definitely reduce the power of your chatbot.
Having said that, you can certainly design your bot without the conditional jump, and still get useful feedback. (It depends on your bot, but the basic idea is to ask primarily text-based questions, much like an open ended survey).
And then we come to alternatives to the Collect.chat service. As I have pointed out earlier, I didn't go out and try every single alternative. Also, I used Collect.chat because I was impressed with how easy it was to use and how responsive everything is on the website.
If you feel that collect.chat's pricing is expensive, you should certainly spend some time and evaluate your other options. (In fact, if you do, please post a comment with a link to your review).
Do you know of similar or better services for rules-based website bots?
Let me know in the comments.
- Reader Question: What if a specific system entity isn’t available in all languages in a multi-lingual bot?
- How much can Machine Learning ACTUALLY help with answering free-form questions?
- Dialogflow Toolkit vs MBD Membership
- Dialogflow Knowledge Connector : Pros and Cons
- How to integrate Telegram with Dialogflow
- Why I avoid using slot filling (required parameters) in Dialogflow
- Free Tool: Convert your WordPress website into a Dialogflow FAQ chatbot
- Dialogflow Mega Agent Tutorial
- Reader Question: Will followup events work when an intent has an input context?
- How to learn Dialogflow in a week