Anatomy of a Chatbot—How Much Does it Cost to Build One?

Anatomy of a Chatbot—How Much Does it Cost to Build One?

Posted on March 13, 2018 0 Comments
Anatomy of a Chatbot—How Much Does it Cost to Build One_870x450_2

We explore all the components of a chatbot, the typical costs that go into building one today for most organizations, and how you can do it for less.

Building a chatbot as an alternative to mobile apps is becoming a viable option as developer tooling for chatbots matures, but how much does it cost to build one?

Enterprises are tempted by the idea of creating chatbots that do not require sophisticated UI design, support for multiple mobile platforms, long development cycles with lengthy app store reviews, and expensive acquisition strategies to draw users into apps.

But building a chatbot still requires a careful planning to ensure meaningful return on investment, beyond the bells and whistles associated with owning an intelligent chatbot. In this article, I will highlight the six components required to build an intelligent chatbot at the average market price at $60 per hour using the available developer tools today.

The 6 Components Required To Build an Intelligent Chatbot

Backend

Your chatbot will need a backend to handle messages from different channels and process them with NLP services such as Wit.ai, Api.ai or LUIS. Further, your backend will also hold all of your business logic and integrations with existing systems and will be used to build your conversational intelligence, so that you know how to lead the conversation with the user. The majority of the platforms support both .NET and Node.js server-side SDKs, so you can safely choose the language based on your preferences.

Backend

Channels

Once you have your backend setup, you will need to create endpoints for integrating with each specific channel. Every channel integration is different, but in general, they follow the practice of setting up an endpoint in your backend for sending and receiving messages that rely on access tokens authorization. Further, you will need to implement some channel specific UI in the form of quick reply buttons, or visual cards that guide the user during his conversation.

If we take, for example, Facebook Messenger, it supports opening hosted Webviews that give you an unlimited flexibility of showing conversation rich UI using JavaScript, HTML and CSS.

Channels

Natural Language Understanding

As soon as you are able to receive messages from your specific channel, you are most likely to use some of the Natural Language Processing (NLP) services to extract intents and entities out of the user messages. Example of such services are Wit.ai, Api.ai and Luis that all support both .NET and Node.js SDKs.

Setting up an NLP service and processing the messages using an SDK for the service is straightforward. However, training the NLP intents and entities that might be already existing in an external system is not trivial, since the NLP services provide UI for inputting the entities and their values manually. In reality, you will need to understand entities that map to specific objects that already exist in an existing system such Products, Contacts, Employees etc.

As with any user input, you will need to implement some business logic validation rules on top of the extracted data. It can range from simple validation such as regular expressions, or custom validation calling a web service to check the validity of a pin code.

Natural Language Understanding

Conversational Intelligence

This is where things start to get really complicated. Designing an intelligent conversation based on the NLP intents and entities is a journey that can be as deep as a black hole for your expenditure. You have to develop an algorithm for each conversation, and a simple navigation, so that the user can start over. You can use simple decision trees, state workflows, slot-based algorithm or some advanced deep learning algorithms to control the conversation.

Conversational Intelligence

Integrations

Since the main purpose of your chatbot is to execute some business process such as ordering items, purchasing products, or booking appointments, you will need to integrate with an existing system. The integration will involve business logic validation and rules, a persistence of data and any other operations that might be required as part of your business process. If you already have a backend with a good service layer, you can easily realize some savings here.

Integrations

Control Panel (optional)

Once your chatbot is deployed and your users are actively using it, you might need a backend for exploring your chatbot conversation history (for channels that don’t support it out of the box), users, error logs. You can also add a simple analytics metrics to understand your bot’s performance.

Control Panel

Total Cost of a Chatbot

The back of the napkin estimate for an intelligent chatbot that uses Natural Language Understanding and is integrated with an existing set of systems deployed in Facebook Messenger comes to about $35,040 based on our experience.

Total Cost of a Chatbot

How Can You Cut Costs by 70% and Dramatically Speed Time-to-Market?

In our history at Progress, we are known for building industry leading developer productivity tools, and we couldn’t get settled with the complicated process and services you need to develop an intelligent chatbot today. That is why, with NativeChat, we set a goal to cut this cost significantly.

  • Backend—You don’t have to setup your own backend and write server-side logic, as NativeChat is hosting your chatbot for you.
  • Channels—You have a choice of channels already at your disposal without the need to implement channel specific UI or configurations. Further, NativeChat comes with pre-built UI components for every channel that can be configured declaratively without writing code.
  • Natural Language Understanding—NativeChat uses dedicated NLP service, which comes with dynamic training configurations to let you do training on top of existing data (from your CRM, for example) without the need to manually copy data back and forth.
  • Conversational Intelligence—We have developed a technology that enables developers to simply describe the fields and message they would like to extract from a conversation, and NativeChat handles the rest.
  • Integrations—The cost for developing your business logic is the same, but here at Progress, we have the industry leading BaaS product that can help you cut this cost and time further. Kinvey is the leader and top-ranked in current offering in “The Forrester Wave” for Mobile Development Platforms, Q4 2016, and provides a wide range of integrations with existing enterprise systems.
  • Control Panel—You can not only browse your chatbot’s conversation history and users, but you can also use the Control Panel to easily edit all messages that your chatbot sends real-time.

If you want to create a chatbot that has all these built-in best practices, check out NativeChat or dive right into the NativeChat portal at the link below.

Create My Chatbot

hirsto-borisov

Hristo Borisov

Hristo was formerly responsible for bootstrapping and leading new products at Progress in markets that have strong potential (>$1 billion) and are growing with CAGR 30% and above. Hristo had been with Progress for more than 10 years and led Progress NativeChat, an artificial intelligence-driven platform for creating and deploying chatbots based on patent pending CognitiveFlow technology that can be trained with goals, examples and data from existing backend systems.

Comments

Comments are disabled in preview mode.
Topics

Sitefinity Training and Certification Now Available.

Let our experts teach you how to use Sitefinity's best-in-class features to deliver compelling digital experiences.

Learn More
Latest Stories
in Your Inbox

Subscribe to get all the news, info and tutorials you need to build better business apps and sites

Loading animation