Product Recommendations
Last updated
Last updated
Learn how to get the most recommended products for each customer and how to use them.
Leveraging product recommendations allows you to tailor the customer experience based on individual preferences and behaviours. By analysing past interactions, product attributes and purchase patterns, you can suggest relevant products that enhance engagement and drive conversions. This personalised approach not only boosts sales through cross-selling and up-selling but also strengthens customer relationships by delivering value at the right moment—whether during seasonal peaks, special promotions, or key lifecycle events.
DinMo can pinpoint and rank the top 10 products most relevant to each customer, irrespective of the catalog's size. Each time a consumer makes a new purchase, the predictions are adjusted accordingly.
DinMo's predictive analytics are invaluable for optimising marketing budgets and tailoring customer communications. This process involves leveraging intricate algorithms that analyze buying behavior to ensure the recommendations align closely with the customer's interests and past purchasing decisions. Although the match might not always be precise, the goal is to maintain a selection that resonates with the user's preferences, ultimately enhancing their shopping experience through tailored suggestions that remain pertinent.
Go to the Predictions section and choose Product Recommendations to identify up to 10 recommended products for each customer.
Select the following fields:
Users Model: This users model must contain all the customer data you wish to use for training. You must have a clearly resolved customer list. Ensure there is a relationship with an events model containing all transaction data.
Quantity Value Field: This field must be available in the events model you've just chosen. This corresponds to the quantity of product a person has purchased for a given transaction.
Custom Model (Products): This custom model must contain all product information and be linked to the transactional model selected just before.
Product Value Field: This field must be available in the custom model you've just chosen. This must corresponds to the unique identifier for each of your products.
And then, click on Continue.
Configure the scope of your prediction:
Specify which product attributes should be used for the recommendation engine (e.g. colour, product type, size, etc.)
Specify how many products you wish to recommend per person (up to 10)
Name the prediction and give a description (optional)
Click on Save.
Once you've created your prediction, it will be available on the page listing all your predictions. You can get more details about one specific prediction by clicking on it.
By clicking on a specific prediction, you will find several pieces of information in the Overview tab:
Prediction quality: When you configure a training on DinMo, the data used as a training set is split into two data sets, one for model training and another for model evaluation. After training the models, we compute predictions on the holdout data to compare it to the ground truth we previously stored. This gives you an idea of the accuracy of the model.
Prediction parameters: All the set-ups you did in the previous flow.
Attached model: For an overview of the output, click on a prediction and then "Go to model" at the bottom.
An associated predictions model is automatically created, pointing to a predictions table in your data warehouse. You are free to use the results stored in your data warehouse, particularly for BI purposes.
In this prediction model, several fields are populated and refreshed automatically:
primary_key
: It corresponds to the primary key of your model. This field is not intended for use in segments/activations.
user_unique_id
: This is the unique identifier (primary key) of your users model. It can be a customer_id, an email, etc.
last_update_date
: This date corresponds to the last time a user (identified by a user_unique_id) was updated, i.e. his predictive attributes were updated.
This may be the case for a number of reasons: the customer has performed an action that has an impact on predictions (e.g. a transaction), you have forced a new prediction, etc.
recommended_item_id
: This is the unique identifier (primary key) of your custom model. It often corresponds to the product_id.
ranking
: The rank at which we recommend the product. Values can range from 1 to 10. A rank of 1 corresponds to the most recommended product.
score
: The pertinence score of the product relative to the most recommended product (rank 1). A score close to 1 corresponds to a product as pertinent as the rank 1, whereas a score close to 0 should mean that the product must not be recommended.
Again, although the match might not always be precise, the goal is to maintain a selection that resonates with the user's preferences, ultimately enhancing their shopping experience through tailored suggestions that remain pertinent.
One of the main uses of product recommendations is obviously 1:1 personalisation. The best way to use this information is to send the list of recommended products as custom attributes to destinations that support it (in particular CRM / CEP / Support tools).
You can then personalise all your messages by using this custom attribute, which will dynamically change values depending on the client.
To apply AI attributes as filters for your segments:
Create a new segment and select the users model you used for predictions.
The AI attributes will appear in the additional model filters. For example, you can choose the customers who have their most recommended product from a certain type.
All customers interested (e.g. up to ranking 3) in each each product category
For top x products, all customers interested in this specific product
Events Model: This events model must contain all the transactions associated to the customers in the model selected above. The events need to be at the order line level, and not at the ordel level.
Choose the training period of your prediction. You can choose to use all available data or a specific period (if you want to eliminate exceptional periods - for example, when you run promotions on a certain type of product). The aim of eliminating a certain period is to avoid biasing the algorithms. If you have de-stocked a given product, it is likely to have sold more than usual. However, this should not be mistaken for classic buying behaviour, hence the exclusion of the period.