Recommendations Implementation Prerequisites

Although making the changes outlined in this documentation are highly recommended, you do not need to make them to use recommendations. However, if you plan to use SKU-based filters, such as color or size, then you must update your Monetate implementation.

At a minimum recommendations use two pieces of data from a product catalog:

  • Product ID: The parent identifier of a group of SKUs (for example, men's crewneck t-shirt)
  • SKU: The individual product identifier, often a combination of product, color/pattern, and size (for example, size medium green men's crewneck t-shirt)

The Personalization platform uses these two piece of data in various ways when serving recommendations.

Product ID

Product ID (PID) is required for any channel implementation. The PID is often found on category, index, product, cart, and purchase pages and is the identifying value of a parent product. It should be the same value sent in a product catalog within the item_group_id field.

Recommendations reads the PID on the page to compile a list of recommended products based on the selected collaborative algorithms (for example, Viewed and Also Viewed, Purchase and Also Purchased) and filters.

Product ID is used for filtering when all SKUs on the page have the same value.

To illustrate how PIDs are used, consider this example. Recommendations are running across all your product pages, and a filter has been applied to only show products that match the gender of the product being viewed. The platform reads the PID on the page and then looks up the <gender> attribute in the product catalog. In real time the platform filters the recommendation results to only include products whose <gender> attribute matches that of the PID read on the page.

SKU

To display SKU-based recommendations, you must also provide the SKU being viewed within your Monetate implementation. Common examples of SKU-based attributes include color and size. If you use a SKU-based filter in a recommendation strategy but don't provide SKU in your implementation, then the platform returns the first SKU found for the given PID. This situation could result in unexpected recommendations if the attribute of the returned SKU doesn't align with what the customer is viewing.

To illustrate how SKUs are used, consider this example. Recommendations are running across all your product pages using a recommendation strategy configured to only show products that are the same color as the product being viewed. The Personalization platform reads the SKU of the product the customer is viewing on the page and then looks up its <color> attribute in the product catalog. The recommendation results are then automatically filtered to only include SKUs that have the same value for the <color> attribute.

When sending SKUs in your implementation, you may need to include a retrack on pages on which customers can select different SKUs. A retrack enables the platform to understand each SKU the customer is viewing without requiring a page refresh. If the page already refreshes when customers navigate between SKUs, then you may not need to implement a retrack.

If the recommendation strategies you create don't require SKU-based filtering, then your Monetate implementation doesn't need to provide SKUs. However, sending this data enhances your ability to maximize value from the product.

Additional Implementation Tips

Confirm the on-page SKUs for a particular product or products using the Monetate Inspector tool. Compare that SKU data to what appears in the product catalog for the same products.

Know where on your site the SKU lives. Is it in a data layer? Is there a specific URL?

JavaScript API Implementation FAQ

Why should I update my Monetate implementation?

To filter on SKU-level attributes, the platform must collect the SKU on a page.

The SKU data sent must match the SKU in the product catalog.

How should I update my implementation to collect on-page SKU data?

If you want to collect SKU-level attributes on a page, you must update your JavaScript API method calls to collect SKU data on product, cart, and purchase pages. See the following documentation in the Developer category of the knowledge base to implement these method calls:

Each piece of documentation includes the method call and one or more examples of its implementation.

Custom Implementation FAQ

Can Monetate collect PIDs and SKUs in a custom implementation?

Yes, the platform can collect both in a custom implementation.

Why should I update my custom Monetate implementation?

To filter on SKU-level attributes, the platform must collect the SKU on a page.

How should I update my implementation to collect on-page SKU data?

Contact your dedicated Customer Success Manager (CSM) to request that your implementation be updated.