3 Tips for Voice User Interface Design

best places to work
Becky Pierson
Oct 16, 2018

Voice user interface design is a new challenge

Whenever I’m faced with a new challenge I like to do research to learn as much as I can before I take a stab at defining my own design rules around that topic. I keep these design rules written down throughout the project so I can make sure my designs are backed by proven user research. They are a living, breathing document that I edit as needed and reference often. Recently I’ve been tasked with designing a voice feature for an IoT system I previously designed for an elderly demographic. These are my initial research findings– edit and reference as needed!

Voice user interface design encompasses all of your typical UX best practices. You’ll see some of those listed again below like having empathy and knowing your end user, but with voice they can have a different meaning. Here, we are specifically talking about a conversation. Conversation is key to a person’s day, robot or not. It can impact emotions and behavior. It’s so much more than an exchange of information. It can dictate whether a day is good or bad or whether a solution is found or not.

Where to start

In order to get started you need to identify your users and come up with user stories. Make sure your stories are good for a voice UI feature. You can do this by asking yourself a series of questions around each story. These are questions that you should ask:


  • Would they be comfortable talking about this topic out loud?
  • Do people already have face to face conversations about this task or topic?
  • Will there be a lot of back-and-forth dialog? (not good for voice)
  • Would this be quicker to do without voice? (not good for voice)
  • Can users do this when their hands or eyes are busy?


Once you have your key users and user stories you can create a persona (the voice) which should be the most appropriate voice to interact with your end users. Create a description of your persona using personality traits and specific adjectives. These should always vary depending on the application. Here is an example set of persona notes:


  • Comforting tone – I want the assistant to feel like a comforting friend, not a nurse or personal assistant
  • Friendly – It’s important that this assistant is helpful and has a friendly voice so it doesn’t startle anyone
  • Speak extra clearly and slowly – Sometimes the elderly can’t process words at a fast pace. If the spoken pace is slightly slower, they are more likely to catch everything.
  • Repeat when necessary – Understanding of when senior doesn’t catch on and assistant needs to repeat itself
  • Expect error – users will likely make mistakes by saying the wrong name, it is important to recognize patterns and to confirm before taking an action


At this point, you can write a sample script (Google has a great example set) and test it by role-playing with a colleague. Use the following principles to help you write your first script!


1. HAVE EMPATHY – Would you say that to your Grandma?

When a user asks a question they are hopeful for a helpful answer or the answer they are anticipating. Even if a question could require a yes/no answer the assistant should provide an empathetic response. If the answer is no, keep the conversation going. Whenever I write an assistant response I ask myself, “Would I say that to my grandmother?”


Bad example:

User: Can you help me find my glasses?

Assistant: No.


Good example:

User: Can you help me find my glasses?

Assistant: Sorry, I can’t help you find your glasses. Would you like me to call Jane so you can ask her to stop by and help?

User: No

Assistant: Ok, I won’t call Jane. Would you like me to call someone else in your care circle?

User: Pat might be able to help me. I think he’s off work today.*

Assistant: Ok, I’m calling Pat.


*You’ll note throughout I am anticipating the user giving unnecessary information to the assistant. This is a hypothesis I’ve made based on the user group of this product. It’s important to note this in the script so the assistant can sort through the weeds to find what they’re really looking for in the user responses.


2. BE CONVERSATIONAL – Don’t be a robot.

If you wouldn’t say it in a real conversation, don’t write it in your scripts. Make sure your assistant doesn’t become too predictable. A little variation in the responses is a good thing. In order to avoid frustration with users like in the bad example below, expect users to be informative and listen between the lines.


Bad example:

Assistant: You have a new community event invitation. Would you like me to read it?

User: Yes!

Assistant: The invitation says <pause> “We’re hosting a family dinner party this friday. Invite your friends and family just let us know how many you’re bringing. There will be a live jazz band and a chess competition.”

User: Oh wow, how fun! I’d love to go.

Assistant: Would you like to RSVP?


Good example:

Assistant: You have a new community event invitation. Would you like me to read it?

User: Yes!

Assistant: We’re hosting a family dinner party this friday. Invite your friends and family just let us know how many you’re bringing. There will be a live jazz band and a chess competition. Would you like to attend?

User: Oh wow, how fun! I’d love to go.

Assistant: Do you know how many people you’d like to bring?

User: I’ll bring Pat and Clara.

Assistant: I’ll RSVP for 3 attending- you, Pat and Clara.


*Note that the assistant was able to understand a number even though the user didn’t reply “3 people”


3. PIVOT THE CONVERSATION – Don’t make a big deal out of errors.

Keep the conversation going, especially when the user hasn’t found what they’re looking for. When there is a mistake, assume that the user still needs to solve a problem so focus on pivoting to the correct direction.


Bad example:

User: Please connect me with Jill.

Assistant: There is no Jill in your care circle.


Good example:

User: Please connect me with Jill.

Assistant: Sorry, I don’t see a Jill in your care circle. Did you mean to say Jane or John?

User: Oh yes, I meant Jane. I always think her name is Jill – silly me!
Assistant: Ok, I’m calling Jane.

Assistant: Jane didn’t answer. Would you like me to call someone else?

User: Oh no, I’ll be ok.

Assistant: Would you like to tell me what’s going on? I can record it for Jane so she can hear your message when she’s available.

User: Ok, sure. I can’t remember if my medicine has been switched to the new stuff prescribed by my doctor yet and if it hasn’t I just want to know when I will have it. I still have a lot of pain.

Assistant: I sent your recording to Jane. Would you like to tell her anything else?

User: No thank you

Assistant: You’re welcome. Would you like help with anything else right now?

User: No thanks. I’m going to take a nap.



If you’re designing for an elderly demographic make sure you aren’t using teenage slang. When designing for everyone (like Alexa), make sure the language the assistant uses is accessible to a 7-year-old (1st-grade level). If you want your assistant to talk like Shakespeare, then hopefully you’re designing a “Learn how to be an English Poet” app. Testing is important; try to run through each script with 4-6 people. Listen for how they interpret the words and pivot the conversation, not for their opinions on your script.

We use cookies to personalize content and ads, to provide social media features and to analyze our traffic. We also share information about your use of our site with our social media, advertising and analytics partners. Read our cookie policy here

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.