Like content design and UX writing, conversation design is an exciting and fast-growing field. Unlike content design and UX writing, there aren’t that many resources available to help people learn the craft. Enter Hillary Black, author of our Conversation Design for Chatbots course, and Ryan Farrell, creator of the Daily UX Writing Challenge. Thanks to their collaboration, we have a valuable new resource for learning conversation design: the Daily Conversation Design Challenge.
I was the first person to complete this new 14-day email challenge and had a great time! It gave me four very timely learning opportunities:
- How to write for voice user interfaces
- How to write for an SMS (text) bot experience
- How to use Botsociety’s redesigned tool (I also have experience with Botmock)
- How to mock up designs using Figma (I’d only used Adobe XD before)
Having already taken the Chatbot Writing & Design course, I put the skills I learned to the test and am pleased with the solutions I came up with, as well as the various mockups I designed. All were encouragingly reviewed by Hillary and have been added to my portfolio.
Let’s go ahead and take a look at them. Oh, and expect some wordplay and the odd hidden joke (because that’s what I do — I’m sorry, or you’re welcome).
Day 1: Welcome message
- Scenario: A user is exploring nearby museum websites and opens a certain museum’s website chatbot widget.
- Challenge: Write the welcome message that appears when a user opens the chatbot.
- Requirements: Message: 140 character limit
Button(s): 20 characters max (if needed)
My thinking
Naturally, a welcome message should be, well, welcoming. It should be warm, friendly, and have a touch of enthusiasm. So that’s what I went for here. I used “we” because a good guide doesn’t leave people to amble around aimlessly; they go with them on the journey, even leading the way. That’s what Artur is supposed to do.
And when a bot is introducing itself, it’s important to reinforce the brand as well as set expectations for the person by telling them what it can help them with. I made sure the quick responses I used were all clear, concise, and consistent with what he said he could do.
Day 2: Re-engagement message
- Scenario: A user has previously used a supermarket’s Messenger bot. This month, the supermarket is having a promotion and they want to send out alerts to all of their customers.
- Challenge: Write a promotional notification message for a returning user that alerts them of a new online ordering feature and directs them to more information.
- Requirements: 2 messages max, 200 character limit for each
My thinking
I wanted to highlight the value of this new feature for the person, how they’ll benefit personally. I again wanted to sound warm, friendly, and slightly enthusiastic, while giving them a practical incentive to act quickly on what they’ve just found out.
Hillary ideally wanted one message, but since she graciously afforded us two for this challenge, I was happy to use the second to add some personality.
Day 3: Instructions
- Scenario: A customer just checked their loyalty points online and it looks like they weren’t credited for their most recent transaction. They pop open the website’s chatbot which can help them solve this problem.
- Challenge: We need to get the user’s transaction number (found on their receipt) in order to credit the points to their account. Instruct them to send the information you need to help them out.
- Requirements: 3 messages maximum, 200 character limit each
My thinking
I worked with the thought that there might be some annoyance here, so this was no time to be cute or funny. I wanted to be as clear and direct as possible with my words, and in line with best practices, I gave an example of the input my bot, Mary Jane, was looking for. This will help minimize the chance of Jordan entering the wrong input and the bot running into problems, which would cause further annoyance.
Hillary suggested having the bot show a picture of a receipt with the transaction ID circled. That’s a great idea, and I’ll keep it in mind to use in other situations in the future.
Day 4: Human handoff
- Scenario: Your bot has failed, a lot. The user has grown frustrated so it’s time to hand things off to a human to recover.
- Challenge: Write the message that will hand off the user from the bot to a human agent.
- Requirements: 1 message, 140 characters max
My thinking
Yikes! This is a high-tension situation that needs to be handled with care, humility, and precision. It’s no laughing matter, and given the person asked to speak with a human “now!!!” I simply wanted the bot to comply “now!!!”
Although there’s always a debate concerning whether or not to say “sorry,” I felt it was appropriate here. Hillary agreed. I added the emoji for a personal touch as well and said “shortly” instead of giving a wait time because I wanted to manage expectations and avoid compounding the person’s frustration further. I just hope the human got there soon enough.
Day 5: Contextual error message
- Scenario: A hotel chatbot provides recommendations for places to stay based on a ZIP code. This user typed in a 4-digit number instead of a valid, 5-digit ZIP code.
- Challenge: Write an error message to explain what happened and get them back on track.
- Requirements: 2 messages maximum, 140 character limit each
My thinking
The UX writer in me came out here (throughout the 14-day challenge, actually). I didn’t want to sound harsh or shame the user for making a mistake, so I chose to avoid statements like: “You entered the wrong ZIP code.”
I just wanted to get them back on track, and I added a bit of personality as I gave them an example of the input that was needed. Who doesn’t like Ibiza?
Day 6: Turn taking
- Scenario: A user wants to rebook their airline flight, but before they do, we want to understand why they want to rebook, and when they want to fly. This will require more than one question, with the user replying to the question before moving on to the next one.
- Challenge: Write the messages the chatbot will say to collect this information from the user (why they want to rebook and when they want to fly), and also what the user will say in response.
- Requirements: 2-3 chatbot messages, 2 user replies. Chatbot messages should be no longer than 200 characters each. If you choose to use buttons, 20 character limit on those.
My thinking
If I were Skyler, I’d be a bit taken aback by the bot asking me why I’m rebooking my flight. ‘How is that the bot’s business?’ So my aim was to have the bot put them at ease by giving the reason behind the question. Then, I wanted the bot to acknowledge the chosen response before moving on to complete the task at hand.
I had Jetta give an example of the input needed to minimize the chances of the wrong input being entered. Ideally, though, I’d have Jetta show a calendar to allow for the selection of new dates from that. Hillary had the same thought.
Day 7: Abandoned cart re-engagement
- Scenario: A user was shopping at your online jewelry store and added multiple items to their cart, but hasn’t completed the purchase and it’s been 20 hours. They have opted in to receive messages from your business, so you can send messages directly to them via SMS.
- Challenge: Write an abandoned cart re-engagement message attempting to get the user back to your site to purchase their cart items.
- Requirements: 1 message, 200 character limit.
My thinking
A person could abandon their cart for any reason, really. That reason could be due to serious financial constraints, or simply a matter of timing (they’re not ready yet and are saving it for later). Whatever their reason, it’s neither the company nor the bot’s business.
I wanted to make sure my copy didn’t come across as either nosy or judgmental. I wanted to sound warm, friendly, and encouraging. I also wanted to give them an incentive to complete their purchase as soon as they can.
After reading the message, Hillary said she wanted to buy. The “no code necessary” addition is actually her idea. It breaks the character limit, but she was fine with that for the sake of creativity. That’s what we’re talking ‘bout!
Day 8: Double opt-in
- Scenario: You have a car wash business, and throughout the shop while customers wait for their car you have signage that prompts them to subscribe to text messages to receive coupons and access their membership number on their phone. They text “CARWASH” to your number to start a conversation.
- Challenge: Write the first message the user will see.
- Requirements: 1 message, 180 character limit. Must include a reply prompt (eg: reply YES) and an unsubscribe. No images or links.
My thinking
By now, you’ve probably realized that if I see an opportunity to add some personality to my copy, I’ll snatch it (under the right circumstances, of course). The “Beep Beep” was fitting, I felt, and Hillary thought the emoji was a nice touch as well.
As for the core message, I wanted to highlight the value of subscribing to the text messages for the customer as well as give them an incentive to do so — all while complying with the double-opt-in law. And yes, for the mockup, we went all dark mode just to shake things up. 😎
Day 9: Personalized recommendation
- Scenario: A user wants to order a bouquet from a flower delivery service chatbot. They have the option of selecting a size and a theme for the order and will then be presented with 3 recommendations they can choose from.
- Challenge: Write the conversation that a user will have with the bot, starting from the first question the bot will ask (skipping the “hello” part). Find out what size arrangement they want and what gift theme. You can have the user reply with buttons or open text.
- Requirements: Minimum 2 questions, 2 user responses. Reply confirmations/transition messages optional. Each message has a maximum of 140 characters, if you use buttons they are limited to 20 characters each.
My thinking
I didn’t know that much about the flower industry, so I did a little research for proper context. I wanted the bot to be friendly and warm in getting the info necessary for making appropriate recommendations, but not too nosy or presumptuous.
For input options, I used both open text and quick responses as it felt appropriate to do so here. For the sizes, Hillary suggested adding a way to help the person better understand how big or small each arrangement is, so I added the “Compare sizes” option to take care of that.
I was also thinking, what if the person doesn’t like the recommendations the bot, Lily, made? In that case, I’d have her give the person the option of seeing more floral arrangements in a carousel.
Day 10: Start command
- Scenario: A user has a robot vacuum at home, and they hooked it up to their smart speaker so they can start cleaning their home with a simple command (how futuristic!)
- Challenge: Write the command the user says to their smart speaker to initiate the robot cleaning schedule. Then, write the reply that the speaker says confirming that it understood.
- Requirements: 1 user command (be sure to state the name of the speaker first), 3 seconds maximum (about 7 words). 1 voicebot reply, 10 seconds maximum (about 25 words).
Conversation
Person says: “Alexa, start NeatFreak’s cleaning schedule.”
Alexa says: “Ok, I’ve started NeatFreak’s schedule. It’s going to start cleaning the living room first, then the kitchen and the bedrooms. Watch your step!”
My thinking
I had to do some research here, as I’d never written for voice or used a smart speaker before. In the end, I wanted to have Alexa acknowledge the command given and assure the person it was being carried out.
In using Botsociety, I played around with the various voice features (pitch, emphasis, and so on) to get Alexa to sound as human as possible. I also took the opportunity to add some personality to this interaction with the “Watch your step!” bit. And the UX writer in me preferred the informal “start” instead of the more technical “initiate.”
Day 11: Multimodal login
- Scenario: A user would like to track their online orders using their smarthome “Smart Speaker” hub, but they have not set up this feature yet. In order to track, they will need to log in to their account using the app on their phone, so their speaker can access the information.
- Challenge: Write the dialog the smart speaker will say to the user instructing them to log in to their account on their phone in the app. In addition, write the confirmation message they will receive from the speaker once they are logged in.
- Requirements: 2 separate voicebot messages, each 10 seconds maximum (about 25 words).
Conversation (To listen on Botsociety, open Google Chrome)
Person says: “Hey, Alexa, can you tell me when my iPhone 13 Pro and iPad Mini will get here?”
Alexa says: “Sure, I just need your order info. Sign in to your account in the Alexa app, and turn order notifications on. I’ll wait…”*pause 6 seconds*
Alexa says: “Thanks, I have the info for all your orders now. Your iPhone 13 Pro and iPad Mini just arrived at your skybox for processing.”
My thinking
I did some more research here, as I’d never designed for a multimodal experience either. In the end, I wanted Alexa to avoid shaming the person for not setting up the feature before and kindly tell them what she needed so she could do what they asked. I also wanted her to give simple, clear instructions to guide them toward fixing the problem.
In the second message, I wanted her to assure them they were successful in doing so and to give them the order tracking info they asked for at the outset. I again played around with the various voice features to get Alexa to sound as human as possible.
Day 12: Subscribe
- Scenario: You’re a beverage company and you’ve just chatted with a user — it went great! Now that you’ve completed the experience, here’s a chance to ask them to subscribe to your messages for future promotions and news.
- Challenge: Create a message that asks the user to opt in for future communications from the brand.
- Requirements: 1 message maximum, 200 character limit. Must be a question (most likely, a yes or no)
My thinking
People like being the first to get their hands on new things and the latest news, so I focused on that when highlighting the value of subscribing to the company’s messages. I also offered an immediate incentive to encourage the person to do so.
I initially had “type” instead of “reply,” but changed it after feeling immense regret. Hillary was on the same page, confirming that the latter is more widely accepted.
It just makes more sense too, as merely typing the prompt doesn’t trigger the starting or stopping of the messages. For the action to be triggered, what’s typed needs to be sent as a reply.
Day 13: Failure message/catch all
- Scenario: The user has said something that your bot doesn’t understand, bummer.
- Challenge: Write the message the bot sends to the user when it does not understand what they are trying to do, and attempt to get the conversation back on track.
- Requirements: 1-3 bot messages that should explain what has happened and attempt to get the user back into the experience. Each message is limited to 140 characters, and if you decide to use buttons, 5 maximum, 20 characters each.
My thinking
My aim here was to come up with a friendly and helpful message that could suitably handle various situations where Jetta can’t understand something the person said.
I wanted the message to be able to get the person back on track without causing them frustration. I saw this as a level one situation, not too serious, so I took the opportunity to use a little humor.
Hillary suggested a slight change in the wording to make the person a little clearer on exactly what the bot can help them do. I initially had: “What would you like to do?”
Day 14: Set a reminder
- Scenario: A user has enabled a to-do list app on their smarthome speaker so they can capture their daily tasks whenever they come to mind. Now that they have listed their options, they need to be prompted to set a reminder to actually get things done.
- Challenge: Confirm to the user that you have captured their “to-do” (maybe you can even restate it to them), and then ask when they would like to be reminded.
- Requirements: 2 separate voicebot messages, each 10 seconds maximum (about 25 words, minus repeating what the user says if you choose to include)
Conversation (To listen on Botsociety, open Google Chrome)
Doug says: “Hey, Alexa, set a to-do for me: I need to take the chicken out the freezer for dinner later.”
Alexa says: “Ok, Doug, I’ve set your to-do to take the chicken out the freezer for dinner later. What time should I remind you to do that?”
My thinking
My aim here was to firstly assure the person that their to-do was recorded. The fact that it was repeated to them should put them at ease. To make sure their to-dos actually get done, I wanted Alexa to be clear and direct in asking them for a specific time to give a reminder. “Later” could be any time, so I wanted to be specific to avoid confusion and resulting frustration if the reminder came too much “later.”
I again played around with the various voice features to make sure Alexa sounded as human as possible.
Joel is a UX Writer and Conversation Designer. Connect with him on LinkedIn.