Sending data from Hull to SegmentUpdated 25/11/2019


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.

How to send Users out to Segment

Specify the Users who are getting sent to Segment

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.

outgoing users - user filter

Specify the attributes you want to send on the Users

Inside the Send User Attributes dropdown, select the user attributes you want to send out.

outgoing users - user attributes

How to send Accounts out to Segment

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.

outgoing accoutnts

How to send Events out to Segment

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.

outgoing events

⚠️ 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.

forwarding events