Not verified hands-on. This article was written from primary documentation rather than reproduced in an org, so it carries no tested-release badge. If you run it and something differs, say so in the comments and it gets tested and corrected.

The short version: Chat, the feature formerly called Live Agent, is a synchronous web chat built from a deployment, one or more buttons, and an agent configuration. It works, it is well understood, and Salesforce has put it on a retirement path in favour of Messaging for In-App and Web. If you are starting something new, start there instead. This is for the orgs that already run Chat and need to keep it working.

The four pieces

  • Deployment. One per website or brand. It produces a snippet of JavaScript you put on your pages, and it holds branding and window behaviour.
  • Button. The thing a visitor clicks. Each button has its own routing, its own queue behaviour, and its own online and offline states.
  • Agent configuration. Assigned to users or profiles, it sets what agents can do: transfer, block a visitor, see the sneak peek of what the visitor is typing, end a chat.
  • Chat transcript. The record created when a chat ends, holding the conversation and linking to whatever the agent attached it to.

Routing, and the capacity trap

Chat buttons have their own routing settings, which predate Omni-Channel. They can push to the least active agent, offer work to a choice of agents, and hold a queue when nobody is free.

Omni-Channel routing is the better option and the one to use if you have it. It sends chats through a queue with a routing configuration like any other work, so chat sits in the same priority and capacity model as cases.

Here is the part that catches people. Under button routing, capacity comes from the chat button and the agent configuration. Under Omni-Channel routing, capacity comes from the presence configuration and the routing configuration’s work item size, and the chat button’s own capacity setting stops mattering.

Pre-chat forms

A pre-chat form collects information before the chat starts and, more usefully, can look up an existing contact or case and pass it to the agent so the conversation starts with context rather than “can I take your name please”.

Keep it to three fields. Every field you add loses visitors who were about to ask a question. Name, email, and a topic picklist that drives which button or queue the chat goes to is the useful maximum.

Agent capacity, honestly

Two concurrent chats is the realistic ceiling for quality conversation. Three is workable for a team handling short, scripted queries with good quick text. Anything above that produces long silences on every chat and customers who would have been better served by a case.

Offline behaviour

Each button has an offline state, and configuring it is the step people skip. A chat button that simply disappears outside business hours is confusing, because the visitor cannot tell whether chat is broken or closed.

Show an offline button that opens a web form or points at your knowledge base, with the hours stated. It costs nothing and it converts a dead end into a case.

Migrating off it

Chat and Messaging for In-App and Web are not the same product with a new name, and there is no button that converts one into the other. The deployment snippet, the buttons, the pre-chat form and any customisation built around them are all replaced rather than upgraded.

The practical argument for moving, separate from the retirement, is that messaging conversations survive the customer closing the browser tab. Chat does not, and every chat lost to a dropped connection is a case somebody has to re-open.

Frequently asked

Why is the button showing offline when agents are logged in? Agents must be online for that specific button’s queue or channel, not merely logged in to Salesforce. Under Omni-Channel that means a presence status accepting the chat channel.

Can a chat create a case automatically? Yes, through the agent’s console workflow or a flow on transcript creation. Creating a case for every chat, including the one-line questions, inflates case volume and makes your metrics meaningless. Create cases for chats that need follow-up.

Can I use bots with Chat? Bot support exists for Chat, but new bot work is aimed at the messaging channels. Building a new bot against Chat is spending effort on a surface you are going to replace.