Send event data from PostHog to Intercom whenever an event matches a user who has been identified by their email address.
Requirements
Using this requires either PostHog Cloud with the data pipeline add-on, or a self-hosted PostHog instance running version 1.30.0 or later.
Self-hosting and not running 1.30.0? Find out how to update your self-hosted PostHog deployment.
Installation
- In PostHog, click the "Data pipeline" tab in the left sidebar.
- Search for 'Intercom' and select the destination, press 'Install'.
- Follow the steps below to configure the destination.
Important: Only events that have an
Configuration
After you've pressed 'Install', you need to add your Intercom API key at the configuration step, as well as add triggering events you want to send to Intercom.
- Intercom API Key (required): you can get this one from the Intercom Developer Hub, by creating a new destination and receiving an API Key
- Triggering events (required): A comma-separated list of PostHog events you want to send to Intercom (e.g.:
$identify,mycustomevent
).
Additional configuration
Option | Description |
---|---|
Intercom API Key Type: string Required: True | Create an Intercom app, then go to Configure > Authentication to find your key. |
Triggering events Type: string Required: True | A comma-separated list of PostHog events you want to send to Intercom (e.g.: '$identify,mycustomevent' ). |
Email domains to skip Type: string Required: False | A comma-separated list of email domains to ignore and not send events for in Intercom (e.g. 'posthog.com,dev.posthog.com' ). |
Send events to European Data Hosting Type: choice Required: False | Send events to api.eu.intercom.com, if you are using Intercom's European Data Hosting. |
Setting up tracking
In order for your events to show up in Intercom, they need to have an email
property so we know which user to connect them to.
The easiest way to do this is with Super Properties, which will add an email
property on every event.
Add the following code wherever you make an identify
call with the current user's email address.
posthog.register({email: 'hello@posthog.com'})
This will then send this as a property on all future events, including autocaptured events.
Note: Make sure to call
posthog.unregister('email')
whenever a user logs out to clear this property
Currently, Super Properties are only available in the posthog-js
library or when using the PostHog snippet.
If you are using a different SDK, you'll need to manually the email
property for every event that you want to send to Intercom.
FAQ
Who created this destination?
We'd like to thank PostHog team member Emanuele Capparelli for his work creating this destination. Thank you, Emanuele!
Who maintains this?
This is maintained by the community. If you have issues with it not functioning as intended, please let us know!
What if I have feedback on this destination?
We love feature requests and feedback. Please tell us what you think..
What if my question isn't answered above?
We love answering questions. Ask us anything via our community forum.