When to leverage cohort syncs vs event streaming [Intercom edition]

  • 11 August 2023
  • 0 replies

Userlevel 4
Badge +8

Cohort syncs vs event streaming

Have you ever wondered what are the key differences between syncing cohorts vs streaming events to a downstream martech application? 

  • Cohorts enable you to build a custom definition of an audience group based on events users have performed and corresponding properties that define their persona. Cohort syncs enable you to send a list of the users within the cohort to a destination. Syncs can be set up with a one-time, daily, hourly, or even real-time cadence for some plans. 
    • Within Intercom, a cohort sync is ingested as a user attribute tag in Intercom’s terminology, which can then be plugged into the audience filters. This queues up a list of eligible users who may receive the campaign when they qualify for the cohort, upon the next cohort sync.
  • Event streaming is similar to a webhook; it sends data from Amplitude to a destination based on real-time triggered events. While a cohort defines who to target, event streaming defines when to deliver a message.
    • Within Intercom, the key differentiator with streamed events is being able to tap into that real-time triggered action within the trigger filters. The next time a user triggers an event, that event gets posted to the destination application and can trigger the delivery of a message. 
    • A streamed event can technically be plugged into the audience filters as well, but there are a few limitations in this section, including how many properties can be queried in addition to the event to define the eligible target criteria. I recommend leveraging a cohort sync within the audience filter to accommodate granular target criteria.
How to configure the audience and trigger filters in Intercom



Example cohort use cases based on sync cadence

  • One-time sync: We’ve leveraged a one-time sync for a cohort of product marketers in Europe to send a single announcement about an upcoming local webinar. 
  • Daily sync: We use daily syncs in evergreen product adoption campaigns to target new users who’ve recently upgraded from our freemium product to share best practices on how to leverage their newly unlocked premium features. 
  • Hourly or real-time sync: We rely on hourly or real-time syncs when we expect the cohort data to change multiple times within a user’s session or when the message is time-sensitive to the action performed. For example, we immediately reach out to select paid users if their in-product survey feedback has negative sentiment to see if they’d like to schedule time with a product subject matter expert.


It’s not very common to only leverage event streaming for targeting purposes in a martech platform, due to the limited metadata that can be queried on top of those streamed events within most martech apps, including Intercom and Braze. However, it is common to pair up both cohort syncs and event streaming to build the right audience with the right delivery trigger for action-based messaging. This is a powerful duo when delivering real-time in-app notifications to users as soon as they reach key milestones in the product. 

Example cohort + event streaming duo use case

Let’s say we want to target and send a celebratory in-app message to new users on a freemium plan within the same session that they reach a key milestone of saving 5 charts in their first n days.

  • Cohort criteria: We would define our target audience in a cohort with the following inputs:
    • New Amplitude user who “activated account” in last n days

    • Plan = free

    • User “saved chart” = 4 times in the last n days
    • User not “saved chart” ≥ 5 times in the last n days (as an extra safeguard)
    • Exclude internal employees, test accounts, and demo instances
  • Cohort sync cadence: We would sync this daily to our martech app
  • Event streaming criteria: We would stream in the event “saved chart
    • If this key milestone was unique to a specific set of chart types, then we’d also stream in the corresponding event property “chart type

This combination of audience criteria from the cohort sync, and trigger criteria from the event streamed, would enable us to qualify eligible new free users who recently saved charts 4 times, and then deliver a congratulations message in-product the next instance the user was logged in and saved a chart again (aka, the 5th time the user saved a chart).

By setting the event streamed to the message delivery trigger, we could serve up a relevant, and time-sensitive message instantaneously with the critical action taken in the product. 


It’s quite powerful and honestly impressive with how granularly you can target customers with the right messaging at the right time in their product journey. When it comes to product instrumentation, make sure to consider the data needs of your Growth Marketing teams. Whether they’re setting up the entry audience conditions for a new program, creating dynamic deep links to personalize the click-through experience, building dynamic content blocks within a message body that differs based on the persona, or measuring campaign performance and correlated behaviors in the product, data is the fundamental element of Growth Marketing’s day-to-day work. 



Tip:  When configuring your event streaming destination in your Data environment, be sure to set a clear naming convention to avoid any confusion among your enabled destinations i.e. Cohort Sync vs Event Streaming.

How to set up event streaming destination


Pre-Req: In order to leverage cohort syncs and event streaming from Amplitude to a martech platform, the User ID in Amplitude behavioral data must map to the User ID in the destination application.


Comment below if you have any questions.

0 replies

Be the first to reply!