Hull is the single source of truth for your customer data. It is the place where your customer data is the cleanest and the most enriched.
It is interesting to have that unified data in a defined place but it is even more interesting to sync it back to Destinations. That is what you can do with the Segment connector: you can send users, accounts and events to the Destinations you have in your Segment workspace.
The Segment connector allows you to specify the Users you want to send from Hull to Segment. Inside the Outgoing Users
section, start by adding the Write key to send data to the Segment API. Then, you can easily add the Hull segments of Users you want to add to the User Filter
dropdown. If you want to send all users, simply select the built-in segment called All Users
.
Inside the Send User Attributes
dropdown, select the user attributes you want to send out.
You can send Hull Account attributes inside an analytics.group()
call to Segment.
To do so, go to the Outgoing Accounts
section and select the Account Attributes you want to send inside the Send Account Attributes
dropdown.
Inside the Outgoing Events
section, select the events you want to send to Segment. If no event is selected, all events will be sent by default.
⚠️ Warning ⚠️
Event forwarding: If you have the Event forwarding
toggle button selected inside the Outgoing Events
section (see screenshot below), that means the Segment connector will push to Segment events that were tracked initially via analytics.js and passed through Hull. If you push the event to the same Segment workspace, you will end up with an infinite loop of events moving from Segment to Hull and then back to Segment from Hull.
Let's take an example to illustrate this phenomena.
Let's assume you record a page view with the analytics.js library on your homepage and this call gets sent to the Segment workspace. Because Hull is connected to Segment as a destination, this event will be sent to Hull and added on the user.
Then, if you have the Event forwarding
toggle button selected, this event will be sent back to a hull.analytics()
call to Segment which will trigger a new sync of this event to Hull and so on. You end up with an infinite loop that fires the same event over and over again.
We recommend using this feature if Hull is not a Source and a Destination in the same Segment workspace.