Professional Documents
Culture Documents
CONVE R S AT I O N
DESIG N
BY B L ACK OP S
W R I T T E N B Y H I L L A R Y B L A C K
/ / / / / / / / / / / / / / / / / / / / /
2 0 1 8
© A U G U S T
•
S C R I P T
CONTENTS
C H A T B O T
H OW TO D E SI G N A CH ATB OT S CR IP T F RO M S CR ATCH
A
ABOUT ME /////////////////////////////////////////////////
D E S I G N
INTRODUCTION ///////////////////////////////////////////////// 4
///////////////////////////////////////////////// 9
H O W
STEP 3: HELLO
///////////////////////////////////////////////// 11
STEP 4: MAIN FLOW
•
/////////////////////////////////////////////////
STEP 5: CATCH ALL 14
O P S
/////////////////////////////////////////////////
STEP 6: PROTOTYPE 17
B L A C K
/////////////////////////////////////////////////
STEP 7: REPEAT 19
///////////////////////////////////////////////// 21
WHAT’S NEXT?
!2
HI, I’M H ILL ARY
A N OTE B E F OR E W E S TART /////////////////////////////////
/ / / / / / / / / / / / / / / / / / / / /
I’m Hillary, the Head of Chatbot Strategy and Conversation Design at Black Ops.
To give you a background on how I developed this process, for the past 2 years I've been
designing conversational chatbots for our clients (TradeStation and Haven Life to name a
few). Over time, I've battle tested different tools, outlines, and ways to communicate
a chatbot script. This is my current best practice. At Black Ops, we always do an in depth
strategy session with our clients. Depending on the complexity of the project, some bots
may require more steps, meetings, brainstorming sessions and legal guidelines.
2 0 1 8
The personalities can vary, and the functions might include APIs, links to your website, or
© A U G U S T
other assets. If you need help with that, shoot us an email and we can chat more about
working together to design and build you an awesome bot.
For the purpose of this ebook, I'm going to use a fictional bot that I'm creating for myself to
•
do workouts in the gym, so there won't be any integrations. I won't be covering the
S C R I P T
personality, I'm just going to wing it. Let's dive in.
C H A T B O T
A
D E S I G N
T O
H O W
•
O P S
B L A C K
!3
/ / / / / / / / / / / / / / / / / / / / /
I NTROD U C TI O N
2 0 1 8
© A U G U S T
Are you staring at a blank computer screen right now, or just popped open
Google to try and figure out how to start designing your chatbot script?
Overwhelmed by tools (or lack there of) and just want something easy to
•
S C R I P T
follow? This ebook should take the guesswork out, and provide you with
the tools (like my exact script template) and best practices to design your
chatbot conversation script.
C H A T B O T
First, who is this for?
A
• You have a basic understanding of what a chatbot is and how it will
D E S I G N
work for you (If you don't check out this blog post).
• You have an idea of what you want your chatbot to do/what the goal is
(If you don't yet, start with this blog post). T O
• You want to write out the entire script for your bot before it's developed,
H O W
Maybe so you can get it approved by someone else, or because you're
writing and not building, which is what I do.
•
O P S
If you're planning to write while you're building your bot (which I wouldn't
B L A C K
recommend because outlining and editing is a big part of my process) or
using Chatfuel to build, you may find some but not all of this process
relevant.
!4
/////// H O W TO DES IG N A CHATB OT SCR IPT FROM SCR ATCH
OUTLINE
S TEP ONE ///
B L A C K O P S
CRE ATE YOUR OUTLINE
The best way to get started with your chatbot script is to visualize it. Creating a flow chart that outlines
/ / / / / / / / / / / / / / / / / / / / /
the main goal of your bot, and how the conversation will flow, will help you identify everything you
need to write. I use draw.io, an online flow chart builder, to create a simple flow chart leading from the
“Hello," to the "Main Flow" entry points (for this, the main flow is doing a chosen workout),
and different points where the bot will jump to earlier flows in the script, or how it loops together.
Here is a look at the interface of Draw.io. As you can see, I've outlined all of the flows I will be creating
for my bot. This can be as complex or basic as you'd like. You can also put descriptions or full text
boxes in your flow chart if it makes it easier. I find this takes too much extra time!
2 0 1 8
© A U G U S T
•
S C R I P T
C H A T B O T
A
Say you're offering a reminder for your users to come back at another time. You can do this at the
D E S I G N
beginning and at the end, and use the same dialog for both points. Now that I have my script outline/
map, I can start writing the sections one "box" at a time, and will be able to easily identify each point
where it veers off to another path.
T O
This reminds me of elementary school when we learned how to write 5 paragraph essays using clouds
H O W
to visualize the outline. ☁
•
O P S
B L A C K
R E M E M B E R T H E S E ?
!6
/////// H O W TO DES IG N A CHATB OT SCR IPT FROM SCR ATCH
TEMPL ATE
S TEP T WO ///
B L A C K O P S
CRE ATE YOUR TEMP L ATE
/ / / / / / / / / / / / / / / / / / / / /
Similar to laying out the pieces in Draw.io, next we'll lay out the flows
in the document we'll use to write all of the lines of copy.
I use Google Sheets because it's easy, and I often have to get
approval from clients and legal teams so I can easily share and
download the file, and others can comment on specific lines. I have
yet to find the perfect tech solution for script writing, which is why I
created my own template. Many other online tools are out there in
the bot space, but for lengthy and complex bots, they've fallen short
2 0 1 8
for me personally.
© A U G U S T
If you want to use my template, I've made it public so you can easily
access and adapt it for your own projects.
•
M Y T E M P L A T E
S C R I P T
C H A T B O T
A
D E S I G N
T O
H O W
•
O P S
C l i c k H e r e To G e t Yo u r
B L A C K
C h a t b o t S c r i p t Te m p l a t e
!8
/////// H O W TO DES IG N A CHATB OT SCR IPT FROM SCR ATCH
HE LLO
S TEP THREE ///
B L A C K O P S
WELCOMI NG YOUR USER
/ / / / / / / / / / / / / / / / / / / / /
Now for the fun part - ACTUALLY WRITING!
I start all of my scripts with the Hello Flow, which is what greets the user, communicates what the
bot will do, and leads them to the main flow. For my example, the user indicates that they want to
work out, and then chooses the workout they want to do. Each of the individual workouts will be
their own main flow, and there will also be a "Reminder" flow and a "Motivation" flow accessible at
multiple points in the script. You'll notice I planned those out already in my initial flow chart
drawing, so it was very easy for me to know how to write the script.
2 0 1 8
© A U G U S T
•
S C R I P T
C H A T B O T
A
D E S I G N
The template also has commands for the types of messages and actions in the bot, so I know
how those messages will be displayed (like quick replies or images), and in the notes section I T O
flow, indicated by a "Jump To"). There's no rule for how long your Hello Flow will be, but in
general I aim to ask the user 2–3 questions so they get used to how the bot functions, and I
•
try to not overload them with long blocks of text back to back (ie, make it conversational).
O P S
B L A C K
HELLO !10
/////// H O W TO DES IG N A CHATB OT SCR IPT FROM SCR ATCH
MA IN FLOW
S TEP FOUR ///
B L A C K O P S
CO NVERTI NG YOUR USE R
This is where the magic happens 🔮 And by magic, I mean this is where you get your users to
/ / / / / / / / / / / / / / / / / / / / /
convert. When it comes to a chatbot, a conversion can be anything from signing up for a list,
getting a quote, buying a product, clicking "call now," or in my case, completing a workout and
setting a reminder for the next day.
Basically, the conversion "goal" is everything up until the point where a user leaves the bot and
goes to your website, app store, or other landing page. What happens on that end is up to the
landing page, not the bot. In other words, the KPIs of a bot should only be things that happen in
the bot - but this is a post for another day.
2 0 1 8
© A U G U S T
•
S C R I P T
C H A T B O T
A
If you've completed an outline of your bot, you should know the steps necessary to get your
D E S I G N
user from point A (saying hello) to point B (completing your qualification steps). If you don't,
here are a few ideas:
T O
• Asking the user for their zip code to help provide nearby sales reps
H O W
/ / / / / / / / / / / / / / / / / / / / /
Beginning with the end in mind is where I always like to start my main flow. You've gotten the user's
attention through the Hello Flow, and now you'll need to connect the dots to the finish line in a
conversational way. Similar to the Hello Flow, keep in mind that you shouldn't be sending huge blocks
of text, or a bunch of messages back to back without asking the user to engage via a Quick Reply or
typing in. I like to add in GIFs, photos and videos to break up the text, too. You'll also want to frequently
tell them what you want them to do by using language that suggests "say yes if you agree." The
questions should be clear with little room for user error. I personally like using quick replies instead of
open field typing for this very reason.
2 0 1 8
© A U G U S T
•
S C R I P T
C H A T B O T
A
D E S I G N
If I’m interacting with users that may not be familiar with a bot (like 65+ demographic which is one I’ve
written previously), I may create a more hand-holding version of my main flow, where details are further
T O
explained, or in the case of exercising, where the user can say “show me how” to do a certain exercise.
H O W
If you’re qualifying a user for a service and providing a quote, it may also be beneficial to have a
streamlined “fast track” that is only question and answer, so they can quickly get to the “point b” and
•
O P S
MA IN FLOW !13
/////// H O W TO DES IG N A CHATB OT SCR IPT FROM SCR ATCH
C ATCH ALL
S TEP FIVE ///
B L A C K O P S
SORRY, I DI DN’T GET THAT
/ / / / / / / / / / / / / / / / / / / / /
One of the things that resonated the most with readers in my "What Is Conversation Design" blog post
was the Catch All. A little reminder of what that is:
2 0 1 8
SAY IN G "OO PS, W E F*C KE D U P, L E T ' S
TRY AG AIN" IS O NE OF T HE MO S T
© A U G U S T
P OWE R FUL THINGS A CO NV E RS AT I ON
D ESI GNER C AN DO.
•
S C R I P T
Knowing that users will push the boundaries of your bot, or that technology isn't perfect, planning for a
C H A T B O T
bot to fail is your strength. This is where you can have fun and flex your creativity, and hopefully, get a
user back on track without frustrating them. Having a catch all that says something other than “sorry, I
didn’t get that” over and over is the most important part of your bot, in my opinion.
A
D E S I G N
T O
H O W
•
O P S
B L A C K
/ / / / / / / / / / / / / / / / / / / / /
After the Hello and Main Flow, I always write my Catch All. If you are using Black Ops open source
framework Stealth to build your bot, we have the capabilities for multi level Catch Alls built in, so it’s
super easy to add as many different levels of responses as you want. I recommend at least 3. Typically
I start with 1 where I repeat the question or message, and a second where I offer a set of Quick Replies
for the user to select and get back on track easily. If they fail a third time, you can direct them to a
place for help (phone number or website), or build the functionality to connect them to a Human via
Facebook Messenger.
2 0 1 8
Here's a look at what I came up with for my workout bot.
© A U G U S T
•
S C R I P T
C H A T B O T
A
D E S I G N
T O
H O W
•
O P S
B L A C K
PROTOT YPE
S TEP S IX ///
B L A C K O P S
VISUALI ZI NG THE FLOW
/ / / / / / / / / / / / / / / / / / / / /
Still with me? Here's where it starts to get fun. Using an online prototyping service called Bot Society,
I'll create videos for each of my 3 flows (Hello, Main, Catch All). Typically I'd send these out to my team
and to the client, so they're able to see what the bot will look like when it's real. It's also really helpful for
me to get a sense of the length of my text blocks, and if any parts in the copy feel awkward when I'm
reading them as the audience. This is also a much more user friendly way to introduce your bot to your
clients instead of a scary Google Spreadsheet. That can come later. Bot Society allows you to create
videos, GIFs or even live demos of your bot. Here's a video of my Hello + Main Flow, and 1 level of the
Catch All at the end.
2 0 1 8
© A U G U S T
•
S C R I P T
C H A T B O T
A
D E S I G N
T O
H O W
•
O P S
B L A C K
!18
/////// H O W TO DES IG N A CHATB OT SCR IPT FROM SCR ATCH
REPE AT
S TEP S E VEN ///
B L A C K O P S
AND REPE AT. AND R EP E AT.
/ / / / / / / / / / / / / / / / / / / / /
2 0 1 8
© A U G U S T
WRITE. PROTOTYPE. EDIT. /////////////////////////////////
•
If you like, love, and want some more of your script, now's your time. Once the general direction of my
S C R I P T
bot is drafted, I'll add new sheets for all of the other flows I need to write. Looking back at my original
outline from Draw.io, I have 9 flows left, and I'm sure that as I'm writing them, I'll discover a few more
that should be added. Like selecting different fitness plans based on your level. At this point at least,
C H A T B O T
I'll duplicate my Main Flow workout I created previously, and use that for my remaining workouts.
Repeat the writing and prototyping until all of your flows are complete. I typically don't create videos
A
for every flow, but it might be helpful for the editing process especially if you don’t have experience.
D E S I G N
Once the bot is developed by you or your team, you'll want to do another editing pass with the live
version before making it public. Delays, text length, and even conversation flow feels much different in
a live bot then they do in a static spreadsheet, or even in a video. T O
H O W
REPE AT !20
/////// H O W TO DES IG N A CHATB OT SCR IPT FROM SCR ATCH
WH AT ’S NE X T
///
B L A C K O P S
TURNING YOUR BOT INTO A
RE ALIT Y
/ / / / / / / / / / / / / / / / / / / / /
2 0 1 8
N O W W H A T ?
You have your awesome script drafted out, and you can visualize it with your prototypes. If you’re
© A U G U S T
handing your script off to your marketing or legal team, now would be the time to do so. I find it best
to share my Google Sheet with the team and allow them to make comments on the cells that need
editing. From there, you’ll have a few options to create a chatbot from your script.
•
There are self-serve platforms that will enable you to build a chatbot on your own without coding
S C R I P T
(like Chatfuel), but those are limited in capabilities (they can’t integrate with any of your internal
client software, CRMs or APIs), and currently only support Facebook Messenger.
C H A T B O T
Another option is to create something more custom, and build a chatbot on our open source Ruby
framework, Stealth. Stealth allows you to host your bot on your own, and create something for
Facebook, SMS, Alexa and more. You can also hire Black Ops to build your chatbot with Stealth, and
to help you with strategy, conversation design, and advertising.
A
D E S I G N
Once your bot is live, you’ll want to do more editing. While prototypes may feel real, once the
technology comes into play, you may find there are areas you want to add longer delays, or that your
images are too large and take too long to populate. You may also discover new flows that need to be
T O
written once the bot is available to the public. Often times users get tripped up in areas we don’t
expect because we’ve read the script so many times.
H O W
The best part about conversation design is that you can experiment, and change is easy. Creativity is
•
encouraged and there are endless opportunities to engage your audience in a conversational
O P S
interface. Remember your goal, but don’t forget about your user. The only rule is - keep it
B L A C K
conversational.
Want to learn more about conversation design? Looking for test subjects for your chatbot?
Join my Facebook Group!
S TE ALT H !22
THINGS TO REMEMBER
/ / / / / / / / / / / / / / / / / / / / /
B E G I N W I T H T H E E N D I N M I N D
Your Point A is where the user enters the bot and Point B is where the user
“converts” on your goal. Through the dialog, you’ll lead the user to the goal, so
keep in mind all of the steps required to accomplish that goal from the beginning.
This allows you to create a user journey that’s more logical from the user’s point
of view.
2 0 1 8
E X P E C T F A I L U R E
Planning for the inevitable “failure” of your bot is crucial. Whether it’s something
© A U G U S T
out of your control, like the technology, or simply someone trolling you, it’s like a
user will get off track at some point. How you decide to engage with them at that
point can make or break their experience with your bot.
•
S C R I P T
E D I T O F T E N
C H A T B O T
Throughout your design experience, you’ll want to continue to prototype and
edit. Doing this puts you in the user’s shoes instead of your own, and you’re more
clearly able to see where the dialog is confusing or can be condensed.
A
D E S I G N
T O
Y O U C A N H A V E F U N C T I O N A N D P E R S O N A L I T Y
H O W
What separates your bot from all others out there? The most important thing to a
user will be that your bot works and does what you say it will do, but anything
•
O P S
you can do along the way with the personality to create a memorable experience
is what makes your bot sharable.
B L A C K
TH ANKS
FOR
RE A D ING
H I L L A R Y B L A C K
T HAT CO N VERTS? NE ED HE L P WI TH
WEB: whoisblackops.com
YO UR S TR ATEGY AND DESIGN?
SOCIAL: @internethillary S END ME AN EM AIL .