Appearance
Recommendations
Personalized recommendations is one of the cornerstones of Relewise's service, and a core functionality of what we offer. With recommendations, you can help users navigate between relevant products more easily, and improve conversion rates for your products.
This page details some of the intricacies of Recommendations via Relewise. If you are looking for a list of the possible recommendations we offer, please refer to our recommendation types page.
Recommendation Weighting
Some recommendations, such as Popular/Personal Brand/Content Category/Product Category, come with a built-in weighting that allows you to control the relative weight that each parameter should count for the overall weighting of the recommendation results. These values, entered as a ratio, are relative to one another, and so do not differentiate between a 1:4 ratio, and a 5:20.
For example, a PopularProductCategory
with the weighting CategoryViews = 1
, ProductViews = 0
, ProductPurchases = 0
will show categories entirely on the basis of the amount of views they have gotten.
Conversely, the same recommendation with the weighting CategoryViews = 1
, ProductViews = 2
, ProductPurchases = 4
will generate recommendations of categories where Product views are weighted twice as high as Category views, and where Product purchases are weighted twice as high as Product views, and four times as high as Category view.
TIP
It is important to note that any change to the weighting values of a recommendation will require a minute or two to process before the results returned will reflect the weights. This is due to Relewise having to recalculate the entity relations for the recommendation from scratch when a value is changed, which may incur a slight delay during computation.
Fill
If a recommendation does not have enough high-confidence product relations to fill out the recommendation slider, you may use the Fill function to populate the empty slots with products. This function will default to showing Popular products, but may be further customized through the use of Filters and Filter Scopes.
Fill is a toggleable setting that depends on the AllowFillIfNecessaryToReachNumberOfRecommendations
flag to be set.
Filter Scopes
Filter Scopes append to a filter in a recommendation request, and inform where the filter should take effect. This is related to the Fill function, which can be made to only draw from a particular pool of products such as parent category, product brand, etc.
When using a filter scope, there are two possible variations of where to apply this targeting:
- Default, which will target the products that are being recommended with a high degree of confidence.
- Fill, which will target the products that are being used to fill.
It is furthermore possible for the filter to apply to both Default and Fill, for situations when you might want to limit a product's entire recommendation scope to just one brand, category, assortment, or similar.
Below is an example of a ProductCategoryID
filter, which uses Filter Scopes to define that the Fill function of the request should only find entities in the product's immediate parent category.
csharp
request.Filters.Add(new ProductCategoryIdFilter("category-id", CategoryScope.ImmediateParent)
{
Settings = new FilterSettings
{
Scopes = new FilterScopes
{
Default = new ApplyFilterSettings(false),
Fill = new ApplyFilterSettings(true),
}
}
});
Example of a filter scope being used to define a Parent Category ID filter to the Fill flag
Batching Recommendations
Similar to searches, Relewise allows for the grouping (batching) of Recommendation requests into a single call, which helps with performance and reponse times.
Specifically, you can use a ProductRecommendationRequestCollection
or ContentRecommendationRequestCollection
, which has the Requests
property. Here, you can add a number of different RecommendationRequests
to be served back to you in one go.
By furthermore using the RequireDistinctProductsAcrossResults
property, you can further ensure that the recommendations you return in the batch do not share overlapping products, thus guaranteeing a maximum variety of products served.
Using the above method will return a ResponseCollection
with a Responses
collection. The index of this collection is automatically aligned with the index of the request to ensure ease of use.
Note that Product Recommendations can only be batched with Product Recommendations, and Content Recommendations can only be batched with Content Recommendations. If you require recommendations of both Products and Content to be delivered on the same page, you will need to do two separate (batched) requests.
csharp
var requestCollection = new ProductRecommendationRequestCollection(requireDistinctProductsAcrossResults: true);
var othersAlsoViewedRequest = new ProductsViewedAfterViewingProductRequest(
language,
currency,
"Product details page",
user,
new ProductAndVariantId("...")
);
var othersAlsoPurchasedRequest = new PurchasedWithProductRequest(
language,
currency,
"Product details page",
user,
new ProductAndVariantId("...")
);
requestCollection.Add(othersAlsoViewedRequest); //index 0
requestCollection.Add(othersAlsoPurchasedRequest); //index 1
var responseCollection = recommender.Recommend(requestCollection); // 1 single network request issued
var othersAlsoViewedResponse = responseCollection.Responses[0];
var othersAlsoPurchasedResponse = responseCollection.Responses[1];
Example of a batched Recommendation request