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 KeyDescriptionExpected 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 KeyDescriptionExpected Input
id
Required
String: Unique identifier for a useruserId
email_sha256
Highly Recommended
String: SHA256 hash of the user's emailN/A - Expression
created_at
Highly Recommended
Timestamp: Timestamp of when the user was createdN/A - Expression

Page Event

Output KeyDescriptionExpected Input
dataObject: Additional data related to the eventproperties
nameString: URL of the page viewedcontext.page.url
id
Required
String: Unique identifier for the eventmessageId
data.userIdString: User identifieruserId
timestamp
Required
Timestamp: Timestamp of the eventN/A - Expression
typeString: Type of event (e.g., page view)Enrichment - page

Screen Event

Output KeyDescriptionExpected Input
dataObject: Additional data related to the eventproperties
nameString: Name of the screen viewedproperties.name
id
Required
String: Unique identifier for the eventmessageId
data.userIdString: User identifieruserId
data.fromString: Category of the screenproperties.category
timestamp
Required
Timestamp: Timestamp of the eventN/A - Expression
typeString: Type of event (e.g., screen view)Enrichment - screen

Default Event

Output KeyDescriptionExpected Input
dataObject: Additional data related to the eventproperties
id
Required
String: Unique identifier for the eventmessageId
data.userIdString: User identifieruserId
name
Required
String: Name of the eventevent
timestamp
Required
Timestamp: Timestamp of the eventN/A - Expression
typeString: Type of eventEnrichment - 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.

AttributeExampleSync Injector Required?
id
Required
user123No
anonymous_id
Highly Recommended
130161d0-8fee-4167-aa4d-d151eed27c6bNo
email_sha256
Highly Recommended
9561c3516f02f51fa0ac38e9c81df0157ebab90d59ebde6fcf0f128f06a66423No

Additional Customer.io Documentation