How to Build a Chatbot from Scratch for Your Business
Do you know that you can cut 30% of your customer support expenses by adding a chatbot on your online platform? Chatbots are able to answer up to 80% of customers’ questions, navigate users through the site, collect important customer information, and even complete transactions.
Today, a great variety of chatbot vendors promise simple drag-and-drop chatbot creation almost for free. So why do many businesses prefer to build their chatbot from scratch?
In this article, you’ll learn when you should build a chatbot from the ground up and when you should go with an off-the-shelf solution.
We’ll also guide you through the development steps so that you can weigh all pros and cons and make an informed decision on how to make a chatbot. We’ll tell you about features, costs, and different developmental approaches. But first, let’s talk about chatbots applying in business.
When, where, and why does your business need a chatbot?
Before discussing how to build a chatbot from scratch, let’s clarify important aspects like when, where, and why you should build a chatbot.
There are three typical cases when you should implement a chatbot:
Firstly, if your company processes thousands of repetitive requests per day and spends a lot of resources on customer service, it’s high time to automate!
Secondly, if you are a small to medium business, for whom each customer is important and cannot be missed, but you have no budget nor human resources for 24/7 customer service, then a chatbot might be the answer. But you need to choose the development approach that will pay off. We’ll delve into this problem a bit later.
Thirdly, if you are a startup that is going to develop a chatbot as SaaS or as part of a solution.
By 2023, it is predicted that chatbots will save Healthcare, eCommerce, and Financial sectors up to $11 billion annually. Chatbots now are found in almost every industry and serve a multitude of functions.
Chatbots for eCommerce
Whether you own a marketplace or online store, time is vitally important, as customers expect answers instantly. eCommerce chatbots are designed to help customers do their online shopping. The main tasks it can perform are helping navigate web pages and products, providing personalized recommendations, assisting with orders, and smoothing out the payment process.
Chatbots for Finance
A lot of banks, insurance, and investment companies now automate their customer service with conversational bots that are able to advise customers on the company's services, offer the company’s products, recommend better money management, compare insurance, and analyze expenses. This is in addition to the typical things like checking the customer’s account balance, viewing monthly statements, or even finding the nearest ATM.
Chatbots for Marketing and Sales
Chatbots are important automation tools for marketing and sales managers. Chatbots can collect requests from different channels and gather them into the CRM. You can use chatbots to survey customers and gather feedback quickly and easily. They assist in tracking and nurturing leads, sending out follow-ups, personalizing messages for different customers, and suggesting how to proceed.
Chatbots for Healthcare
The medical clinic staff is usually overloaded with tasks that can be handled easily by chatbots. Chatbots can book appointments, collect patients' data, remind patients of appointments, renew prescriptions, and collect claims. They can even provide preliminary diagnostics and recommend urgent treatment in advance of a visit to a doctor. Chatbots became indispensable during the COVID-19 pandemic outbreak when there was a shortage of medical personnel. Chatbots “listened” to symptoms to identify at-risk patients and give them instructions or connect with a specialist.
Chatbots for Travel and Hospitality
Searching for tours, flights, insurance, and accommodations can be a real headache. Tourist agencies and hotel owners can use chatbots to help travelers find necessary information without the need for browsing and tediously entering the same information on multiple sites. Skyscanner, Kayak, Expedia, and Booking.com have already implemented chatbots into their platforms and messengers. The chatbot asks the destination, dates, number of people and will return the most relevant results. Even some airports use chatbots to inform travelers about airport facilities and flight delays.
Chatbots for Real Estate
For real estate agents, chatbots can automate routine tasks like initiating conversation with website visitors, collecting information about the property they are looking for, scheduling visits and tours, and checking documents.
Chatbots for Education
As education moves online, there is an increasing need for virtual assistants that can fulfill mundane tasks like checking applications, sharing timetables and learning materials, monitoring and assessing student’s progress, and keeping track of deadlines.
Chatbots for HR Management
How many hours do HR managers spend on routine tasks such as answering repetitive questions about days off, pay days, corporate rules, and the like? A chatbot can relieve them of this burden. They can pre-screen CVs, filtering out the resumes that do not satisfy the vacancy requirements, scheduling interviews, and assisting with onboarding.
Now let’s list the benefits of using a virtual agent on your platform:
- Quick answers. 82% of customers expect instant replies when they have questions about goods or services, but human agents may not always be available.
- 24/7 customer support availability. As more and more services are ordered online, the consumers want to reach our website at any time of the day or night. Chatbots can respond to the customers' requests anytime.
- Costs-effectiveness. Yearly, businesses spend $1.3 trillion responding to customer requests with the help of human agents. Automating the response process could save as much as $8 million by 2022.
- Improved customer experience. People hate completing request forms and, thus, try to skip most of the questions. A chatbot creates a conversational dialog and makes the data entering process more natural and interactive when collecting valuable details from a customer.
- Enhanced customer journey. A chatbot can immediately welcome a visitor to the website and help with site navigation, give recommendations on where to start, and lead them through the whole buyer journey. Chatbots eliminate the possibility of human mistakes or impoliteness.
- Time-saving and less agent burn-out. Chatbots reduce the time required for answering emails, calls, and chats by 70%. Using a chatbot saves time for your employees who will be able to focus on more complex tasks and requests.
Types of Chatbots
There are three types of chatbots depending on the purposes of your project:
1. Script- or rule-based chatbot
This bot works like a decision tree moving through a predefined list of questions and answers. Such chatbots are rigid and are not able to solve complex requests or understand customers' intent and emotional state. This type of chatbot works as an interactive FAQ assistant. It can also work for brands that want to control the user's journey — the chatbot can lead customers to a specific goal, like completing the purchase, or leaving an email.
2. AI/NLP-based bot
The AI-powered chatbot does not use a predefined script but is able to analyze the context and answer questions by itself. Such a chatbot, that learns from previous answers saved in the database, improves by itself, creating more sophisticated and personalized conversations. NLP (Natural Language Processing) is an indispensable component of AI chatbots, as it allows them to interpret human speech and respond appropriately. They can even understand the user's intent.
3. Hybrid chatbots
This is a combination of the first two types. While simple questions are answered with scripted answers, more complex requests are analyzed with Machine Learning. If the chatbot cannot find the answer to a question, it can propose a chat with a human being, or an email to the company.
We have recently created a hybrid chatbot for a healthcare company. The ‘conversational agent’ starts by giving predefined answers to typical questions. It can also understand natural language and predict answers using previous conversations in the database. If a customer wants to speak to a human agent, the chatbot will redirect her or him to a support team member.
If it is hard to understand from the beginning what type of chatbot is right for you, start with a simple rule-based chatbot. Testing it will give you a better idea of how to improve.
Must-Have Features of a Chatbot
Chatbots may have different features depending on their purpose and industry. Let’s examine the most common features for all types of chatbots:
1. Client widget
A client widget is a visible chatbot that appears on the screen after a certain action (sometimes after a page was opened or a user clicked on the activation button). Here are some important attributes of good chatbot UX. A chatbot should:
- Feel and sound natural and human-like to give the impression of a real conversation.
- Provide quick answers.
- Have a name and avatar.
- Have emoticons (emojis).
- Not leave a client stranded.
- Show a ‘typing’ message as if a real agent is typing the reply.
- Send different types of media files: (Gifs, videos, images, and audio messages).
2. Data collecting
If you want your chatbot to convert visitors into leads and clients, you need to consider what data should be collected.
For example, you can ask your customers to leave their name, email, delivery address, preferences, order parameters, and feedback. Eventually, the data will be the basis for your machine learning system.
Be careful not to ask too much of the user's sensitive data. Only ask for the data that you absolutely need. Data should be securely transferred and stored. To make sure your platform functions legally, check the regulations in your country or state. For example, platforms that provide services to European customers, have to comply with GDPR.
3. Integration with a CRM and other software
By integrating your chatbot with a CRM, you can automatically save the lead information in a single place and then use it in the future. This process can also work in reverse: a chatbot can recognize the returning customer and start the conversation from where it ended last time, providing personalized messages and recommendations based on the previous requests and purchases.
4. Connecting to a human agent
Non-standard requests often require a human being’s involvement. Thus, there should be an option to switch your chat to a conversation with a live agent.
For example, we created a chatbot for a ‘doctor-on-demand’ platform that collects patients’ symptoms and schedules a visit to a doctor. In case of a unique or unexpected question, the chatbot connects to a live agent. This was created with the help of Amazon Connect telephony technology that seamlessly uses Amazon Lex chatbot.
5. Agent panel
Just as customers can see the chat window, on the opposite end of the connection there should be an agent panel. If your chatbot is going to connect with human agents, the operators should be able to view the queues and inquiries. They should also be able to choose from predefined answers, view the previous chat history, and see their own KPI. The agent panel should be easy to use and have a smooth design because people will have to work with this interface for many hours a day.
6. Admin panel
The parameters of a chatbot should be managed by an Admin. An admin panel can include:
- Role management: assigning roles and permissions to other team members
- Analytics: a dashboard of key metrics and different reports to see the effectiveness of the chatbot and agents
- Notifications: managing reminders and ads
- Subscribers: viewing a list of subscribers
- Chat history: the message history
- Payment: managing payment options and fees, viewing the transaction history
- Flow editor: editing message flow and texts.
Extra Features of Chatbots
After implementing basic features, you may want to enhance your chatbot. The following features can significantly improve your conversion rates:
1. Omnichannel integration
Modern brands widen their online presence by being available anywhere. Whether it is a website, mobile app, or messenger, it’s a good idea to link the chatbot with all possible customer channels. All the requests will come to the single database and be processed in your CRM. This will decrease the burden on client services.
76% of online buyers prefer to make purchases in their native language and 40% of shoppers refuse to buy from websites in other languages. If you provide international services, it is indispensable to use a multilingual chatbot.
Platforms that provide a large variety of products may use chatbots to assist customers with their search. For example, Lidl created a sommelier chatbot that assists customers when they need help finding the best wine. The bot can suggest wines depending on the region, price, preferences, or composition of the meal.
5. Payments integration
Accepting payments via a chatbot can improve conversions. Bots calculate the amount to be paid and show the currency and payment options. Then, the customer is taken to a secure payment page to complete the transaction.
How to Build a Chatbot: Off-the-shelf vs Custom Development
There are many ways to build a chatbot. Depending on your needs, budget, and technical background, you can choose between creating a bot by yourself (with an off-the-shelf solution), or using professional developers. Let’s review the pros and cons of each approach.
Off-the-shelf chatbot development
Off-the-shelf solutions are no-code chatbot-building platforms that allow anyone, even those without a technical background, to create a chatbot in a drag-and-drop interface. Whether you need a chatbot for customer data collection, or to provide answers to common questions, it may be the best option for you.
There are many no-code platforms and here are some of the most popular:
- Chatfuel allows you to create a chatbot on Facebook Messenger.
- Tars can be adjusted to different business domains and can be integrated into your website or WhatsApp.
- Botsify is an AI-powered chatbot platform that can be integrated with your WordPress website, Facebook, WhatsApp, or SMS.
- MobileMonkey is good for chatbots on Facebook Messenger to answer FAQs and collect basic data.
- HubSpot’s chatbot is best for those who use HubSpot's CRM for contacts and lead management.
Advantages of the off-the-shelf solutions
- Low cost. One of the most attractive advantages is the cost of development. Many solutions provide free packages or have a trial period. In addition, if you do everything by yourself, you save on development services.
- No need for coding. You can use one of the pre-built templates and customize it, or make your own chatbot from scratch using a drag-and-drop interface.
- No need for design. Most of the chatbot-building platforms provide a greater variety of ready-made templates that need little modification.
Disadvantages of the off-the-shelf solutions
- Non-flexible. Most of the platforms provide only standard features and are not flexible. It can be hard to adapt such solutions to your unique business workflow, and it’s nearly impossible to add custom features.
- API integrations. Some technical skills are needed to integrate a chatbot into your website or app, especially if it is custom-built. What’s more, if you would like to integrate a chatbot with daily use software like custom CRM, and ERP, it may be difficult without professional help.
- Data security. If a solution is hosted by a vendor, you won’t know how reliably and securely the data is stored, or who has access to it. And if you move to another platform, it may be difficult to transfer the data to a new platform.
- Need for technical experience. Even with a chatbot builder that requires no coding, it may be challenging to develop the necessary conversational flow and integrate the chatbot with your website (especially custom one), app, or CRM if you have not worked with these items before.
Off-the-shelf chatbots provide limited functionality. These platforms can be used to collect contacts, answer FAQs, navigate through the website, show the nearest store, and connect to a human agent.
If you haven't found the solution that fits most of your needs, you’ll need help from professional developers.
Custom chatbot development
Custom development is used to create a chatbot from scratch. Your chatbot will be designed according to your requirements, written with one of the programming languages (for example, PHP), integrated with messenger or website, and hosted on a rented server.
Advantages of custom chatbot development
- 100% fit. Custom development can satisfy your business requirements completely, no matter how unique they are.
- Flexibility. Custom chatbots are super flexible and can be re-built.
- After-launch maintenance. You will have a maintenance team ready to solve any problems with your bot.
- Great data security. All data will be hosted on your server and accessed only by your team. Professional developers stick to the best security practices and compliance with data protection regulations.
Disadvantages of custom chatbot development
- Cost. Custom development is more expensive than creating a chatbot with no-code solutions. However, once built, the custom solution will serve you for a lifetime without a monthly subscription fee.
- Lengthy development. Custom development may take quite some time as it is usually more complicated work than setting up a ready-made solution. Everything depends on the experience of the developers, data preparedness, and the complexity of the requirements and features.
How to Reduce the Costs of Custom Development
Custom development does not mean that everything will be coded from zero. To reduce the time and costs of development, programmers use chatbot building frameworks, databases, and Natural Language Processing libraries, many of which are open-source, to drastically save time and money. When creating a chatbot, here are some best practices:
1. Open-source resources
If you need an AI chatbots chatbot, it should have data that it will take the answers from. Before it can give relevant answers and learn from received responses, the AI system needs to be trained on previously collected, categorized, and cleaned data. In most cases, it is ineffective and too expensive to create an AI-powered system from zero. For businesses-oriented chatbots, it is more appropriate to use already collected databases and libraries that contain a large pool of data.
2. Professional chatbot platforms
Another way to speed up development is to use chatbot platforms like AWS Lex, Microsoft Azure, Google Dialogflow, or IBM Watson. Professional platforms allow creating more complex chatbots than those that can be made with no-code platforms but to configure them you need programming knowledge and experience. Using chatbot platforms is best for standard business workflows like hotel booking, food ordering, scheduling of doctor’s appointments, and giving financial guidance.
Advantages of professional chatbot platforms
- Cost and time-effectiveness. Programmers can save months on development using a professional chatbot platform that completely fits their needs. Platforms provide an almost ready architecture for ASR and NLU technologies for speech recognition, and other AI capabilities. So it should be configured, customized, and embedded into your platform.
- Compatibility with other services. These platforms are compatible with other services (telephony, user verification, and authentication, data storage). They also provide reliable hosting with instant recovery procedures and unlimited scalability — an important and cost-effective advantage over self-hosted solutions.
Disadvantages of professional chatbot platforms
- Limited flexibility for changes. The professional platforms work as a black box, i.e. it is almost impossible to look inside and fix some bugs or make necessary changes to the business logic. We faced such a situation in one of our projects when we were configuring a chatbot with help of the chatbot platform, AWS Lex. The project had been started using this technology before we were brought in. It was hard to understand some behavior of the AI and took time to make necessary changes than it would have if we had developed this chatbot from scratch.
Steps of the chatbot creation
Depending on how you choose to develop your bot, the steps of chatbot creation will differ.
|Off-the-shelf chatbot development
|1. Set your aims for the chatbot.
||1. Set your aims for the chatbot.
|2. Create a map of the buyer's journey with a chatbot||2. Create a map of the buyer's journey with a chatbot|
|3. Decide what data should be collected
||3. Decide what data should be collected
|4. Decide what feature you need
||4. Decide what feature you need
|5. Choose the platform with which you will build your chatbot
||5. Create design (order from a designer)
|6. Create a chatbot
||6. Hire chatbot developers (freelancers or an agency)
|7. Integrate chatbot with your website, messenger, or app
||7. Keep in touch with the team to clarify requirements and follow the process
|8. Test and launch
||8. Get your chatbot integrated, tested, and launched
|9. Make changes if necessary and extend the subscription
||9. Developers will maintain, make changes, and fix bugs in your chatbot.|
In the case of no-coding solutions, you will do everything from beginning to the end by yourself. With custom development, you will need to provide requirements and communicate with the team to make sure that everything corresponds to your expectations.
How to create a Chatbot if you are a startup?
Many companies create custom chatbots for in-company purposes, but chatbots are also a popular niche for startups. By building a chatbot with a unique concept and features, you can supply it as Software as a Service to other companies that require a ready-to-use solution.
This is exactly what we did for one of our clients, a web development company specializing in Healthcare solutions. They did not have enough resources or experience to create a SaaS chatbot, so they outsourced this task to us. Our team had experience with chatbots and telephony, so we made a custom chatbot that can be customized for different Healthcare companies.
How Much Does It Cost to Build Chatbot
If you decide to design a chatbot by yourself with an off-the-shelf solution, you will only pay the platform fees; these vary depending on the limits for the number of users, chats, or services. A number of platforms are free. Here are some prices:
- Chatfuel: free to $199/mo for Pro subscription
- Tars: from $99/mo for 500 conversations Botsify: $49/mo for 5,000 users
- MobileMonkey: free to $159/month depending on the features
- HubSpot’s chatbot: fully free.
The price of the custom chatbot will differ depending on the following factors:
- the complexity of features integrations with other systems
- paid technologies, hosting, and software
- experience and number of developers
- the region to which you outsource your project.
Prices can vary greatly. When developing a custom chatbot in North America, you should be ready for the hourly rates starting from $90-150, in Western Europe — $75-100, in Eastern Europe — $30-50, in Latin America — $30-50, and in Asia and Africa — $20-40. At Greenice, we have a lot of experience developing custom solutions, including AI-powered projects and custom chatbots. We can take care of your project from idea creation to after-launch maintenance. Let’s make a rough estimate of an MVP for a Healthcare Chabot (for clinic, hospital, doctor-on-demand).
|Architecture creation (database, hosting, services used)
|Creating a chatbot widget for the client-side
|Creating a rule-based conversational flow with predefined quick reply buttons
|Saving user data to CRM and creating a patient account
|Connecting patient to a human agent
|Connection to third-party API (for data exchange, like doctors profiles or nearest clinic address)
|Scheduling an appointment with a doctor
|Agent Management Panel
|Chatbot integration into website / app / messenger||1|
Altogether, creating a chatbot using Amazon Lex may take around 8-10 months and may cost $75,000 - $90,000.
The cost includes the work of one main chatbot developer, a lead developer who is responsible for architecture creation and choice of technologies, QA testing, and project management. If possible we use platforms, frameworks, and services to speed up the development and reduce the costs.
How to Apply This to Your Business
Now that you see the options for chatbot development, you should formulate the requirements and understand which approach will be the most viable. Let’s sum it all up.
|Features||Off-the-shelf development||Custom development with professional chatbot platforms||Fully custom development|
|Complexity of features
|The average cost of a chatbot
||Free or low
||At some providers, but limited
||Available with already trained models, difficult to change
||Available through paid or open-source libraries, flexible
|Integrations with other software
|Scalability (increasing number of users)
So, now you can see that for simple tasks, it may be more cost-effective to use a DIY chatbot builder. Custom development will pay off if:
1. Your off-the-shelf solution does not cover most of your needs and thus makes the chatbot inefficient.
2. You need a sophisticated custom chatbot with unique, complex functionality.
For example, your chatbot needs integrations with a custom CRM or incorporating AI capabilities, you will need to find specialists.
At Greenice we are open to discussing a wide range of options. Challenge us!
Author: Anna is a market researcher and author at Greenice with multifaceted knowledge about different types of business and technical solutions. Anna’s experience in technical writing and product management allows her to understand web development processes and enables her to translate technical concepts into plain language to help entrepreneurs make informed decisions.
Co-author: Sergey Burukin is the Head of Decision Intelligence at Greenice. He is passionate about developing artificial intelligence (machine learning) systems that empower decision making. Sergey also writes scientific articles and shares his knowledge on the Greenice blog.