Complete Guide to Salesforce Einstein Bots
Einstein Bots are a powerful tool that use Artificial Intelligence (AI) to improve the customer service experience. Einstein Bots can live on many channels, including SMS, Chat, Slack, Facebook Messenger, and WhatsApp – and they support conversations in multiple languages.
The main benefits of bots are that they can answer routine queries without an agent being required, capture the necessary information before transferring to an agent and be served up to customers on their preferred channel.
The Value of Salesforce Einstein Bots
The value of Einstein Bots is that they are native to Salesforce, so you can use other customer information to automate the process. In addition, you can join these together with Einstein Discovery, Next Best Action, Prediction Builder, and Service Cloud Einstein.
If you’d like to demonstrate the value of a bot, you can use the Einstein Bots Assessor (from Salesforce Setup) to work out ROI.

Salesforce Einstein Bot Licensing
In order to use Einstein Bots, you need to be on Enterprise, Performance, Unlimited, or Developer edition.
As a feature, Einstein Bots is available with Service Cloud Unlimited Edition or Digital Engagement user licenses. Each applicable license is provided with 25 Einstein Bots conversations per month.
Recently announced as part of Sales Cloud Genie, Salesforce will shortly be bringing Einstein Bots enhancements to Sales Cloud from the Summer ‘23 release.
Key Terms
If you are new to Einstein Bots, some of the terms in this article will likely be new to you.
The “Messaging Channels” are currently:
- Facebook Messenger
- SMS
The “Einstein Bots API” is used for your systems that are not natively supported, for example, Twitter.
In the context of bots, when referring to “Chat”, this is talking about whether you are within your app or on the web via Web Chat.
“Natural Language Processing (NLP)” uses a model set up to help your bot understand what your customer is saying and respond appropriately.
“Entities” ensure that the information provided is in the right format, e.g. postcodes.
Use Cases
The aim of a Salesforce Einstein Bot is to serve up what your customers need without needing a human agent (or Salesforce User) to be involved.
Some use cases I’ve seen are:
- Providing answers via Knowledge Articles
- Creating new inquiries as Leads
- Creating new Cases
- Searching for Records and providing updates on these Records (e.g. Orders, Cases)
- Templated document collection
- Collecting feedback

As a bot can connect to Flow or Apex, there are numerous other ways to automate your processes using clicks or code, and information inside or outside of Salesforce.
Although a bot is geared towards Service Cloud based scenarios, there is nothing stopping these from being used for Sales Cloud based situations too.
You also have the option to use Natural Language Process (NLP) to understand free text input and use Entities to ensure information such as Email Addresses are provided in the right format.
Einstein Bot Types – The Battle of the Bots!
Back in Summer ‘22, Salesforce introduced a new type of bot: “Enhanced Bots”. For parity, when this was introduced, existing bots were re-labelled as “Standard Bots”. At the same time, Salesforce brought us a new Bots Builder to make building a bot even more initiative.
Over the last few releases, Salesforce has built on the foundations of the Enhanced Bot and provided additional functionality that was never part of a standard out-of-the-box bot – for example, sending files or images.
The main difference between an Enhanced Bot and a Standard Bot is feature parity. Right now, when using an Enhanced Bot, rich content preview is not available. This means your Enhanced Bot can only display text content when using Salesforce Chat.

The introduction template provided for bots is not available with Enhanced Bots.
If you are providing Apex, Flow, or external services, context variables then work differently with Enhanced Bots, and the menu displayed to customers works differently too.
Both types of bots support the Einstein Bots API, Chat, and Messaging Channels.
Let’s Talk about Best Practices
As part of becoming accredited in Digital Engagement, Salesforce expects you to be aware of some Bot best practices, as this is a core part of the exam.
- Be sure to include as many utterances as possible to avoid failed understanding.
- Use verbs in your menu titles so customers know what that option does, e.g. Check the status of my order.
- When handling errors, consider routing to an agent or searching for Knowledge.

- Measure your Bot Performance using the templated Dashboards, and in the initial phases (after going live) review the log for any errors.
- When using the same bot across multiple channels, consider the user experience because, for example, you won’t be able to send files via SMS!
This exam is only open to Salesforce Partners, however, best practices apply to all.
For those eligible for the exam, more information can be found on Partner Learning Camp.

Summary
Bots are a very powerful tool that you can use to automate your customer experiences. They are a great way to expand your operations without needing to grow your team, and they can be configured in clicks, not code.
Be sure to adhere to the best practices in this article when trying this out for yourself!
Alexandra F.
Hi!
If I need to have a bot in both English and French, do I need to create two bots, (obviously two buttons) and two deployments (for both Chat and Embedded Service)?
Kolt
From what I know- you can only have Bots that use English. I am unsure of the Fact, that you can change the language to French. For “Dialog Intent” purposes, your Bot will only support English. This is regard to “NLP” and your Bots ability to learn from past interactions with your customers. Therefore, making your Bot more effective and you creating less Intent utterances to maintain it and keep your users happy. From the deployment stand point you would need to create a new one for each unique channel. So your Bots are accommodating your users as needed.
(Bots have no Limitations…Essentially.)
Thats from my understanding.
Hopefully, I was able to help a bit.
Alexandra F.
Thanks for the answers.
I can see in one of your screenshots that you have an Email entity with a Regex pattern validation. Does that work for you? For some reason, in my case it either redirects to another dialog or ends the chat. Is there something I am missing?
sandeep
Hi Ben, this is awesome, thank you. I have a question can we transfer bot to a queue instead of a agent.
Bhumi
Hi, Ben
I am not able to get LiveAgentSessionId.
Also as par documentation : https://help.salesforce.com/s/articleView?id=sf.bots_service_context_system_variables.htm&type=5
I also tried the ChatKey Context variable. But it’s not set.
The chat key is the {!$Context.ChatKey}, ContactId is 0032h00000YWEQWAA5, LiveAgentSessionId is {!$Context.LiveAgentSessionId}
I am getting ContactId.
Can you please help on this.
Thank you.
Bhumi
Hello,
Kindly ignore my previous comment.
I resolved the issue.
Thank you.
Nikhil
Will the Enhanced bot look the same when we preview(text preview) to the end user? From showing the menu or selecting the answer?
Tom Bassett
With a Enhanced Bot certain features such as the Bot options menu are not available.
Additionally Bots on Messaging Channels use Text Preview.
More info here; https://help.salesforce.com/s/articleView?language=en_US&id=sf.bots_service_enhanced_considerations.htm&type=5
DaCota Cole
If I use an advanced chatbot and want to set it up to support omnichannel and route the chat to a rep if the bot is unable to help them by providing knowledge base articles, is it possible for the customer and support rep to send screenshots back and forth once the chat has been routed to a rep?
Tom Bassett
Using Enhanced Bots you can send Files to Customers, I believe in standard Bot Channels you can request files using this component https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000FoirpUAB&tab=e