The indexing process gathers and organizes a product's data, such as catalog information, price, and stock quantity, to be displayed to customers in search results and on store shelves.
Whenever there is a change in product status or information, a reindexing flow is triggered. Reindexing can occur in situations such as:
- Changes in product fields
- Product activation or deactivation
- Creation or removal of a collection
- Changes in price or stock quantity
For more details about indexing a product in legacy stores, see How indexing works (Legacy CMS Portal). If your store uses Intelligent Search, see Indexing History (Intelligent Search).
In some cases, the indexing process may be interrupted, resulting in the latest updated product information not being displayed on the store's website. Here are a few scenarios where such interruption can occur:
-
Incorrect product entry in the Catalog
-
No trade policy associated with the product in the store binding
-
Indexing timeout (40 seconds) due to a high number of requests to the checkout during indexing. The number of requests may vary depending on the following product-related factors:
- Number of trade policies
- Number of SKUs
- Number of geographical regions
- Number of collections
- Number of sellers
Solutions
To fix any issues preventing correct product indexing in the store, consider doing the following:
- Check product fields
- Check the account binding information
- Reduce the number of trade policies associated with the product
- Change the number of SKUs per product
- Remove SKUs from collections
- Reindex the store's product base
Checking product fields
Errors in product fields can lead to inconsistencies when indexing a product.
-
In the Admin VTEX, go to Catalog > All Products.
Stores using the Products and SKUs (Beta) page should check the product fields by going to Catalog > Products and SKUs in the VTEX Admin. Learn more about Products and SKUs (Beta).
-
Find the product you want and click UPDATE.
-
Check if the information in all the product fields is correct. If necessary, update it and click Save.
-
Access the indexing report in Catalog > Reports and check whether the product is in the indexing queue or has been indexed.
Checking the account binding information
When the account has more than one store, you need to conduct the binding, process — which binds the website to trade policies for each store. If a product is associated with a trade policy not present in the account's binding, indexing errors can occur.
To identify the trade policies associated with each store in your account, see Linking a store to a CMS folder structure (binding).
Changing a product's trade policies
When a product is associated with multiple policies, it may exit the indexing queue after numerous data verification iterations due to timeouts.
Example: A product with 5 active SKUs across 5 different trade policies may require 25 validations of stock availability, price rules, and promotions.
To avoid this scenario, check the possibility of using the same trade policy for different marketplaces, as described in Configuring a marketplace trade policy.
If you can reduce the number of trade policies in your store, access the product fields again to change the trade policy and check the indexing report, as described in Checking product fields.
Changing the number of SKUs per product
Similar to trade policies, having an excessive number of SKUs associated with a product can cause delays that exceed the indexing timeout. To reduce the chance of this issue occurring, consider splitting a product into separate items with fewer SKUs.
Example: If the product "Shirt" has six SKUs (Yellow S, Yellow M, Yellow L, Blue S, Blue M, and Blue L), it can be split into two products with three SKUs each: "Yellow Shirt" (S, M, and L) and "Blue Shirt" (S, M, and L).
After adjusting the number of SKUs per product, check the indexing report, as described in the section Checking product fields.
Remove SKUs from collections
There are two ways to remove a SKU from a collection: via the Legacy CMS Portal or using the Collections (Beta) module. This section shows how to remove a SKU from a collection in the Legacy CMS Portal. For more information about the process in the Collections (Beta) module, see Product removal.
If any of the product's SKUs are included in a collection, this might also cause an indexing timeout. Follow the steps below to check if the SKU is included in one or more collections:
- In the Admin, go to Storefront > Layout.
- Click the CMS folder and Product Cluster (Collections).
- Click the first collection from the list.
- At the bottom of the Other options column, check if the SKU is in the list. If it is and there is nothing against removing it from the collection, click the remove button next to the SKU.
- Repeat step 4 for the same SKU across all collections within the Product Cluster (Collections).
- Access the indexing report in Catalog > Reports and check if the product is in the indexing queue or has been indexed.
Reindexing the product base
A complete reindexing of the product base can be conducted to simultaneously update the information for all products in the store.
For stores with fewer than 100,000 products in the catalog, the account holder can use the Schedule full reindexing function in the VTEX Admin.
For accounts with 100,000 or more products, please contact VTEX Support to conduct this type of operation.
Learn more in Database Maintenance (Full Cleanup).
