These are the formats our models expect the data to be in for ingestion. The standard and optional schemas are as follows:

Data Source Data Description Optional/Required
Transactional Data A table where each row represents a transaction for a customer Required
Outbound Events A table where each row is an outbound event originating from the marketer. These data are usually messaging data (e.g., email, SMS) Optional
Inbound Events A table where each row is an inbound event collected by the marketer about a customer engagement. These data are usually website activity data Optional
Customer Attributes A table where each row represents a customer and each dimension is an attribute describing the customer. These could be loyalty status or demographics data. Optional

Transaction Events

All transaction events with relevant discount and spend data. This table should be at the transaction level – one row per transaction. For transactions with multiple products purchased, pass product SKUs in an array in the product column.

Metric Type Description Optional/Required
CUSTOMER_ID VARCHAR Customer identifier from client Required
SPEND FLOAT Total cost of the transaction Required
PRODUCT STRING Comma-separated list of item(s) purchased Required
TS INT Timestamp of conversion event Required
EVENT_ATTRIBUTE VARCHAR Other data describing the event (e.g., retail vs e-commerce, discount code) Optional
PRODUCT_ATTRIBUTE VARCHAR Other data describing the product (e.g., discontinued, seasonal, etc.) Optional

Sample Schema:

CUSTOMER_ID SPEND PRODUCT TS PURCHASE_TYPE (EVENT_ATTRIBUTE) PRODUCT_TYPE (PRODUCT_ATTRIBUTE)
C001 22.13 product1 1725478228 retail seasonal
C002 123.97 product1,product2,product3 1725478228 online promotional

Outbound Events

This table should contain one engagement event per row, per customer. This data source is optional but will maximize the predictive power of the models if available.

Metric Type Description Optional/Required
CUSTOMER_ID VARCHAR Customer identifier from client Required
TS INT Timestamp of outbound engagement event (e.g., sends) Required
CLICK_FLAG INT This is an event attribute which indicates a click engagement. This is the only required event attribute. Required
EVENT_ATTRIBUTE VARCHAR Other data describing the attributes (e.g., view, scroll, etc.) Optional
LABEL STRING Description of event (e.g., name of campaign) Optional
TYPE STRING Describe the type of event (e.g., email, SMS) Optional

Sample Schema:

CUSTOMER_ID TS LABEL TYPE CLICK_FLAG (EVENT_ATTRIBUTE) CAMPAIGN_TYPE (EVENT_ATTRIBUTE)
C001 1725478228 welcome_offer_campaign1 email 1 welcome_campaign
C002 1725478228 winback_offer_campaign2 sms 0 winback_campaign

Inbound Events

Site, app, and all other engagement types. This data source is optional but will maximize the predictive power of the models if available.

Metric Type Description Optional/Required
CUSTOMER_ID VARCHAR Customer identifier from client Required
TS INT Timestamp of inbound engagement event (e.g., pageviews, session) Required
LABEL STRING Description of event (e.g., page URL) Optional
TYPE STRING Describe the type of event (e.g., web session, page view, add to cart, scroll depth, Facebook, other) Optional
EVENT_ATTRIBUTE VARCHAR Other data describing the attributes (e.g., utm_source, utm_medium, utm_campaign) Optional

Sample Schema:

CUSTOMER_ID TS LABEL TYPE UTM_SOURCE (EVENT_ATTRIBUTE) UTM_CAMPAIGN (EVENT_ATTRIBUTE) UTM_MEDIUM (EVENT_ATTRIBUTE)
C001 1725478228 www.yourwebsite.com/blog pageview Facebook welcome_campaign Paid Social
C002 1725478228 www.yourwebsite.com/product1view pageview Google winback_campaign Display

Customer Attributes

A table where each row represents a customer and each dimension is an attribute describing the customer. This table should contain only one row per customer.

Metric Type Description Optional/Required
CUSTOMER_ID VARCHAR Customer identifier from client Optional
ATTRIBUTE VARCHAR Description of attribute (e.g., customer type, loyalty status, demographics, 3rd party data) Optional

Sample Schema:

CUSTOMER_ID CUSTOMER_TYPE GENDER
C001 premier female
C002 basic male