Criteo
What Is Criteo?
Criteo is a technology company specializing in digital advertising. Their platform utilizes machine learning algorithms to analyze online user behavior and deliver targeted ads across various devices and channels. By helping advertisers reach potential customers who have shown interest in their products or services, Criteo aims to improve ad performance and drive conversions.
What are the benefits of integrating MetaRouter with Criteo?
- Enhanced privacy and security: Direct server integration reduces the exposure of user data to third-party platforms, enhancing privacy and security compliance.
- Reduced site latency: Decreases the reliance on third-party tags, resulting in faster loading times for websites and improved user experience.
Getting Started - From Your Criteo Account
- Grab your Partner ID
- Log into your Criteo Commerce Growth account.
- On the left-hand navigation, under Events, click on Events Tracking.
- Under the “Select a data set” drop-down, you will find your Partner ID in parentheses next to your account name.
Getting Started - From Your MetaRouter Account
Adding a Criteo integration.
From the integration library, add a Criteo integration. Then, fill out the Connection Parameters:
Connection Parameter | Description |
---|---|
FIRST_PARTY_DOMAIN | The domain of the partner. Ex, for http://www.fnac.com/, it could be “http://fnac.com/” or “http://www.fnac.com/”. |
FIRST_PARTY_NAME | Advertiser name. Ex, “metarouter” |
PARTNER_ID | The partner ID of the account you are sending the data to. |
Adding a Criteo Sync
To gather and send the anonymousID
value as a cookie to Criteo’s identity endpoint, you must add a Criteo sync.
- From the Pipelines page, find the pipeline associated with the web property you’d like to add a sync to. Hover over the three-dot dropdown and select “Build AJS File.”
- In the Identity Syncs section, select the Criteo sync.
- Fill out the following fields:
- Partner ID - The partner ID of the account you are sending the data to.
- First Party Name - Advertiser name. Ex. “metarouter”
- First Party Domain - The domain of the partner. Ex, for www.fnac.com, it could be “fnac.com” or “www.fnac.com”.
- Cookie Lifetime (in days) - 30 days recommended
- Fire on re-sync - Default set to off
- Scroll down and click the Save and Build File button.
- Deploy your AJS file to propagate changes to your web property.
Event Mappings
MetaRouter provides all of the event mappings that Criteo integrations typically require. You may add custom events, parameters or mappings in accordance with Criteo’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 |
---|---|---|
account Required | Type: String The partner ID of the account you are sending the data to. | partner_id |
site_type | Type: String The device type of the user. This accepts 'd' (desktop), 't' (tablet) or 'm' (mobile). | Direct value: d |
retailer_visitor_id Required | Type: String A unique Id that is consistent across multiple sessions for an unauthenticated user. | anonymousId |
ip Required | Type: String The IP address of the user. | context.ip |
full_url Required | Type: String The full URL where the event is triggered. | context.page.url |
page_title | Type: String Title of page. | context.page.title |
user_agent Required | Type: String The user agent string from the user's browser. | context.userAgent |
id.email.raw Highly Recommended | Type: Plain Text Email The user's raw email address, whitespace trimmed and lowercase. | N/A - Expression |
id.email.sha256_md5 Highly Recommended | Type: String The user's email, whitespace trimmed, lowercase, MD5 hashed then SHA256 hashed. | N/A - Expression |
id.email.md5 Highly Recommended | Type: String The user's email, whitespace trimmed, lowercase and MD5 hashed. | N/A - Expression |
id.email.sha256 Highly Recommended | Type: String The user's email, whitespace trimmed, lowercase and SHA256 hashed. | N/A - Expression |
events.timestamp | Type: String The timestamp the event happened for the user. Valid formats: UNIX timestamp yyyy'-'MM'-'dd'T'HH':'mm':'ssZ yyyy'-'MM'-'dd'T'HH':'mm':'ssz yyyy'-'MM'-'dd'T'HH':'mm':'sszzz | timestamp |
Event Specific
product_list_viewed
Output Key | Description | Expected Input |
---|---|---|
events | Type: viewList An array of the top 3 products on the listing page a user visited. | N/A - Expression |
cart_viewed
Output Key | Description | Expected Input |
---|---|---|
events | Type: viewBasket Item ID, price, category, and quantity. | N/A - Expression |
order_completed
Output Key | Description | Expected Input |
---|---|---|
events.currency | Type: String The ISO code of the currency being passed to the tags. | properties.currency |
events.order_id | Type: String The order ID used to identify a given order. | properties.order_id |
events | Type: trackTransaction Timestamp, currency, order ID, Item ID, price, and quantity. | N/A - Expression |
product_added
Output Key | Description | Expected Input |
---|---|---|
events | Type: addToCart Item ID, price, and quantity. | N/A - Expression |
product_viewed
Output Key | Description | Expected Input |
---|---|---|
events.event | Type: String Event triggered. | viewItem |
events.item | Type: String The product ID of the product the user looked at. | properties.product_id |
events.timestamp | Type: String The timestamp the event happened for the user. | timestamp |
products_searched
Output Key | Description | Expected Input |
---|---|---|
events | Type: viewList Item ID, price, and quantity. | N/A - Expression |
payment_info_entered
Output Key | Description | Expected Input |
---|---|---|
events.event | Type: String Event triggered. | addPaymentInfo |
checkout_started
Output Key | Description | Expected Input |
---|---|---|
events.currency | Type: String The ISO code of the currency being passed to the tags. | properties.currency |
events.id | Type: String The order ID used to identify a given order. | properties.order_id |
events | Type: beginCheckout Item ID, price, and quantity. | N/A - Expression |
identify
Output Key | Description | Expected Input |
---|---|---|
events.event | Type: String Login event triggered. | N/A - Expression |
page
Output Key | Description | Expected Input |
---|---|---|
events.event | Type: String View Page Event triggered. | N/A - Expression |
Required Identifiers
These identifiers must be mapped to Criteo in order for successful user matching to occur. Without these IDs, any events sent to Criteo will be rejected. 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? |
---|---|---|
anonymousID | 130161d0-8fee-4167-aa4d-d151eed27c6b | Yes - Sync is required to send anonymousID to their identity endpoint |
ip | 127.0.0.1 | No |
user_agent | Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0 | No |
full_url | https://www.example.com/product/12345 | No |
Recommended Identifiers
These identifiers should be mapped to Criteo whenever possible to ensure the highest user match rates possible. If using these identifiers, they must be added as Global or Event Specific mappings.
Attribute | Description | Example |
---|---|---|
id.email.raw | The users raw email address, whitespace trimmed and lowercase. | [email protected] |
id.email.sha256_md5 | The users email, whitespace trimmed, lowercase, MD5 hashed then SHA256 hashed. | 7328fddefd53de471baeb6e2b764f78a |
id.email.md5 | The users email, whitespace trimmed, lowercase and MD5 hashed. | 97817c0c49994eb500ad0a5e7e2d8aed51977b26424d508f66e4e8887746a152 |
id.email.sha256 | The users email, whitespace trimmed, lowercase and SHA256 hashed. | 9561c3516f02f51fa0ac38e9c81df0157ebab90d59ebde6fcf0f128f06a66423 |
Additional Criteo Documentation
Updated 3 months ago