Release Status Released Supported By Stitch
Availability Free Status Page Segment Status Page
Default Historical Sync None Default Replication Frequency Continuous
Whitelisting Unsupported Destination Incompatibilities None

Connecting Segment

Connecting your Segment data to Stitch is a three-step process:

  1. Add Stitch as a selective integration
  2. Add Segment as a Stitch data source
  3. Authorizing Stitch to access Segment

Add Stitch as a Selective Integration

All data collected by Segment is sent to us by default, but if individual snippets on your site specify which integrations data should be sent to, then these settings will be overridden.

If you use selective integration snippets, you’ll need to add Stitch to the list of integrations before data will flow to your data warehouse.

Here’s an example of a snippet that sends data to Stitch, Mixpanel, and KISSMetrics only:

}, {
  integrations: {
    'All': false,
    'Stitch': true,            // 'true' indicates if the integration receives data
    'Mixpanel': true,
    'KISSmetrics': true
   }
});

When you add Stitch to your snippet, make sure you enter Stitch exactly as it appears in the example above.

Add Segment as a Stitch Data Source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Segment icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Segment” would create a schema called stitch_segment in the destination. Note: Schema names cannot be changed after you save the integration.

  5. Click Enable With Segment.

Authorize Stitch to Access Segment

Lastly, you’ll be directed to Segment’s website to complete the setup.

  1. Enter your Segment credentials and click Login.
  2. From the dropdown menu, select the Source you want to send data from. Note that Stitch will only ever read your data.
  3. Click Send Data.
  4. After the authorization process successfully completes, you’ll be redirected back to Stitch.
  5. Click All Done.

Replicating Segment Data

Stitch uses what is called a direct integration to integrate with Segment. This is a webhook-based method of sending your Segment data to integrations. Unlike REST or SOAP APIs, webhooks deliver data as it happens in real-time.

In the event that our webhook service experiences downtime, you may notice some lag between an event occurring and the data appearing in your data warehouse.


Segment Schema

Each of Segment’s endpoints contains a set of fields unique to that endpoint along with a set of common fields. Common fields are the same across all of Segment’s endpoints.

Common fields describe user identity, timestamping, device, network, and so on. For a full list of these fields, check out Segment’s Common Fields Spec.

Included Tables

Stitch's Segment integration includes these tables:


group

Replication Method: Incremental (Webhook)
Primary Key: message_id
Contains Nested Structures?: No

The group table contains info about groups, which is how individual users are associated with companies, accounts, projects, teams, and so on.

Table Info & Attributes

group Attributes

While we try to include everything Segment has here, this may not be a full list of attributes. Refer to Segment's documentation for a full list and description of each attribute.

identify

Replication Method: Incremental (Webhook)
Primary Key: message_id
Contains Nested Structures?: No

The identify table contains all user info.

Table Info & Attributes

identify Attributes

While we try to include everything Segment has here, this may not be a full list of attributes. Refer to Segment's documentation for a full list and description of each attribute.

page

Replication Method: Incremental (Webhook)
Primary Key: message_id
Contains Nested Structures?: No

The page table contains info about page events, along with any data about page properties.

Table Info & Attributes

page Attributes

While we try to include everything Segment has here, this may not be a full list of attributes. Refer to Segment's documentation for a full list and description of each attribute.

screen

Replication Method: Incremental (Webhook)
Primary Key: message_id
Contains Nested Structures?: No

The screen table contains info about screen events, along with any data about screen properties.

Table Info & Attributes

screen Attributes

While we try to include everything Segment has here, this may not be a full list of attributes. Refer to Segment's documentation for a full list and description of each attribute.

track

Replication Method: Incremental (Webhook)
Primary Key: message_id
Contains Nested Structures?: No

The track table contains user action info.

Table Info & Attributes

Semantic & Standardized Events

For info on semantic events - or Segment’s standardized event names and properties - check out their docs.

track Attributes

While we try to include everything Segment has here, this may not be a full list of attributes. Refer to Segment's documentation for a full list and description of each attribute.



Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.