Best Practices for Scripting Your Alexa Skill
In my previous posts in this voice assistant series, I have focused on the technical aspects of how to get started creating Alexa Skills and Google Home Actions. (If you missed those posts, check out Alexa 101 and Google 101.)
In this post, we will discuss scripting / designing your Alexa Skill or Google Home Action. How does one script for Alexa or Google Home? As there are UI/UX designers for creating websites and mobile sites, we need to go through a similar user experience design process for voice interactions. Unlike designing a website which is incredibly visual, this design is for the ears, a.k.a. “voice-first” experience.
Step 1: Invocation Name
On a mobile device, we usually search for an app by name, install the app, and then launch the app by tapping on the icon. On Alexa, we can search for available skills on the Alexa app, enable the skill, and then launch the skill with the phrase, “Alexa launch [skill name].” i.e. “Alexa, launch Balanced Running.”
We call this an invocation name, and we are invoking a skill.
Side note: Users may not need to ‘enable’ your skill since Amazon automatically enables all skills with a unique name.
Best Practice for Skill Names & Invocation Names: Always name your Alexa skill after your company. Your invocation name should also be the name of your company. This will be key in getting your skill approved by Amazon later. Side note: Technically, you can have a different invocation name from your skill name, but this is not advisable in 99% of situations. Differing invocation and skill names creates confusion for your users.
I work with business owners, and I always have them name their Alexa Skill after their company or brand name. After all, the skill should be an extension of their company, similar to their mobile app.
Step 2: Why?
Next, we need to consider why someone would use your Alexa skill. What can we offer the user in a voice experience (hands-free) that would prompt them to use our skill? Where can we add value to the user in a voice experience? Can we offer information that the user will find useful? Can we create personalized content for the user? How can we script a compelling story for the user in an interactive experience? The answer to this question goes back to Marketing 101, target markets and buyer personas. Why do they want or need your Alexa skill?
Step 3: Consider the conversation flow
We’re talking to robots. At the most rudimentary level, consider how IVRs are scripted. You call the toll free number, listen to a list of options (that might have changed recently), select options until you finally scream, “REPRESENTATIVE!!!”
But there’s no representative at the end of this conversation. Let’s try NOT to frustrate our users.
Alexa is programmed to respond based on human voice input. Essentially, you say something that hopefully registers as something Alexa is coded to hear and she responds as the code instructs. This is called an utterance. You utter, Alexa responds. Simple as that. If the user says something she is not programmed to respond to, you will need to input a generic, ‘unhandled’ response which might be a repeat of the current options in the skill. Consider your work in Step 2. Narrow down the functionality that you will provide in your skill. Consider the most popular areas of your website or mobile app.
Step 4: Write it Down
Now that you’ve completed the previous steps, you’re ready to write down what Alexa will say and what the user will say. Here’s a worksheet provided by Rob McCauley at Alexa Dev Day to help us script out Alexa skills.
Best Practices for creating your script:
- One Breath Test: Nobody likes the guy/gal that drones on and on. Let’s aim for an interactive experience with the user. Consider your child’s attention span. While Alexa does not have lungs, script her responses as if she would say them in ‘one breath.’ Can you say, “Welcome to my skill. Here are your 20 options. Option 1, blah blah blah, Option 2, re re re. … Option 20, la la la.” Can you say all of this in one breath? Have you completely lost your user by the time you get to option 6? Yes.
- Provide Definitive Choices: Your user cannot read Alexa’s mind. Your user probably doesn’t know what the skill is capable of unless Alexa tells the user directly. Tell you user (briefly), what the options are. Remember Step 3 where I asked you to narrow down the functionality? This is key.
- Script as a natural conversation between humans: Practice your script with a co-worker to see how it will sound. Remember the last time you called customer support and spoke a robot? Let’s avoid that. Consider including MP3s to add relaxing sound effects and hiring a professional voice actor to take your skill to the next level.
For additional resources on designing and scripting your voice experiences, check out Amazon’s Voice Design Guide here.
Next week, we will discuss taking your script for Alexa and mapping out your user journey and creating requirements.