Chatbot Development: The Complete Guide for Business in 2021
Chatbot development is a complex process. But if planned correctly, it can become a piece of cake.
When starting chatbot development, the main thing is to break this process into clear steps and go by them one-by-one.
So, here we tried to make your life easier and created step-by-step instructions for chatbot development.
Chatbot development process steps:
1. Understand if the chatbot is the right fit for your company.
Chatbots are a good idea if:
– Your team performs a lot of routine and repetitive tasks
– You receive a lot of questions on the same topic
– You are looking for ways to cut customer service costs
– You have multilingual customers
– You have multichannel customer support
– Your customers reach out to you outside your working hours and you want to provide 24/7 support to them
– You want to upgrade your marketing efforts
– You want to help sales with lead generation and qualification
– You want to stand out from your competitors
– You want not to fall behind the competition
The other good way to understand if the chatbot development is the right fit is to calculate the potential ROI of the chatbot. Here's an article to help you with that: https://botscrew.com/blog/customer-service-chatbots-cut-costs/
Or use the ROI chatbot calculator: https://www.comm100.com/resources/roi-calculator/chatbot/
Knowing the ROI, you can make a better decision whether the chatbot development is worth investing for you or if you should use human agents.
Chatbots can complete tasks much faster than humans. They can answer FAQs, track visitors to the website, generate numerical reports, screen candidates, add new subscribers to the mailing list, schedule appointments. @tidiochat Click To Tweet
2. Defining the chatbot goal or goals.
You need to understand the reason for implementing a chatbot. Stop for a second and ask yourself two questions:
– “Which problem would the chatbot solve?”
– “What will exactly a chatbot be doing?”
The best way to create a chatbot’s goal is to use SMART goals. A goal can be: “The chatbot should automate 30% of customer service requests about products and our policies in the first 3 months after implementation”.
Also, think about metrics to measure success at the end.
Choose measurable metrics with more precise numbers that can be analyzed. For example: “By implementing the chatbot, we want to reduce average ticket resolution time from 4 minutes to 1 minute 10 seconds by April 2021".
3. Defining areas that the chatbot can take over.
Usually, the best areas for chatbots are client-facing processes that are repetitive. For example, customer service, technical support, sales processes like lead qualification and evaluation. A good fit are also HR and recruitment processes.
The first main area for chatbot automation is lead gen. Next is answering FAQs, where your bot instantly responds to common customer questions 24/7, saving you time. The third is a product recommendation. @mss_bojana Click To Tweet
Let’s focus on the customer service side as it has a lot of FAQs that are a great fit for customer service automation.
We’ll start by defining the main customer intents when contacting your customer service.
To do so, we create categories with the most popular customer requests on the same topic.
Let's say you've collected the data about popular customer requests and noticed that most of the interactions are about a delivery date. You can group in one category “Delivery info” requests like:
– “When will my parcel be delivered?”,
– “What is the delivery date?”,
– “When I will receive my order,” etc.
Define a few main categories, and let’s move to the next part of this step.
Take a look at the list you have created, then evaluate each customer intent/category on the list. You can assess processes based on:
– Ease – how easy do you think it will be to automate these customer requests?
– Importance– how important for you to automate these customer requests?
– Time – how much time do you think this will take to automate?
– Impact – what impact will it have on your business/customer service if you automate this category with customer requests?
But, you can choose other metrics that are important to you.
– Ease – 5 points,
– Importance – 5 points,
– Time – 4 points,
– Impact – 4 points.
So, the “Delivery status check” gets 18 points.
Do this with every process on your list and then choose for automation those with the highest scores.
4. Choosing channels and languages.
– Which communication channels do you want to automate? Website, WhatsApp, Facebook, or all of them?
– Which languages do you want to automate with the chatbot?
Before answering these questions, you have to consider a few things:
– Is it reasonable to develop a chatbot for the volume of customers coming from this channel and speaking this language?
– Is the volume of customers from this channel / speaking this language growing or decreasing?
– Will you support this channel in a long-term plan?
It's also good to evaluate each of these channels the same way you evaluated areas for automation. Use metrics like:
– Ease of automation,
– Strategic importance,
– Requests volume,
– Impact of this process automation.
Create a list of languages and platforms. This will be useful for the 6th step.
5. List the integrations
This could be something like:
– CRM ( e.g., Hubspot, Zoho, Salesforce, etc.),
– Calendar (Google Calendar, etc.)
– Payment systems (e.g., Stripe, PayPal, etc.),
– Maps (Google Maps, Apple Maps, etc.)
– Cloud storage tools (e.g., Dropbox, Google Drive, OneDrive, etc.),
– any other business software that your company is using.
And again, you can evaluate each of these integrations the same way you evaluated areas for automation, languages, and channels. Use metrics like “Importance” and “Impact” of integrating these tools with the chatbot. “Ease” and “Time” metrics might be out of your expertise, so you can skip them or leave for the chatbot development company to fill out in the future.
6. Choosing the right chatbot development company or chatbot platform
You can use a chatbot builder or hire a chatbot development team to consult and create a prototype. Both options are useful, and which one to choose depends on the type of chatbot you want, your business needs, money, and time.
Simple marketing, lead generating and sales chatbots with limited functionality can be built using chatbot platforms. If you want a more complex chatbot with many features, integrations, languages, and channels – consider the chatbot development team.
If you have a very limited budget and timeframe, it might be better to use a chatbot platform. However, if you have the budget and are looking for a chatbot as a long-term opportunity and addition to your business, you should consider a chatbot development company.
To develop a prototype yourself, you can use chatbot builders.
Chatbot building platforms are a great option if you need a fast and cheap prototype. Usually, these platforms work in drag`n`drop mode where there is no programming required. There are many different chatbot builders, but the most popular are:
BotsCrew also offers a chatbot platform where you can start on your own and then add custom features with our development support. But if you're looking for a simple bot with no plans to scale, this option may be a bit pricey for you.
When developing bots using builders, you can face some troubles due to the limited possibilities of platforms. Most of these builders focus on marketing and have a small range of customization and functionality.
You should note that most of the platforms don’t provide support and maintenance for a chatbot. So, using platforms to create a chatbot prototype, probably you’ll need to train, upgrade, customize, and set up the bot yourself.
Also, you may struggle to scale and customize your prototype to a complex secure chatbot. Most likely, you will need to start over and rebuild the chatbot from scratch. So, in the end, it will cost you lots of additional time and money resources. But, if you really need a simple marketing or sales chatbot for your website, platforms might be a good fit for you.
Chatbot development team
The other to do chatbot development way is to reach a chatbot company and assign all the work to them. Instead of spending your time with builders, you can contact professionals to develop the prototype and then scale it to a full chatbot solution.
Hiring developers is more expensive than using chatbot platforms. But, this can save time and enable you to add custom features to the prototype.
If you don’t want to screw up with choosing a reliable chatbot development company, consider these things:
1. Check the vendor’s main and services.
You need to think about the future and be sure to choose a company that provides a full chatbot development cycle from ideation to post-release training. What will happen after the chatbot has been created? Will you need chatbot marketing or post-release training? If yes, then make sure that the company provides these services.
2. Research their target industries and areas of expertise.
Ensure that the chatbot development company you choose has experience in your industry and knows your business's specifics.
3. See if they have a platform or admin panel to manage the chatbot.
An admin panel will make your life so much easier because you will alter, train, and manage the bot by yourself. Even though for significant changes like adding new languages, channels, integrations, etc., you'll still need developers, if you need to make a small change like the bot's wordings, you'll be able to do it yourself.
4. Discuss integrations with the current software ecosystem.
Nobody wants to change the whole array of different tools. You need to make sure that the company will help you connect all your current platforms and tools with the chatbot.
5. Ask who owns the code.
What if this chatbot development company shuts down or your contract ends? Make sure that in any case, you'll have access to the chatbot – either deploy the chatbot to your servers or check if the vendor will provide you with all the custom code in case something happens.
6. Check if the company works with your channels and languages.
Some channels like WhatsApp require specific expertise, so ensure that the company you choose has experience with the platforms you want to cover. The same with the languages, not all companies offer multilingual products and services, so check if they will create for you chatbot in different languages.
7. Check feedback and testimonials.
Of course, check what others say about this company. Are there any familiar big names on their client lists? Check out their project portfolio.
7. Creating a detailed chatbot roadmap and project requirements
Usually, you build a roadmap and requirements together with your chatbot vendor. The chatbot development company has more experience and knows exactly what needs to be included in the roadmap, in which order, and how much time this takes.
At this stage, you need to:
– Discuss and set clear Key Performance Indicators (KPI’s),
– Set milestones and deliverables,
– Discuss time and budget estimates of the chatbot development,
– Discuss your involvement in the whole chatbot development process.
– And also, discuss your future communications with your chatbot vendor: How often will you have calls? Demos? What communication channels will you use? Etc.
If you want to create your requirements, here's a little advice: don't overthink this part. When creating the chatbot development requirements, focus on bot use cases, and bot user stories.
a. Use Cases
You can start creating a chatbot development plan by defining the use cases. Think about what you want the chatbot to assist with. Describe all the necessary functionality of your chatbot. It’s like writing what a bot will be able to do.
A bot will be able to answer the user about the availability of the product.
b. User Stories
Next, think about bot user stories. Describe how you see your chatbot from the user side by completing the sentence: “As a user, I can..".
As a user, I can ask him a question about working hours.
Tip: try breaking down the bot user stories into smaller chunks. Think about what will bring value to the user, what are his or her goals and needs. Try putting yourself in the user's shoes to understand what they want to get from a chatbot and what they want to achieve.
Poor chatbot experiences are usually the result of businesses that focus on solving their own problems instead of the user's. This can result in bots that are one-way info bombs and fail to offer a helpful dialogue. @mss_bojana Click To Tweet
Here’s a template to help you plan and set the requirements: Good Brief Example
8. Think about security
Cybersecurity is essential in protecting our privacy, rights, freedoms, as well as digital and physical safety. The importance of cybersecurity is without any doubts a major matter of public concern. @tidiochat Click To Tweet
Talk to the chatbot vendor about security, as it's crucial for users and your business.
You can read more about GDPR in chatbots here: https://botscrew.com/blog/how-to-make-your-chatbot-gdpr-compliant/
9. Creating a chatbot persona, designing a chatbot flow, and a logic tree.
Always have your ideal user in mind. How can your bot help them? Choose one main goal for the chat experience, and use that to guide you in mapping out the conversation before you start building.@mss_bojana Click To Tweet
So, if you haven’t still formed your buyer persona profile, here’s a great article that will help you do that: How to Create Detailed Buyer Personas for Your Business [Free Persona Template]
Write like you would to a friend. Don't overload text into a single message. Leverage multi-media when you can. Make conversations interactive. Finally, make it personal! @jonathansenin Click To Tweet
Usually, if you are working with chatbot development companies, they will help you form your chatbots flow, persona, and logic tree. The only thing required from you is to collect and answer the most common questions that you want the chatbot to cover.
– Talk to your customer service agents and sales team – ask what questions they get the most often,
– Review call logs and scripts, email chains,
– Analyze FAQ pages, knowledge base,
– Check your @support or @info Inbox for repetitive requests,
– Check your Social Media to find customer questions.
Think about what are the most repeating questions and issues your clients stumble upon.
If you are working with the chatbot development team, collect these questions-answers pairs, and provide them to the vendor. These Q&A pairs will be a base for the chatbot flow.
However, if you are creating the chatbot yourself using a platform, you need to consider which of these questions, words, phrases your chatbot has to understand. And it’s better to be specific and collect as many ways of saying the same thing as possible to train the bot.
For example, the customer can ask the bot about your working hours in many ways: “What are your working hours?”, “When does your shop close?”, “When does your shop on 5th Avenue start working?”, etc.
Write down as many variations of words and phrases of certain customer requests as you can think of to train your bot. The more variations you train your bot with, the smarter it will get and the fewer mistakes it will make with real users.
When you have settled with the main part of the flow – Q&As, there are other conversational elements you need to consider:
– Greeting – to say hello or start a conversation.
– Introduction – explain to the user what the chatbot does and why, and explain how to interact with the bot.
– Error – when the chatbot doesn't understand or fails to complete a request.
– Additional resources – sometimes, it's good to provide further information in links to helpful articles and guides.
– Feedback – to ask if the chatbot was useful and understand where there is room for improvement
– Conclusion – a clear end to the conversation.
10. Start with building a POC or MVP
The best way to create a successful project is to create a POC (Proof of Concept) first. Set goals and expectations for the POC, build it and then do user testing with small focus groups or real users.
If you achieve the set goals and expectations with your POC, it means that you can scale. If you don't reach the desired outcomes, you need to sit down and analyze what went wrong, where, and why. You need to think about how to improve and optimize your POC.
Always have your ideal user in mind. What are their pain points? How can your bot help them? Choose one main goal and use that to guide you in mapping out the conversation before you start building. @mss_bojana Click To Tweet
The best way to test a chatbot is to have a conversation with it and pay attention to things like:
– Bots flow – is the chatbot’s dialog logical, correct, and smooth? Does the flow make sense from a user side? Is it understandable and comprehensible for the users?
– Conversational User Experience (CUX) – is the chatbot flow well structured? Is it engaging to talk to a bot? Does it use emojis, buttons, gifs, images, and understandable for a user wordings? Is the chatbot persona appealing?
– Speed – how fast does the chatbot respond?
– Accuracy – are all the chatbot answers correct and accurate?
– Fallbacks – what will a bot do when he doesn’t understand the user? What will the chatbot answer? Or where will a bot redirect?
There are a few options on how to find users for testing.
One way is to ask your co-workers to join the testing and analyze their interactions with the chatbot. Remember that your staff can be biased as they are familiar with specific terminology, your company, services, etc. and how they interact with a bot can differ from your chatbot's audience.
Also, you can involve your real customers in the beta testing of the bot. You can ask your most loyal clients to join the testing. Or, as an example, you can engage your current clients to chat with the bot for a reward like a discount or a coupon if applicable.
Another option is to use crowd testing. Some sites help connect with real testers. For example, you can go on Reddit and find beta testers in subreddits like TestMyApp. Or use a website like BetaFamily. You can also set up testing sessions on UserInterviews, where you can choose the audience more precisely.
And remember, the more people interact with your bot, the more training data you will get to make your chatbot prepared for different use cases.
11. Start building the full version of the chatbot
After your POC has been tested, analyze and iterate to make your solution deliver the best results.
Pay attention to:
– Fallback rate – check how often and where the chatbot didn't understand the question and provided a “Sorry, I didn't get it" type of answers.
– Check the session durations and calculate the avg. session duration. If the session duration is very short, it often means that the chatbot isn't engaging or helpful. However, if you have a concise flow or minimal functionality, this isn't the best metric to consider.
– Analyze drop-offs – how many users dropped off? Where they dropped off and why?
– Goal Completion Rate – how many successful engagements users had with your chatbot? For example, if your bot use case is scheduling a meeting or buying a product, how many users did that?
– User satisfaction – if you have a feedback feature in your chatbot, check how users rated your bot.
Understand what needs to be improved, changed, or added, and do it. Or ask your vendor to do it.
12. Adding integrations and connecting must-have tools
Some tools have native integrations. It means you can connect specific tools in a few clicks without coding. Commonly, small tools connect with giants like Salesforce, Zendesk, etc. But it’s not always the case that the giants connect with one another. For these cases, you’ll need a custom integration or a 3rd-party integration tool.
The systems that you want to connect need to have an open API (application programming interface). It is valid for 90+% of the cases. However, you should think first about how you’ll use it because there is no need for every tool to be integrated. Choose a hub where you want to have all the data, and then incorporate your tech stack with this hub.
There are 3rd-party integration tools like PieSync and Zapier. But with a large volume of data points, it is always more cost-effective to build an in-house integration (if native integration is not available).
13. It’s time to scale!
It's also good to build a simpler version first and then scale your solution based on the customers' demands and needs.
So, expand your chatbot capabilities, add new channels, languages, and integrations. Keep improving your solution and make it even better.
Usually, together with our clients, we have plans and goals set for the future upgrades and new versions of the chatbot. While it’s okay to scale your product when you feel the need for this, it is always a good idea to picture your solution in 12-24 months.
Okay, so we went through the chatbot development process, and as you may notice, the critical component here is to create a good plan and find reliable vendors. Try going by these steps one-by-one and not do everything at the same time.
Good luck with your first chatbot project!