Hi! My name is Travis. I lead the team that created Maia, the Khoros chatbot. It’s pronounced MY-uh, in case you were wondering. Maia is Khoros’s new virtual guide, assistant, and friend.
I’d like to take a moment and reflect on the process of creating Maia. By giving you some insight into how we created our bot, we hope to give you some inspiration for your own chatbot journey.
In anticipation of the release of Khoro’s newest product, Modern Chat, an amazing chat program that has AI and bot capabilities, I approached my leadership team with a concept for our own chatbot. The idea was to build a bot named Maia, that would provide both sales and support functionality, and eventually serve as a true virtual helper throughout all of our products.
The bot’s name was inspired by the Khoros Community, Atlas. The Greek titan Atlas had a child named Maia, who was also the parent of the Greek god of messengers, Hermes. Maia is all about communication and helping you navigate Atlas, so I thought this would be a perfect name.
The project was approved and a team was put together, consisting of a Product Manager, Developer, and Conversational Designer. This is the minimum amount of people I would recommend if you are using a chatbot development software; you should expect to have a larger team of developers if you are going to make a bot from scratch.
At the same time, Khoros put together a group of stakeholders that would ensure the bot was serving in the best interest of every team across the company. This group is called a “Center of Excellence.” This has worked really well, and has fostered great cross-functional collaboration.
Building a bot is not easy. There are many pitfalls you will encounter, but we’ve found that an easy way to avoid a lot of those pitfalls is to have a clear and concise vision for the bot, then start simple to implement that vision. From there you can iterate and add additional experiences and flows.
We wanted Maia to serve as a Sales and Support assistant. It needed to both be able to help the sales team find new leads, but also to help existing customers navigate all things Khoros. Of course, we couldn’t do all of that overnight, so for the first phase, we only focused on Atlas and Khoros.com, with the plan to expand into Khoros products in a later phase. Adding a bot to a product is more nuanced than just having a navigational assistant - it takes careful planning and execution. Users' needs in the product are usually more immediate, so we want to ensure that we are providing a relevant experience.
Once we had a plan and vision in place, it was time to think about the bot’s identity and persona. Studies have shown that bots with distinctive personalities drive more engagement than bots who are merely functional. When creating Maia, we wanted to make sure it had a personality that would help users while still being engaging and fun. One thing to always remember is not to try to pass your bot off as human, ever. This can be seen as deceitful to consumers. However, you can still have a bot that is clearly a bot with a human-like personality.
When considering Maia’s personality we really wanted to get it right, so I enlisted the help of a peer who is an independent filmmaker and knows her stuff when it comes to character creation. NatalieH came through for us with some incredible insights and a personality for Maia.
As a digital engagement platform, Khoros helps our customers connect with their customers. Therefore, Maia had to be a model for helping people connect.
We looked to the people who are really good at connecting with customers, our Product Coaching team. They are a delightful mix of nerdy, helpful, and hip. Basically, everything we would want Maia to be.
Once we had the personality down, Natalie used those characteristics and tone to build a “voice” guide, so no matter who is writing the dialogue, Maia's voice will always be consistent.
The name, personality, and voice were set. We were ready to design and build Maia. The Khoros Brand Design team gave us an incredible design for Maia's avatar. We spent a good amount of time thinking of all the ways a bot could help our users, and let me tell you, there are a lot of things a bot can do. We narrowed it down to four main themes and started in a very basic way, knowing that we would iteratively improve over time. The themes were Sales, Education, Support, and Company Updates.
Each theme was given three possible offshoots and then branches out into a spider web of possible things Maia could help people with. I did this by mapping flows that would end in desired outcomes. Once I knew where I wanted the user to end up, I could train Maia to get them there. I also didn’t add too much activity into any one flow, instead opting for many little flows that work together to accomplish bigger things. That way, we can edit the little flows over time without disrupting the overall experience.
Creating flows is kind of like drawing a treasure map. You have to account for user behavior, which is hard because people are complex. Luckily, Modern Chat has a pretty great AI that helps me train Maia without having to program every little thing. Once the map is drawn, the bot Developer and I worked together to build Maia. I built the flows and the developer built integrations that would allow Maia to actually do things. For example, we built an integration with StatusPage so you can ask Maia what the status of any of our solutions is. We then extensively tested the functionality on a staging website and worked out most of the bugs.
July 13, 2020, was the big day. I was very proud to introduce Maia to the world. I hope you’ve had a chance to interact with Maia, and if they weren't super helpful, or didn’t recognize what you told them, just remember that every day they get a little better. You can be part of improving Maia by clicking on the little chat bubble in the lower right-hand corner and saying “hi.”
I would love to hear your thoughts about Maia or chatbots in general in the comments.
Review release notes and updates for all of our products! Select a tag to browse by product or resource type.