Persistent Menu

A Menu that is always available to the user during the conversation.

A persistent menu is available to users of your chatbot. It is located beside the chat bar and on opening it, the user can pick from options that you have defined as being always available. Typically, the option to restart the conversation is always available via the persistent menu, but you might also use this feature to allow a user to skip to a critical part of the conversation or to restart a conversation with the chatbot that has paused, pending Live Chat.



The Persistent Menu is not available on all channels. It must be configured separately for Facebook, Skype, Line, Webchat, Viber and Telegram.

The Persistent Menu is available to the user at any point in the conversation. This menu should, therefore, contain high-level actions that users can enact at any point. Having a Persistent Menu also communicates core capabilities of your bot to first-time and returning users. The menu will automatically appear in a thread if the user has been away for a certain period of time.


There are 2 types of items:

  1. Send a message to bot” - this type allows users quickly send a text message instead of typing it manually.
  2. Go to URL” - opens a link in a browser.

Each channel has 2 default items in the persistent menu, and one of them, the “Go to URL” button, is initially disabled. This button will disappear once your bot has ProPlan status. Once the limit of your ProPlan messages is reached, the bot will again have the SnatchBot branding added to the persistent menu



To create “Go to URL” item, the URL must start with “http://

Screenshot of the Persistent Menu in Facebook Messenger:


Screenshot of the Persistent Menu in WebChat:



The number of items for each channel:

WebChat: It is possible to add 5 custom items and a two-level submenu, where you can add up to 5 items per each level.
Line: 5 custom items.
Viber: 11 custom items.
Telegram: 4 custom items.
Skype: 5 custom items.
In Free bots the “Powered by SnatchBot” item will be displayed only if you have added at least 1 custom item. Also, the item will be hidden, if you have deleted all items in the menu.
Facebook: 14 custom items.

You can disable the text input function for Facebook and WebChat. This means that a user will only be able to interact with a bot using quick replies, cards, and persistent menu.



Do not disable user input if you plan on using the Live Agent interaction.

Setting Persistent Menu on Facebook

Facebook Messenger has a slightly different way of setting the persistent menu. There is the Apply on Facebook button, which you have to press to confirm changes.


To add items, first you need to deploy the Facebook channel in the Channels section. Next, create new items and press Apply on Facebook.


Facebook’s API has a limitation of max 10 deploying requests per 10 minutes. If you exceed the limit, you will get a message: “You have exceeded the max number of requests to Facebook’s API, try again in 10 minutes.”


Telegram Cache

Note that changes to the Persistent menu in Telegram are not applied immediately due to technical limitations. The new menu will appear after the current user session expires, this may impact Menu functionality, such as default restart.

Example: how the settings can be configured in the persistent menu for Telegram:


How the persistent menu items appear in Telegram

Watch this video tutorial to learn more about '' Creating a Persistent Menu for your chatbot''

Next Steps

Rich Card Types supported by the SnatchBot platform.