Customer.io Source

Customer.io is an automated email tool. It lets you set up rules to automatically send emails to your users after they perform actions, making drip email campaigns really easy. Visit Website

Take your company’s email analysis to the next level by adding Customer.io as a Source to Segment. We’ll automatically collect email events like Email Delivered and Email Opened, forward them to your integrations, and load them into your data warehouse.

In your favorite BI or analytics tool, you’ll be able to analyze your email campaigns in SQL or through drag-and-drop reports. And, you’ll be able to join your Customer.io data with the event data you’re already sending through Segment to analyze the down-funnel effects of your emails.

Getting Started

If you have previously enabled sending email events via the Customer.io integration during our beta (using a project write key), you do not need to create new Customer.io source. Your email data will continue to flow as normal.

  1. From your workspace’s segment.com/<your-workspace>/sources page, click Add source.

  2. Choose Customer.io.

  3. Give the Source a nickname and a schema name. The nickname will be used to designate the Source in the Segment interface, and the schema name is the namespace you’ll be querying against in your warehouse. You can name them however you’d like, but we recommend sticking to something that reflects the Source itself, like Customerio for nickname and customerio for the schema name.

  4. The next page (“Overview”) will surface your Segment write key for Customer.io. Copy this write key.

  5. To finish the setup, you’ll have to go into your Customer.io account and enter this Segment write key in their integrations settings. Find the right place in Customer.io by clicking Settings > Integrations > Segment.

  1. Click Save.

  2. In Segment, click into your Customer.io Source in segment.com/<your-workspace>/sources. From there you’ll be able to add Integrations and Warehouses where you want to see email events.

That’s it! As you send emails, events will now be sent to your integrations and automatically loaded into any warehouses you have enabled.

Components

Stream

Customer.io uses our stream Source component to send Segment email events. It uses a server-side track method to send data to Segment. These events are then available in any integration that accepts server-side events, and available in a schema in your data warehouse, so you can query via SQL.

The default behavior is for Customer.io to pass the userId associated with the email recipient as the userId. There are cases in which Customer.io does not have an associated userId, in which case the email address will be passed in as the anonymousId.

Collections

Collections are the groupings of data we pull from your Source. In your warehouse, each collection gets its own table, as well as a tracks table that aggregates all the events into a single table.

CollectionTypeDescription
Email DeliveredEventMessage has been successfully delivered to the receiving server
Email OpenedEventRecipient has opened the HTML message. You need to enable Open Tracking for getting this type of event
Email Link ClickedEventRecipient clicked on a link within the message. You need to enable Click Tracking for getting this type of event
Email UnsubscribedEventRecipient clicked on message’s subscription management link
Email BouncedEventReceiving server could not or would not accept message
Email Marked as SpamEventRecipient marked message as spam

Send data to Customer.io

The Customer.io Source works better when you also connect Customer.io as an integration. With the Customer.io Integration, you can use Segment to send Cusotmer.io user and event data from which you trigger email campaigns. Want to start sending website or mobile data TO Customer.io? Head on over to our Customer.io integration docs.


If you have any questions or see anywhere we can improve our documentation, please let us know or kick off a conversation in the Segment Community!