Customer.io

What Is Customer.io?

Customer.io is a versatile marketing automation platform designed to help businesses engage with their customers through targeted emails, SMS, and push notifications. It allows for personalized communication based on customer behavior and data, enabling the creation of sophisticated workflows and segmentation strategies. With robust analytics and A/B testing features, Customer.io provides insights into campaign performance, helping marketers optimize their efforts. The platform integrates with various data sources and supports real-time messaging, ensuring timely and relevant customer interactions.

Why implement Customer.io through MetaRouter?

  • Enhanced Data Accuracy: Ensures consistent and accurate data delivery via server-side integration, reducing the risk of data loss or discrepancies.
  • Improved Workflow Automation: Enables precise and timely automated workflows and personalized communications within Customer.io.
  • Reduced Client-Side Load: Offloads event tracking and data delivery to MetaRouter, enhancing performance on client devices.

Capabilities and Considerations

  • Customer Identification: Utilizes the Identify API to keep customer profiles up-to-date with the latest information. By ensuring each user’s profile is current, Customer.io can accurately link various events (impressions, clicks, conversions) to the right individual, allowing for precise personalization and targeting.
  • Anonymous Event Merge: Customer.io's anonymous event merge helps with view-through attribution by associating anonymous user actions, such as ad views, with a known user profile once the user is identified, thereby enabling accurate tracking and attribution of conversions that occur after the user views content but before they are identified. MetaRouter uses this feature to pass our anonymousID to Customer.io as the anonymous_id. Please see more information here.
  • Comprehensive Event Tracking: Delivers necessary events and parameters through the Track API for detailed customer behavior analysis.
  • Conversion Tracking and Personalization: Tracks click-through and view-through conversions by logging user interactions with marketing content and subsequent conversion actions. This data is used to trigger personalized messages and campaigns based on user behavior. See more details on personalization here.
  • Segmentation and Automated Customer Journeys: Ensures that the data sent allows you to create segments within Customer.io based on user attributes and behaviors. This enables precise targeting and automation of customer journeys by defining workflows that respond to tracked events, guiding users through different lifecycle stages. See more details on segmentation here.
  • Advanced Analytics and Reporting: Utilizes detailed event data to generate advanced analytics and reports on user behavior, campaign performance, and engagement, facilitating data-driven decisions and optimization of marketing strategies. See more details on reporting here.
  • Hashed Emails: Customer.io highly recommends passing emails in server-side integrations for accurate user identification, personalization, data integration, enhanced analytics.

Limitations

  • Native Mobile Push Notifications: May require additional setup or integrations to handle native mobile push notifications directly from client devices.
  • Visual Customization: Does not provide tools for visual customization or design of customer interactions; focuses on data delivery and automation.

Getting Started - From Your Customer.io Account

  • Turn on Anonymous Event Merge - This feature is used to associate anonymous user actions with a known user profile once the user is identified, ensuring continuity and completeness of user data. Please see more details and instructions here.
  • Obtain a Track API Key - Please use follow instructions here.
  • Site ID - You should be able to locate your site ID when managing your credentials. Please contact your Customer.io representative if you need support.

Getting Started - From Your MetaRouter Account

Adding a Customer.io integration

From the integration library, add a Customer.io integration. Then, fill out the Connection Parameters:

Connection ParameterDescription
SITE_IDSite ID included within your credentials.
API_KEYTrack API key.

Event Mappings

MetaRouter provides all of the event mappings that Customer.io integrations typically require. You may add custom events, parameters or mappings in accordance with Customer.io’s API documentation.

Global

Global mappings will be applied to all events. If your parameter names do not match the Expected Inputs provided, you will need to overwrite the Inputs provided with your own.

Output Key

Description

Expected Input

anonymous_id Highly Recommended

String: An identifier for anonymous users. While not strictly required by the API, this parameter is needed for anonymous user tracking.

anonymousId

Event Specific

Identify Event

Output Key

Description

Expected Input

id Required

String: Unique identifier for a user

userId

email_sha256
Highly Recommended

String: SHA256 hash of the user's email

N/A - Expression

created_at
Highly Recommended

Timestamp: Timestamp of when the user was created

N/A - Expression

Page Event

Output Key

Description

Expected Input

data

Object: Additional data related to the event

properties

name

String: URL of the page viewed

context.page.url

id
Required

String: Unique identifier for the event

messageId

data.userId

String: User identifier

userId

timestamp
Required

Timestamp: Timestamp of the event

N/A - Expression

type

String: Type of event (e.g., page view)

Enrichment - page

Screen Event

Output Key

Description

Expected Input

data

Object: Additional data related to the event

properties

name

String: Name of the screen viewed

properties.name

id
Required

String: Unique identifier for the event

messageId

data.userId

String: User identifier

userId

data.from

String: Category of the screen

properties.category

timestamp
Required

Timestamp: Timestamp of the event

N/A - Expression

type

String: Type of event (e.g., screen view)

Enrichment - screen

Default Event

Output Key

Description

Expected Input

data

Object: Additional data related to the event

properties

id
Required

String: Unique identifier for the event

messageId

data.userId

String: User identifier

userId

name
Required

String: Name of the event

event

timestamp
Required

Timestamp: Timestamp of the event

N/A - Expression

type

String: Type of event

Enrichment - event


Required & Recommended Identifiers

These identifiers must be mapped to Customer.io in order for successful user matching to occur. Without these IDs, any events sent to Customer.io may not be accurately reflected in reporting. For your convenience, required and recommended IDs are mapped as Global parameters to ensure they are added to every event.

Attribute

Example

Sync Injector Required?

id Required

user123

No

anonymous_id
Highly Recommended

130161d0-8fee-4167-aa4d-d151eed27c6b

No

email_sha256
Highly Recommended

9561c3516f02f51fa0ac38e9c81df0157ebab90d59ebde6fcf0f128f06a66423

No


Additional Customer.io Documentation