Why Chat Isn't an Activity in Salesforce (And What to Do About It)

Oct 3, 2025

You've spent hours setting up your Salesforce Service Cloud to streamline customer support operations. Everything seems perfect until your agents start complaining: "Why can't I see chat transcripts in the Activity timeline? I have to keep switching tabs to see what was discussed with the customer!"

If you've been struggling with this exact problem, you're not alone. Countless Salesforce administrators have tried to include live chat conversations in the Activity section for cases without success. The frustration is real—and there's a fundamental reason behind it.

The Architectural Divide: Why Chat Is a Channel, Not an Activity

The root of this problem lies in a key architectural decision in Salesforce's data model: chat is not an activity; it is a different channel of service.

To understand why, let's clarify what Salesforce considers an "Activity":

  • Activities in Salesforce (Tasks and Events) are discrete, trackable actions with specific outcomes and deadlines. They're designed to log completed interactions or schedule future ones.

  • Chat, on the other hand, is handled through the LiveChatTranscript object—a real-time communication channel designed for immediate support rather than scheduled follow-up.

This separation might seem arbitrary at first, but it serves several purposes:

  1. Data Model Integrity: Activities have a specific structure that doesn't accommodate the dynamic nature of chat conversations.

  2. Performance Optimization: Chat transcripts can be lengthy, and including them directly in the Activity object could impact system performance.

  3. Functional Differentiation: Chat is an entry point for service (like phone or email), while Activities typically represent follow-up actions resulting from those interactions.

The impact of this architectural decision is significant. According to SalesforceBen, while 70% of customers expect a seamless cross-channel experience, only 16% of companies actually deliver it. This gap exists partly because of the challenge in creating a unified view of customer interactions across different service channels in Salesforce.

But don't worry—there are proven workarounds to bridge this divide.

Workaround 1: The Lookup Field Method (The Direct Link)

The most straightforward approach to connecting chat transcripts with cases is creating a lookup relationship.

Step-by-Step Instructions:

  1. Navigate to Setup > Object Manager > Case > Fields & Relationships

  2. Click New and select Lookup Relationship

  3. In the "Related To" dropdown, select Chat Transcript

  4. Name your field something descriptive like Chat Transcript or Originating Chat

  5. Follow the wizard to set field-level security and add the field to your Case page layouts

This gives you a direct link between the case and the chat transcript, but manually linking each chat to a case would be tedious. Let's automate it:

Automating the Link:

  1. Create a new Flow in Setup > Process Automation > Flows

  2. Choose a Record-Triggered Flow that runs when a LiveChatTranscript record is created or updated with a CaseId

  3. Add an Update Records element that:

    • Finds the Case record using the CaseId from the transcript

    • Updates the Case's Chat_Transcript__c field (your lookup field) with the ID of the current transcript

One Salesforce user on Reddit confirmed this method works well: "Lookup with automation is the way to go. Then if you need to view the transcript, follow that record."

Workaround 2: The Custom Object Method (The Scalable Model)

For organizations with complex needs or high chat volume, a dedicated custom object provides more flexibility for reporting and relationship management.

Step-by-Step Instructions:

  1. Navigate to Setup > Object Manager > Create > Custom Object

  2. Name it "Chat Session" or "Service Conversation"

  3. Create custom fields on this object:

    • Case__c (Lookup to Case)

    • Contact__c (Lookup to Contact)

    • Chat_Start_Time__c (Date/Time)

    • Chat_End_Time__c (Date/Time)

    • Chat_Transcript_Body__c (Long Text Area)

    • Agent_Notes__c (Text Area)

Populating the Custom Object:

To automate the creation of these records, you can use Process Builder or Flow:

  1. Create a new Flow triggered when a LiveChatTranscript is completed

  2. Add a Create Records element that:

    • Creates a new "Chat Session" record

    • Maps fields from the LiveChatTranscript to your custom object

This approach directly addresses the need to "transfer the 'Body' of a completed transcript into a long text area field," as one Salesforce community member suggested. It creates a more flexible data structure that can be enhanced with additional fields as your requirements evolve.

Workaround 3: The Lightning Page Customization Method (The UX Fix)

Many service agents experience a significant drop in productivity when switching between tabs to view chat transcripts and case details simultaneously. This is especially common for teams transitioning from Classic to Lightning, where the tab-based interface can feel cumbersome.

Step-by-Step Instructions:

  1. Navigate to a Case record and click the Gear Icon > Edit Page

  2. In the Lightning App Builder, drag the Related Record component onto your page layout

  3. Configure the component:

    • Set the Lookup Field to the Chat Transcript lookup you created in Workaround 1

    • This displays the linked transcript's details directly on the Case page

  4. Alternatively, if you used the Custom Object method, add a Related List component to show the "Chat Session" records

  5. Save and activate the page for the relevant user profiles

This approach creates a unified view that displays both case details and chat context on a single screen, eliminating the need for tab switching and dramatically improving agent efficiency.

Beyond Website Chat: Unifying All Customer Communication Channels

While we've focused on Salesforce Chat integration, the challenge of siloed conversations extends to many other communication channels. Critical conversations happen on platforms like LinkedIn, but these interactions often remain disconnected from your CRM.

For sales and business development professionals, LinkedIn messages are as important as website chats are for support agents. However, the native LinkedIn inbox is chaotic and disconnected from systems of record, leading to missed opportunities and follow-ups.

This is where specialized tools like Kondo (often described as "Superhuman for LinkedIn") can bridge another communication gap.

Stop Losing Critical LinkedIn Messages in Your Sales Process

For teams that rely heavily on LinkedIn messaging, Kondo helps organize conversations with features like:

  • Labels & Split Inboxes: Categorize conversations with custom labels (e.g., 'Hot Lead', 'Client') and view them in separate, prioritized inboxes

  • Reminders (Snooze): Set follow-up reminders for any LinkedIn conversation, ensuring timely responses

Most importantly for this discussion about Salesforce integration, Kondo offers:

  • CRM & System Sync: Connect LinkedIn conversations to your Salesforce instance via webhooks and integrations with platforms like Zapier and Make.com

For example, an SDR might label a LinkedIn conversation as "Hot Lead" in Kondo, which triggers an automation that:

  1. Creates or updates the corresponding Lead/Contact in Salesforce

  2. Logs an Activity with the content of the LinkedIn message

  3. Sets a reminder for follow-up

This approach solves the same fundamental problem we've been discussing—getting external conversation data properly logged in your CRM—but for a different communication channel.

Putting It All Together: A Unified Approach to Communication Tracking

Whether you're struggling with website chat integration or LinkedIn message tracking, the core challenge remains the same: creating a single source of truth for all customer interactions in Salesforce.

Let's summarize the key strategies for chat integration:

  1. The Lookup Approach: Create a direct link between cases and chat transcripts, automated through Flow.

  2. The Custom Object Approach: Build a dedicated object to store chat data with additional context, offering more flexibility.

  3. The Lightning Page Approach: Customize the user interface to display relevant chat information alongside case details.

Each of these approaches addresses different aspects of the same problem, and they can be combined for a comprehensive solution. For instance, you might use the lookup field approach for basic connectivity while also implementing Lightning page customizations for better agent experience.

Implementation Tips for Success

As you implement these workarounds, keep these best practices in mind:

  1. Start Small: Begin with the simplest approach (lookup fields) and evolve as needed.

  2. Consider Volume: For high-volume chat environments, the custom object approach may be more sustainable.

  3. Focus on Agent Experience: The best technical solution is worthless if agents find it difficult to use. Prioritize Lightning page customizations that reduce tab-switching and improve workflow.

  4. Automate Everything: Manual linking of chats to cases or copying of transcript text is error-prone and time-consuming. Use Flow or Process Builder to automate these tasks.

  5. Monitor Performance: Watch for any impact on system performance, especially when storing large chat transcripts.

Conclusion: Bridging the Channel Divide

Salesforce's architectural decision to treat chat as a service channel rather than an Activity creates challenges for organizations seeking a unified view of customer interactions. However, with the right combination of lookup fields, custom objects, and Lightning page customizations, you can create a seamless experience for your service agents.

Remember that top-performing teams don't let valuable conversations get stuck in silos, whether they're website chats, LinkedIn messages, or other communication channels. By implementing the workarounds discussed in this article, you'll improve agent efficiency, enhance data integrity, and ultimately deliver the connected experience your customers expect.

Unify Your Communication Channels - From Salesforce Chat to LinkedIn

Take a moment today to review your current process for logging and accessing chat transcripts. Are your agents spending valuable time switching between tabs? Are important details from chat conversations getting lost? If so, it's time to implement one of these workarounds and bridge the architectural divide between chat and traditional Salesforce Activities.

Frequently Asked Questions

Why doesn't Salesforce show chat transcripts in the Activity timeline?

Salesforce does not show chat transcripts in the Activity timeline because it treats chat as a distinct service channel, represented by the LiveChatTranscript object, rather than a discrete "Activity" like a Task or Event. This architectural decision maintains data model integrity and optimizes performance, as chat is considered a real-time entry point for service, while Activities are for logging or scheduling follow-up actions.

How can I link a chat transcript to a Salesforce Case?

You can link a chat transcript to a Salesforce Case by creating a lookup relationship from the Case object to the Chat Transcript object. To make this seamless, use a Salesforce Flow that automatically triggers when a chat is associated with a case, populating this new lookup field with the correct chat transcript record ID.

What is the best way to see chat history on a Case page?

The best way for agents to see chat history directly on a Case page is by customizing the Lightning Record Page in the Lightning App Builder. You can add a "Related Record" component (using the lookup field from Workaround 1) or a "Related List" component (if you built a custom object) to display the full chat context without requiring agents to switch tabs, significantly improving their workflow and efficiency.

Which chat integration method should I choose: Lookup, Custom Object, or Lightning Page?

The right method depends on your specific needs. The Lookup Field method is the simplest and quickest for creating a direct link. The Custom Object method is better for organizations with high chat volume or complex reporting requirements, as it offers more scalability and flexibility. The Lightning Page customization is a user experience enhancement that should be used with either of the first two methods to provide agents with a unified view.

Do I need to write code to connect chat transcripts to cases?

No, you do not need to write any code. All the workarounds described in this article can be accomplished using Salesforce's declarative, point-and-click tools. You can create fields, build custom objects, and automate processes entirely within Salesforce Flow, without needing Apex or custom development.

How can I report on chat transcripts alongside case data?

To report on chat transcripts with case data, you need to create a custom report type in Salesforce Setup. If you used the Lookup Field method, you can create a "Cases with Chat Transcripts" report type. For more advanced reporting, the Custom Object method provides greater flexibility, allowing you to build reports that connect Cases, Contacts, and your custom "Chat Session" object to analyze trends and agent performance.

Need help optimizing how your team manages customer conversations across multiple channels? Contact Kondo to learn how we can help streamline your LinkedIn messaging workflow and integrate it with your Salesforce instance.

On This Page