Many customers are using Drift’s in-house integrations to send data about their contacts to their CRM or MAP instances. Conversation sessions are a method of triggering when contact and conversational data should be pushed from Drift to your CRM or MAP. In this article, we'll discuss what a conversation session is, how a conversation session timeout is configured, closing conversations and more.
Billing Plan: Please see our integration doc for more information on which integrations are available on each Drift plan.
In this article, we'll cover:
What is a conversation session?
When a visitor comes to your website and begins chatting via the Drift widget, at some point the conversation will come to a natural end and the visitor will leave your website. A conversation session is the time period from when the visitor first began chatting to when there have been no further messages sent in the conversation after a period of time that can be configured per Drift account. Drift tracks the conversation between the site visitor and the rep as it’s in progress, and if Drift sees that there have not been any further messages in the conversation for the configured period of time, the current conversation session ends.
For a more detailed example, see the following conversation below:

Dan sent the last message at 11:22 AM. Drift will wait until the timeout period to see if there will be any more messages sent in the conversation. For this account, let’s say the conversation session timeout is set to 10 minutes. At 11:32, if no other messages have been sent in the conversation, the conversation session ends.
Say Jeff chats back in before 11:32 - before the time Drift would have automatically synced the conversation data:

In this case, Drift will recognize there has been more activity in the conversation and reschedules the time of sync to 10 minutes after the most recent message. In the conversation above, Drift will reschedule the sync from 11:32 to 11:38, and there will only be a single sync event at 11:38.
How is the conversation session timeout configured?
Conversation session timeout can be configured from the advanced conversation settings page (Settings > Conversations > Advanced Conversation Settings) in the section labeled ‘Conversation session timeout’.
The session timeout can be configured by updating the number of minutes after which a conversation will be considered inactive.

How are conversation sessions useful?
Conversation sessions influence two systems:
- Syncing contacts and conversations to Drift’s in-house integrations.
When a conversation session ends, you can configure Drift to send data to your connected Salesforce, Marketo, Hubspot, Eloqua, or Pardot instance(s). Sending data to those systems automatically when a conversation ends will ensure that your sales and marketing teams can react to new leads and activities as fast as possible. We go into detail around how session-based data syncing works below.
Session-based data sync can be enabled from the advanced conversation settings page by selecting the checkbox labeled ‘Use session timeout to sync data to your integrations.

- Signaling the end of a conversation to third-party integrations.
Integrations developed for Drift by third parties often rely on processing some data when a conversation comes to an end. Third-party integrations can be notified of a conversation session ending based on the session timeout that is customized for your account. Conversation session timeout triggers the conversation_inactive webhook for apps created on the Drift developer platform.
Additional information on session-based syncing to first-party integrations
Session-based data syncing has first-party support for the integrations below. Each integration includes what data will be changed in the respective system when a conversation session ends.
- Salesforce
- Creating / Updating a Lead
- Creating / Updating a Contact
- Pushing conversation data as Salesforce tasks as ‘New Conversation in Drift’
- Marketo
- Creating / Updating leads
- Push conversation data as marketo activities
- Eloqua
- Creating / Updating contacts
- Pushing conversation data as CDOs when configured
- Pardot
- Creating / Updating prospects
- Hubspot
- Creating / Updating contacts
- Pushing conversation data as contact timeline activities
What about closing conversations?
Closing a conversation will continue to sync your data. If a conversation is already closed when a conversation session ends, Drift will still make sure any contacts/leads/prospects in the downstream systems are up to date, but will only attach additional conversational data (eg a Salesforce task) if new chat messages have been sent in the conversation.
What if I use auto close conversation too?
Using both the auto close and the session timeout setting will cause duplicate leads to appear in your integration. Closing a conversation will always send data to your integrations even if session time out is also enabled.
How will I know a conversation has been synced to my CRM/MAP?
Hovering over the sync button will allow you to see when a conversation was last synced to your CRM. You can click the ‘Manually sync’ button below it to manually push that conversation’s data to your integration

Will my existing sync rules be followed for completed conversation sessions?
Session-based sync will follow all the same settings that you have already configured for your integration. Any settings specifying what type of data to be synced or not synced will continue to be followed. An example of this is the Salesforce setting that requires a minimum CQL for new contacts.