Principles of e-commerce personalization

How to set up targeted and relevant proposition to your customers

Setting in place personalization on a website can be a difficult task, there are many ways to offer certain level of personalization and one must take into account different level of user and user’s information.

User can be anonymous or logged-in, and the source of their information can be obtained from your own website or from external sources. Setting up personalization on an e-commerce website should be taken as a journey tackling progressively each of these class of customers.

Anonymous Identity

It is possible to setup personalization on the website, within a browser we can take advantage of the use of cookies and session or local storage to provide a personalization experience without setting up any type of fancy ecosystem or the need to maintain identity on a website.

  • Traffic origin & Url parameters: Data points such as referrer can be used to provide a different experience on your website. If you are coming from a deals website you are most likely looking for different types of offers than if you have come from google for instance. Url parameters can be further used to personalize the experience dependent on which links brought you to the website.
  • Advertising targeting: targeting setting used in advertising campaigns can be used to personalize the experience of an user visiting the website without having to identify the users. Age, gender, location, interests, receptiveness to certain type of offers are parameters that could be setup to provide that personalization experience.
  • Browsing behavior: Behavior on your site, such as specific page visits, abandoned carts, time on site, previous purchase are parameters that can be tailed to provide a personalized experience

The personalization features that have been set up can then be used for multiple purposes:

  1. The personalization of specific page and content blocks
  2. The creation of on site Journeys
  3. Personalized Recommendations

Personalization of pages and content block

Segmentation set preference

specific segmentation cookie on website

Marketing targeting feature can for instance be used to personalize the landing page and their settings for apparel website. For instance it could be used to preselect or order in a different way the items in their menu.

Nike’s Menu


User to items type of relationships, can be found using many actions on your e-commerce website, purchase, add to cart, views… These can be used to upsell, cross-sell or offer the opportunity to discover relevant products, for instance, Amazon provides different content block centered around the idea of user-items relations:

example of this type of personalization content block on amazon

The setup for these types of personalization does not require to have established an identity in order to provide a recommendation, merely to track information at a user, or potentially order or session level in order to track the necessary data needed to feed the recommender engine.

This type of recommendation typically makes use of a technique called collaborative filtering. This technique user the information gathered through large amount of users to make inference related to one’s preference and ranking the available items in a more effective way. Depending on the model being setup it can used pre-calculated information or being enhanced to provide the best recommendation.

Creation of Journeys

On site Journeys:

extract from a local storage in the browser from a session on

Browsing information related to the type of items viewed by the customers, for instance is the customer looking specifically at items on deals. Different parameters could be used to decide for instance whether or not to trigger specific offers to users based on their browsing behavior.

example of deals lurker behavior

For instance a deal lurker that browse the website quite often and looks mostly for deals page and product. Given that the users doesn’t normally convert for any of the items offered at regular price, it might be worth offering him a specific discount code to trigger him to convert.

Depending on the setup of the journeys and the tracking being applied to it, models can be used to define next best actions (NBA) and the relevance and value in offering a specific offer or discount. The setup of journeys and tracking the available information allows for the creation of content sequencing on the website.

Recommended For You Page

Data acquired from browsing behavior, targeting settings and overall interactions on the website can be used to provide personalized recommendation for users. This typically happen, usually through the use of K-means or KNN types of recommender systems.

dailymotion’s recommendation section

This types of section allow for offering content that is more relevant based on behavioral characteristic of the customer and offer a truly personal experience.

Resolved Identity

Login events can help unify identity across browser, devices and sessions. In such a sense it is there can be a single user identity for all his/her interaction with your website, regardless of the device s/he used or the fact that he was logged-in or not.

Different approach can be used to handle tying back events happening prior to the login event to the user’s identity.

Cookies matching, is one such technique where if events have been previously been sent to the server they can be tied back to the resolved identity by means of a lookup for instance if we had an anonymous visitor id set up on desktop and mobile which resolved to one logged in identity, the data related to these users could be traced back from the following matching table:

Matching data could be provided to the server on login event and all other data provided using the pseudonymous visitor_id.

Event Push, using the local storage of the browser it is possible to cache browsing event on the browser until one’s identity has been resolved.

The above picture explains how the behavior would work. If a given visitor identified with visitor id 2020, visited the website on 4 occasions. On the first and second sessions that the user would show up on the website, the data would start to get accumulated in the browser storage with no data being pushed to the server. On the third session, until the login event happens the data would continue to be accumulated within the browser but once the login event happened and the user’s identity has been resolved to userid: 123, the data is sent to the server and the event data within the browser storage. On the fourth session, since the identity has been previously resolved the event data can directly be sent to the server.

At the heart of this data collection effort is the customer profile, a repository of data at user level that contains all the relevant attributes and event history of a customer. This information can be retrieve when a user logs in to personalize his/her experience in a consistent way across devices.

The data in the customer profile, can then be used to fulfill different personalization use case. Retrieving historical data stored in the customer profile for display, retrieving different scores previously computed, or retrieving features needed to feed a recommendation model.

personalization feature of amazon website, name, address and browser history are directly displayed

Amazon uses different types of personalization on their website for instance, beside the previously mentioned user-item content block , they also rely on more straightforward personalization mechanism such as such retrieving your browsing history or past purchases.

personal recommendation on amazon

In the above example, data is extracted from a customer profile to feed a recommendation model. Historical data can be used to provide deeper and more relevant recommendation to the users.

Merged Identity

Omni channel

Certain identifiers can be used to match identities across channels. Within omni-channel setup the golden record “360 Customer profile” serves as a holistic view of the customer across all interaction touch point.

Data from marketing and CRM automation software can easily be tied back at customer level using email as a matching key. Tracking identifiers can further be used in these emails to match data from the marketing automation software with website data, potentially offering session matching identifier between the two systems.

Interaction with customer service typically happen in one of three flavor: calls, emails and chat. These interaction points’ data, can integrated using any user or order level identifier. Matching can be done at the time of processing the customer’s request doing a lookup in the system for any provided identifier. When using onsite chat widgets and forum support it is further possible to tie customer contact and requests directly to a session identifier.

For point of sales, loyalty cards and programs allows to have a link from sales to a unique customers, regardless of payment method. Data points such as email address, phone number and/or name & address can be used as identifiers to merge customer data points into a unique profile. In case of card payment, card fingerprints can be used as an additional identifier for matching purposes. These identifiers can be used to merge the available basket purchase data with online data.