Recommendation Templates

In this article, we provide descriptions of all existing recommendations models that you can find in Campaigns > Recommendations > Create new. Those marked as [BETA] have only been released recently and are still under testing.

Under each model, there is a list of following properties:
Type: Model can be either “Rule-based” or “AI model” and "personalised" or "non-personalised".

  • Rule-based: based on fixed rules. These models are ready to serve immediately after saving the template.
  • AI model: driven by a machine learning algorithm. Training algorithms are usually run over the night, so the model is ready for the next day.
  • Non-personalised: model is searching for the items that are shown to all customers. Such a model can be driven by events (like "top-selling products") or by catalog metadata (gender, categories, colour, etc.)
  • Personalised: model is searching for behavioural similarities between customers and offers items tailored to each individual customer. These models require a bigger bulk of events for analysis (at least a few months timeframe).

Usage: defines for which e-commerce aim is the model useful
Requirements: set of requirements needed for model to be working
Requesting: how to request your recommendations from the saved model. The standards are described in more detail in the Integration chapter. However, additional standards can be also included in the body of the request such as currently viewed item ID or category names.
Functionality: description of the inner logic

Simple non-personalised templates

Popular right now

Type: Rule-based, non-personalised
Usage: Top selling or viewing products
Requirements: events tracking, imported catalog
Requesting: standard
Functionality: Shows products sorted by the count of one selected popularity event (typically purchase_item or view_item).

New items

Type: Rule-based, non-personalised
Usage: Promote newest products
Requirements: imported catalog containing datetime (or any numerical column describing date of when the product was added).
Requesting: standard
Functionality: Shows sorted products in descending order that were recently added to the selected product catalog.

Advanced non-personalised templates

Customers who bought this item also bought

Type: AI model, non-personalized
Usage: Up-selling, cross-selling complementary products on product detail page or basket page. Also useful in reactivation emails.
Requirements: events tracking, imported catalog, at least 6 months of purchase_item history
Requesting: The currently viewed item can be included in the request.
Functionality: Shows items that are the most frequently bought together with the item currently viewed by the customer. Typically, the recommendations are complementary items to the main product, such as accessories for a smartphone.
For the use-case of showing complementary products in the shopping cart, it is suggested to include the ID of the product which was added to the cart.

Metric based category

Type: Rule-based, non-personalised
Usage: Top selling products within certain categories on the category page or product detail page
Requirements: event tracking (at least one event for metric), imported catalog
Requesting: add a list of desired category names to the request (see Integration chapter & Product discovery use-case)
Functionality: Shows products only from the given category (or categories) that are sorted according to the chosen metric - e.g. a number of purchases or views. Items are sorted from the highest metric value to the lowest one. After saving the model, the calculations are automatically made and strored. The values are thereafter periodically re-calculated.
Notes: For minimization of recommendation latencies, we calculate your metric for the first 1000 categories (unique categories from category identifier defined in template settings) immediately after saving. If you have made a change to the settings it can take some time for the results to come into effect. If you are in need of immediate change, we suggest creating a new engine.

If there is no historical purchase at all, we use the same “Popular right now” fallback.

Limitations: Metric pre-computation (when the engine is saved) is executed on the only first 1000 categories. The model is able to recommend maximally 500 items. Catalog filter (1st step of engine setup & dynamic catalog filter from the get-recommendation request) are executed as post-filters on 500 recommended items. Cache results are re-computed based on the usage, if you want to use e.g. different events in engine setup, rather create new engine than change it in existing one (results from the original engine setup will be served another few days).

Text model

Type: AI model, non-personalised
Usage: Present products on the Product detail page that are consistent and similar to the item currently viewed.
Requirements: imported catalog containing textual information describing items. (e.g. attributes such as “description”, "name", "color", etc.)
Requesting: The currently viewed item must be included in the request.
Functionality: Shows products in order from the most similar one to the currently viewed by a customer. We are using the TF-IDF model to search for the similarities in terms of word frequencies. Additionally, you can choose attributes that will always be shared among recommended items and the requested item.

Simple personalized templates

A group of personalized recommendation models that are easy to set up.

Customer recent interactions

Type: Rule-based, personalized
Usage: Recommending products the customer has recently interacted with ("Continue where you left off" on popup banner, "Finish your order")
Requirements: events tracking, imported catalog
Requesting: standard
Functionality: Shows the most recent products the particular customer was interacting with. You can choose the specific interaction event on which the recommendation should be based on (view_item, purchase_item, cart_update). Products are sorted from the most recent timestamps to the oldest ones.

Homepage

Type: AI model, personalized
Usage: Providing personalized recommendations on Homepage based on historical activity
Requirements: events tracking, imported catalog, at least 2 months of purchase_item, view_item, and cart_update history
Requesting: standard
Functionality: This template reuses logic of Personalized recommendation for you template (see in Advanced personalized templates) and is optimized for Homepage in terms of automatically selected learning window and real-time support of recently tracked events.

Product detail

Type: AI model, personalized
Usage: Showing alternative products to consider that were visited together by all customers on the product detail page
Requirements: events tracking, imported catalog, at least 2 months of view_item history
Requesting: The currently viewed item can be included in the request
Functionality: This template reuses logic of Customers who viewed this item also viewed template (see in Advanced personalized templates) and is optimized for the Product detail page in terms of automatically selected learning window.

Advanced personalized templates

Personalized recommendations for you

Type: AI model, personalised
Usage: Cross-sell, Personalized recommendations for you, we think you would like these, Based on your recently viewed products, Homepage
Requirements: events tracking, imported catalog, at least 2 months of purchase_item and view_item history
Requesting: The currently viewed item can be included in the request.
Functionality: Shows products matching customer preferences based on purchasing and the browsing history, including real-time events in the current session. These events define the user-item interaction matrix. The more users interact with the same items, the more we consider them similar.

  • If item ID is included in the request the AI model finds the top similar products to the requested product and rank them by their similarity score. The similarity score is calculated using their shared events (bought, add to cart and viewed together). If there are too few shared interactions, the model fallbacks to “Popular right now” technique where popularity is computed from interaction events defined in the template.
  • If not we take the user’s interaction history (purchases, views, cart updates) and the AI model finds top similar users. Within similar users, the model looks for items with the highest probability of interaction for a requested user and returns them as recommendations.
    If there are too few historical interactions, the model retrieves the last 3 viewed products from App and run the “If included” steps for these items. Recommendations are then sorted from newest to oldest according to the retrieved products.
    If there is no historical purchase at all, we use again the “Popular right now” fallback with the popularity given as the event with most interactions.

Customers who viewed this item also viewed

Type: AI model, personalised
Usage: Alternative products to consider, Similar products, You might also like these, Product detail page.
Requirements: events tracking, imported catalog, at least 2 months of view_item history
Requesting: The currently viewed item can be included in the request.
Functionality: Shows items that are chronologically visited together by all users based on the item currently viewed. Typically the AI model recommends alternative products while the customer is browsing through a specific category or set of products.

  • If item ID is included in the request the AI model finds the top co-occurred products based on the user’s session and sort them by relevance. If there are too few historical views, the model will recommend most viewed products.
  • If not we take the user’s last 3 viewed products tracked by Exponea and run the if included steps for these items. Recommendations are then sorted chronologically according to the retrieved products.
    If there is no historical viewed item, we use again the “most viewed products” fallback.

Personalized category page [BETA]

Type: AI model, personalised
Usage: Cross-sell, Personalized recommendations for you, We think you would like these, Personalized category recommendation, Personalized ranking of your category page, Category page, Homepage
Requirements: events tracking, imported catalog, at least 2 months of purchase_item, view_item and cart_update history, catalog containing category and datetime (see also Personalized experience use case
Requesting: customer and a list of desired categories (see Integration chapter)
Functionality: Shows products from specified category/categories ranked by customer preferences based on purchasing and the browsing history. These events define the user-item interaction matrix. The more users interact with the same items, the more we consider them similar. Individual products in category are ranked based on user preferences. For example, if a given customer prefers dark chocolate, our engine finds other similar customers based on this preference and recommends items that they like. Furthermore, items are sorted based on the frequency of purchases of other users and only items that the customer has not purchased yet are recommended. As a fallback (for customers with only few purchases - customers for which we are not able to distinguish their style), we recommend attractive products. Attractive/trending products are currently most viewed & purchased products in the desired categories.
Limitations: Catalog filter (1st step of engine setup & dynamic catalog filter from the get-recommendation request) are executed as post-filters on the N recommended items, where N corresponds to count from the get-recommendation request. Based on the experimental results, engine works well in the case of sorting up to 10,000s items. E.g. if CategoyNames = ["t-shirt", "trousers"] and category t-shirt has 2,500 items and trousers has e.g. 15,000 items the latency is as expected. In the case when we use too general category e.g. woman with 250,000 items, sorting can be slow and recommendation latencies can be higher (potential problem in the web-usage use cases).

Fallback templates present in Advanced template

These are models intended as a fallback (support model in case the main one fails to personalise) while designing a combination of models in Advanced template.

Manual selection

Type: Rule-based, non-personalised
Usage: Promote a certain, manually-chosen set of products (sponsored, on-sale, etc.)
Requirements: just imported catalog
Requesting: standard
Functionality: Shows products picked manually by their IDs. All customers will see the same items.

Chosen by metric

Type: Rule-based, non-personalised
Usage: Top selling or viewing products
Requirements: event tracking, imported catalog
Requesting: standard
Functionality: Shows products sorted according to chosen metric - e.g. the number of purchases or number of views. Naturally, we sort items from the highest metric value to the lowest one. The whole calculation can take a few seconds, then the results are stored and re-calculated periodically. Note that the calculation is subject to a 5-minute cache (results are updated every 5 minutes).

Updated 17 days ago


What´s next?

Advanced engine

Recommendation Templates


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.


We rely on cookies

to optimize our communication and to enhance your customer experience. By clicking on the Accept and Close button, you agree to the collection of cookies. You can also adjust your preferences by clicking on Manage Preferences. For more information please see our Privacy policy.

Manage cookies
Accept & close

Cookies preferences

Accept & close
Back