So, this happened on May 26. I had just finished writing a blog about WhatsApp interactive templates, the first attempt by WhatsApp at interactivity, pointing out the great features while also pointing out a couple of glaring misses. I was just browsing through the Facebook API specs to see if anything is new. Something new & shiny caught my eye. Click further and I noticed something called Interactive Messages. Interest piqued, I dug in further. It turns out to be just what the doctor ordered .... almost. Let me explain.

One of the biggest hurdles in the adoption of WhatsApp Interactive Templates was that these were templates. Which means you needed to get them approved. Hence, they were useful for only notification type messages that are initiated by the business. Pretty much useless in a conversational setting. I wrote about it here.

Enter the new Interactive Messages. These are just like regular conversational messages, but with interactivity (i.e. buttons) built in. They can be configured & sent on-the-fly programmatically. No prior approvals needed, unlike templates. Needless to say, this opens up a whole range of possibilities in WhatsApp B2C chats, which we shall see below.

WhatsApp Lists & Reply Buttons

WhatsApp has introduced 2 types of interactive messages: Lists & Reply Buttons

Lists: this is a completely new message-type that has the potential to re-imagine how menu options can be presented to the user by a chatbot. With this message type, the user can be presented with a list/menu of upto 10 options in a single message. The user selects 1 out of these options by tapping on it, like a radio-button.

Reply Buttons: for those familiar with Interactive Templates, this will be familiar. This provides a business with the ability to send upto 3 reply buttons to click and interact. These buttons can be sent as part of a regular text message or a media + text message.

The image below from Facebook highlights the difference between how traditional menus were presented in a chatbot vs how they can be re-imagined using these 2 new message-types

WhatsApp Interactive Messages
Text (vs) Interactive Messages

The benefits of WhatsApp Interactive Messages & Lists

  1. Interactivity: Most chatbots on WhatsApp present a list of menu options like "Type 1 for this", "Type 2 for that" etc. Having a customer list that's clickable makes it super easy for users to select an option rather than typing (which is prone to errors/misspellings)
  2. Response Rates: In experiments conducted by Facebook, these interactive messages & lists resulted in both a higher user comprehension & better response rates
  3. Dynamic: lists and messages can be configured on the fly - programmatically. This makes it a powerful features. Example: depending on the choices made by a customer, they can be presented with different experts to talk to, timeslots to book, nearby addresses etc, which are determined on the fly
  4. No pre-approvals: as mentioned earlier, there are no pre-approvals needed for these interactive messages

Lists: how to use them?

When you send a List to a customers, you can send them a text with an Options button that they can click

When they click on Options, you can present them with upto 10 options to choose from. This list of options slides up from the bottom of the screen. Each of this option is called a Row. You can specify Row Titles & Row descriptions for each row. In addition, you can also provide a List Header (heading) & Section Titles. WhatsApp adds a radio-button at the right-end of each row. At the bottom, a Send button is also automatically added. The user can select 1 option & click Send. See below:

WhatsApp Lists

Nesting of Lists

Since the Lists can be programmatically sent, they can be nested, to build a menu-tree. This is similar to Interactive Voice Responses (IVR) in phone menus. Once the user selects an option from the List and clicks Send, a chatbot can present to her a list of sub-menus in the form of a List  ....  and so on.

When to use Lists .... and when not to

  1. Use Lists when you have a well-defined set of menu options that you want the user to be guided through
  2. Lists should be used when you have 4 or more menu options to show the user & if you need context, i.e. show/do certain actions depending on the user's selections
  3. Add a "Chat with an agent" or "Arrange a callback" or "Others" options in the List, to accommodate unhandled scenarios
  4. Don't use Lists if you have 3 or fewer options to show a user and when they are context-free, i.e. just Yes/No options
  5. Don't use Lists if you need to send Images or PDFs for each of the menu-options (a.k.a. rows). These are not supported. If you want to send any common images/PDFs, send them separately, followed by the List. Or if a user selects a List option (like "I'd like to see a brochure"), send an image/PDF as a separate message. This can either be the end of the chat-flow or can be followed-up by another List
  6. Lists are not Action Buttons, i.e. you cannot use them for "Click to call" or "Open URL" type use-cases. Use Interactive Templates instead for these cases
  7. Presenting a List doesn't automatically imply that a user will not manually type a response and send it. Ensure that you budget for that kind of a response too
  8. A user can navigate back to a List earlier in the conversation and click on a different choice. You need to ensure that your chatbots and agents can handle this context-shift. You can also set an expiry & a follow-up message for Lists, to mitigate against this to some extent

Reply Buttons: how to use them?

When sending Reply Buttons, you can set the following parameters, which are identical to Interactive Templates. The user sees the Reply Buttons in-thread, i.e. as they would see a normal message

  1. An optional Media link, which can be an image, video, gif, doc or location
  2. An optional Header, which describes what this is message is about
  3. Body (mandatory), which serves as a description
  4. An optional Footer
  5. A maximum of 3 buttons with just text (example: you cannot use emojis). Behind the scenes, you can configure what "postback text" is received by you when the customer presses each of the buttons. This will help you determine your next response
WhatsApp Reply Buttons
Reply Buttons

When to use Reply Buttons .... and when not to

  1. Reply Buttons are great when you want to present a set of limited (upto 3 choices) to a customer. Examples: Yes/No/Maybe choices to gauge interest, Excellent/Good/Bad choices to measure CSAT/NPS etc
  2. Reply Buttons, unlike Interactive Templates, cannot have action buttons, i.e. those that click to a URL or a Phone number. They can only be of a postback type, whereby you will get a postback text when the user clicks a button
  3. Because they don't need prior approval, Reply Buttons are great to use during a chatbot conversation (or) to send at the end of an agent chat to measure effectiveness
  4. Because the button texts are short, don't use them if you want to send descriptive options (like timeslots, addresses etc). Use Lists instead
  5. A user can navigate back to a Reply Button earlier in the conversation and click on a different button (they cannot click on a previously clicked button because it would be greyed out). You need to ensure that your chatbots and agents can handle this context-shift. You can also set an expiry & a follow-up message for a Reply Button, to mitigate against this
  6. Presenting a Reply Button doesn't automatically imply that a user will not manually type a response and send it. Ensure that you are able to handle that kind of a response too

So, that's it for now. We are excited by these new capabilities released by the WhatsApp API team & hope you can use these to wow your customers!