View products in your catalog

In this article, you’ll learn how to use the product catalog viewer to review the quality of your product data used by the Coveo Experience Hub.



This feature is currently in Beta—​this means that the functionality is subject to frequent change as we fine-tune the implementation.

One of the newest features in the Experience Hub is our product catalog viewer, a great tool for:

  • Reviewing the products that make up your catalog from any one of the possible data sources you’re using

  • Checking the data stored for a product (for example, categories) so you know how to target them when creating recs rules

  • Knowing which product data points are available. For example, if you want to show reviews in your recs carousel, you can use this tool to check if you’re sending this data correctly to the Experience Hub.

  • Checking the quality and accuracy of your product data

  • Troubleshooting any issues we find as part of our automated health check

Why is data accuracy important? For a start, the relevancy of product recommendations depends on accurate product data; we’ll be surfacing products based on a large number of data points, such as image URL, stock numbers, and price and these all need to be correct and sent to us correctly.

To get started, click Products from the side bar.

At the top of the page you’ll find some basic information about your catalog:


What’s the product catalog viewer and how will I use it?

You’ll use the product catalog viewer to review the products in your catalog and the basic product data like price and stock. You’ll be able to dive into the product data to review all of the data points we’ve collected for each individual product.

In the following example, the user has selected to view the products sent through QProtocol. In this view, we’ll show the top 50 most viewed products:


You’ll also find a search tool that you can use to find any product in your catalog.

On top of this, the product viewer also surfaces any issues we’ve found with the products in your catalog. One of the most common issues is a missing data point such as price. Typically, you’ll relay these issues to your dev team for resolution but you may need to contact Coveo Support for assistance.

Viewing the products in your catalog

By default, the source of product data is Combined; this is a view of your product catalog that joins the data seen across all sources configured for your property.

You can change the source by making a selecting a value from the Source dropdown box:

  • Combined - product data you send to us through your website and data from a product feed

  • QProtocol - only product data you send to us through your website

  • Google feed: This refers to the product data exclusively from a Google feed that you’ve imported.

Changing the data source is a great way to identify the origin of an incorrect data point.

As an example, in the combined source view, we might show that a price is missing for a particular product but we won’t show whether the data point is missing from your QProtocol data or from your feed. By switching to an alternative source, you can identify where the data point is missing and take the necessary action.

To help you find products in your catalog, you can use the search name to enter a product Id or name. Partial search is supported so even if you only know part of an Id or name, we’ll return any matches.

In the following example, the user is searching for items with the word "crepe" in the name:


Diving into the product data

For users looking to go beyond the basic product data like price, sale price, and stock, we provide an additional layer of detail for each product in your catalog.

To access detailed product information, click a product in the table

If you’re looking for a specific product, you can also perform a search by product Id or name to get the same detailed product information


The product data shown in the detailed view depends on what data you’re sending us through QProtocol and the data in your product feed.

Changing locale

A product catalog can exist in multiple languages and currencies. We build a product catalog for every combination of two QProtocol data points, ecView.language and ecProduct.product.price.currency.

The combination of the language and currency forms a locale. You can read more about locales, restrictions, and product coverage in Locales.

To change the locale, make a selection from Catalog summary for

Troubleshooting issues

As mentioned, one of the great features of the catalog viewer is a health check of your product catalog. We run this health validation on a sample of 50 products.

We’ll use a color code to inform you of the severity of the issue. This might be minor, where we find, for example, a missing data point such as price or stock for a few products, as shown in this example:


Or where you’re sending us product data for products that we can’t find in your feed:


Issues might also be classed as major, where we find, for example, a missing data point for all products in your catalog. In the following example, we see that the product price is missing for all sample products in the catalog built from a feed:


It’s worth remembering that we stitch together data from across all the sources used by your property. On a simple level, and as an example, this means that if a product is missing a price in a feed but your website is correctly sending us the price for the same product, your combined catalog will include the product price.


How are catalogs built?

A product catalog can be built from several different sources, including QProtocol and a Google product feed. Why? Well in our experience, few clients have obtained complete product coverage by only collecting QProtocol events. For this reason, we recommend providing an alternative source of product data such as a Google product feed.

By allowing our clients to provide alternative sources of product data and then mixing and matching the data, we ensure product catalogs have the most complete data coverage for the richest and most accurate experiences in your campaigns.

How do I build a catalog?

We have comprehensive documentation on building product catalogs through QProtocol and Google product feeds. See Build the catalog.

If we encounter a mismatch between the product data sent through QProtocol and the products seen in your product feed, we will display an error message.

If we’re seeing view events for products that are missing from your product feed, we will display the following error message:


In this state, we won’t show those additional products in recommendations campaigns.

If we’re seeing products in your product feed but not seeing view events, we will display the following error message:


In this state, we won’t show these products in recommendations campaigns unless they’re forced via rules or product Placements.

Why am I seeing an error about missing stock in our feed?

Typically, we will validate the availability of your products against stock, which might come from QProtocol or your feed. Where this is missing in your feed, we will display the following error:

"The following field is missing for all of the sample products: stock"

In the first instance, if you’re using the QProtocol field product.stock to report stock levels, we recommend validating that the Experience Hub is receiving the data correctly. You can do this in the Coveo Qubit Explorer or in the Validation Dashboard.

If you provide information about stock levels in your product feed, but use availabliity as an alternative to stock or even alongside it, we invite you to reach out to your CSM to discuss any preferences for reporting product availability and changes to our automated health check to look for availability instead of stock.

How often the catalog is synced with the feed?

By default, the Coveo Experience Hub syncs your catalog with the provided feed every 4 hours.


If you want to change the update frequency, contact your CSM (Customer Success Manager) or Coveo Support.

What happens if the synchronization fails?

If the Experience Hub fails to update your catalog, then it will try to sync the catalog for the next 42 scheduled runs. For example, if you’ve synchronization scheduled for every 4 hours, then it will make 7 days of synchronization attempts.

If all the attempts fail, the Experience Hub will no longer use the feed data, remove the last successful version of the catalog from your property, and fallback to updating the catalog via QProtocol data.