It’s the world’s largest open shopper data set. Based on over 120 shopping intent signals and 35B daily historic browsing and transaction events from 72% of all online shoppers, it represents a massive amount of granular shopper data.
Activated by best-in-class machine learning from the Criteo Engine, Criteo Shopper Graph fuels maximum performance for retailers and brands.
So, how does it work?
Criteo Shopper Graph is organized into three data collectives — identity graph, interest map, and measurement data.
Criteo’s guiding principles
We are transparent: We provide full visibility of our usage of your data and we do not use data without your permission.
We ensure security: Privacy by Design ensures the highest levels of data security and privacy, for which we use industry-best practices.
We create a fair environment: We make sure that everyone gets more value than what they contribute by themselves.
Identity graph: Unifying the shopper journey
Our identity graph contains Criteo IDs connected to more than 3B cookie, mobile device, hashed email, or CRM IDs. Every Criteo ID is interpreted by the Criteo Engine separately, allowing for a more unified, holistic view of every shopper.
When a shopper – let’s call them Diane – browses or completes a purchase, a Criteo event tracker, such as OneTag or App Events SDK, securely passes the shoppers’ cookie or mobile device ID and their hashed email or CRM ID, along with several other parameters such as pricing, site type, event type, and product ID.
Before our system stores the email, which is hashed using MD5, we apply a second one-way hash using SHA256, an industry-standard hashing algorithm, as well as an encryption step.
Using their cookie or mobile device ID — or a double-hashed and encrypted email or CRM ID — the shopper is matched to our graph.
When Diane completes a transaction in-store, we receive a hashed email or CRM ID through our offline sales feed or API, or a partner integration. Similar to an online transaction, before storing the hashed email to our system, we apply a second one-way hash and an encryption step. Then we can match the shopper to our graph.
What happens when a shopper, like Diane, browses a publisher website? Our Publisher Tag passes their cookie ID, which then allows us to match Diane to our graph.
If Diane browses a publisher app, publisher SDKs collect their Apple Identifier for Advertisers or Google Advertising IDs. These are passed to Criteo’s servers through bid requests and used to match the shopper to our graph.
In all cases, after the shopper is matched, they’re assigned a Criteo ID.
To complement our deterministic core, we also receive data from vetted cross-device data partners. To protect privacy and security, we collect only pseudonymous data. This prevents identification of an individual based on their personal information.
Identity graph: Protecting shopper privacy
We take strict measures to double-hash and encrypt all email addresses before storing them in our system. And through a cleansing process, we remove any IDs that are more than 90 days old or belong to an opted-out shopper. Employing strong pseudonymization techniques enables us to safeguard individual identities while ensuring data accuracy.
Identity graph: How we grow our graph
Any new linkages between cookie or mobile device IDs, and double-hashed and encrypted email or CRM IDs are added to the graph if they pass our data cleansing protocol. This process scrubs the graph for irrelevant or suspicious links. Once the data is cleansed, we group IDs together and associate the linkages to a new or existing Criteo ID.
Identity graph: How to use your IDs for better marketing
The best part is, you can securely access your shopper’s deterministically matched Criteo IDs at no additional cost. Criteo IDs can be used across marketing and measurement activities to connect your shopper’s omnichannel journey.
How do you access it? Well, there are three ways this data can be streamed in real-time. First, through OneTag onto your first-party cookie or your marketing partners’ third-party tracking pixel. Second, through an impression or click-tracking URL of a Criteo ad. Or third, through a call to the Identity Graph Service API.
Interest map: Understanding shopper interest
Now let’s take a look at interest map, which links a shopper’s browsing and transaction patterns to standard product, category, and brand identifiers.
Criteo has a deep understanding of shopper interest for products across your catalog, driven by the analysis of over one hundred twenty shopping signals for each shopper as they browse and buy. You benefit from private shopper interest from your own site or app – but there’s also shared shopper interest from all the retailers who have opted-in to collaborate. These retailers anonymously contribute towards a portion of Criteo’s aggregated shopper-level data from nearly three-quarters of the world’s online shoppers.
Interest map: Putting site and app data to use
When a shopper, like Diane, browses or completes a purchase on your site or app, a Criteo event tracker such as OneTag or App Events SDK is triggered. It reports on the shopper’s browsing and transaction activity, passing us multiple parameters. Based on this data, we create additional variables – such as prices of products browsed and purchased, and the number of products browsed from a given category. This allows the Criteo Engine to better target audiences based on your campaign objectives.
Interest map: Using data across retailers
Now, let’s take a look at how we make sense of shopper interest across opted-in retailers.
We receive thousands of product feeds from retailers and brands, but the way products are identified is inconsistent, and feeds don’t always contain brand and category attributes.
So how can we tell, across all the retailers opted-in to the interest map, which products, categories, and brands our shopper Diane is interested in from her past browsing and buying behavior?
A blue dress on one retailer’s product feed could be ‘product ID 12321340’, but in another retailer’s product feed, the very same product that is the same make and model could be ‘product ID 394234’, without any category or brand classification.
In order to consistently interpret products across thousands of retailer and brand product feeds, we first use Universal Catalog to standardize category and brand identifiers.
Universal Catalog is Criteo’s proprietary machine-learning technology that detects similarities between a retailer’s product feed and Criteo’s training set which contains products which have already been mapped to a Global SKU.
Universal Catalog then assigns each product a unique Global SKU using the product’s global trade item number, or GTIN – a de facto standard for product identification.
And if the product’s GTIN is not available, Universal Catalog uses similarities between the retailer’s product feed and products in our training set. We do this for every product from opted-in retailers.
So what does all this mean? Well, thanks to Universal Catalog being a part of interest map, we now know that both these blue dresses are in the same category and in fact, they’re actually the same product. Therefore, both products are assigned the same Global SKU.
And since Diane has looked at the same products, categories, and brands across multiple retailers in the past, we know that she’s interested in blue dresses.
And while we’re able to understand her shopper interest based on historic shopping data from thousands of opted-in retailers, interest map doesn’t contain or leverage any data that can be used to identify the names of those retailers or their account ID.
Measurement data: Tracking sales
Measurement data tracks brand-funded campaign sales across retailers in the Criteo Sponsored Products Exchange.
The Criteo Engine uses measurement data to optimize bids from attributed online and in-store sales. Measurement data helps brands understand the influence of their campaign to online and in-store sales across retailers at the SKU, placement, and audience level.