Product feed best practices¶
The product feed is a crucial part of the Voyado Elevate integration, directly impacting available features and overall performance. This page is intended for both retailers and integrators, providing best practices and guidelines for the product feed, along with their rationale.
Integration time savings
- Some guidelines involve data normalization and asset handling, which must be addressed by retailers for successful implementation. Retailers should assess these guidelines and ensure data accessibility when needed.
- Many content-related best practices can be implemented iteratively, allowing for a faster go-live with room for future improvements.
- Use these best practices as a checklist during data feed integration.
Checklist¶
Follow all applicable best practices and implement those dependent on retailer data quality whenever possible. For more details on each best practice, refer to the linked target.
Target | Best Practice |
---|---|
Natural key mapping | Ensure natural key mapping for product groups, products, and variants. |
Natural key mapping | Use SKU IDs as variant keys. |
Natural key mapping | Ensure variant keys match SKU IDs in Engage. |
Product titles | Keep product titles concise and avoid including the brand name. |
Release dates | Provide product release dates. |
Categories and ontology | Use the ontology attribute to define a product’s place in a product-based categorization hierarchy. |
Categories and ontology | Use the category attribute to define multiple categories of a product. |
Categories and ontology | Use the greater-than sign (>) to define hierarchy levels in ontology and category . |
Departments | Ensure department values remain stable and do not change frequently. |
Cost | Include cost information in the data feed or provide it in order notifications. |
Metallic colors | Specify metallic colors Gold and Silver in the feed. |
Initial colors | Provide initial colors for retailers with high product turnover. |
Custom attributes | Include all attributes relevant to search, filters, and facets as custom attributes. |
Missing images | Do not use placeholder images to indicate missing images. |
Product images | Provide all relevant product images. |
Image resolutions | Supply images in appropriate resolutions for thumbnails, mobile, and desktop. |
Image resolutions | Provide image widths if known. |
Consistent image ratio | Maintain a consistent image ratio across all images. |
Cutout images | Clearly separate cutout images from other image types. |
Clean imagery | Keep images free from overlays, badges, or other embedded content. |
Translations | Use translation entities to ensure stable product selections. |
Content | Include content items for key informational pages. |
Details and rationale¶
Natural key mapping¶
The keys of the product groups, products, and variants should have a natural mapping to identifiers comprehensible on the retailer’s side, ideally using article numbers or codes utilized both internally and externally. The keys provided in the feed must match those in order notifications. Variant keys should use SKU IDs.
Feature
- Exact key matches in search will direct visitors to the corresponding product page.
- Variant keys matching SKU IDs in Engage enable Evolve features.
Release dates¶
A product’s release date indicates how new it is considered. This should reflect the date the product becomes available for purchase. Providing release dates in the feed is highly recommended.
Feature
- Newness is factored into product ranking.
- Enables the
NEW
product badge. - Allows sorting by newness.
- Supports dynamic product selections based on newness.
Cost¶
Providing product cost allows Elevate to optimize for profit and display profit metrics in the Elevate Apps. Costs can be included as variant attributes in the data feed or supplied at purchase time via order notifications. Retailers should choose the easiest method for supplying cost information.
Note
Cost must be a non-zero value smaller than the selling price. Transactions not meeting this condition will be ignored in profit calculations.
Feature
- Profit optimization as business objective, optimizing all product listings towards profit.
- Profit as an included aspect in various statistics.
Images¶
The recommendations listed below regards image management and image creation. These can favorably be considered when taking new pictures of products as well.
Missing images¶
If an image is missing, do not provide an actual image of something indicating a missing image, e.g. let the provided image URL point to a 404. Images that are missing will be handled by the image analysis, and custom images for indication of missing images should be handled through a client side action.
Feature
Products with broken imagery are automatically buried.
Multiple product images¶
Supply all available images for each product and differentiate images by supplying image tags. Image tags will facilitate merchandisers to differentiate between image types such as primary, full, front, back, side, and detail images.
Feature
- Providing multiple images enables product card features in the Experience app such selecting the order in image galleries.
- Providing multiple enables automatic image fallback for broken or missing images.
Multiple image resolutions¶
Supply all relevant resolutions of each image. It is highly recommended to supply images in resolutions suitable for thumbnails, mobile listings, as well as for desktop listings. Even if you plan to resize the images dynamically, Elevate needs high resolutions for image analysis and low/mid resolution (larger than 100 and smaller than 1000 pixels wide) for rendering products in the app. Widths can be provided if they are known otherwise widths will appear after a while when our image analyzer has run.
Image type separation¶
For retailers with highly structured image assets, advanced image imports including image type information (especially for cutouts) is recommended. A cutout image is an isolated image of solely the product, typically with a single color background.
Feature
Performance gains with a faster color analysis of new collections as cutout images can be analyzed significantly faster than other image types.
Cutout guidelines¶
Cutout images refers to images where only the product is represented, e.g. without a model or other additional products. If there are multiple cutout images for each product to choose from, select the ones that best adheres to the recommendations below.
- Portraits the entire product as accurately as possible.
- Avoid sharp edges in the background.
- Avoid shadows on the products.
- Homogeneous background colors for all products. Images are however not required to all have the same background color.
Feature
- Product colors are automatically extracted and allows Elevate to retrieve a very complex view of the colors, with detailed nuances as well as the color distribution. This in turn enables a very powerful color search, color filtering, and precise color swatches.
- Cutout imagery provides the fastest and often the most accurate color distributions.
Consistent image ratio¶
All images provided should ideally have the exact same ratio. The height of the rendered product cards will be the same to avoid alignment issues, meaning that inconsistent image ratios will lead to clipping.
Clean imagery¶
Keep the images clean and separate from functionality and information that belongs elsewhere. Avoid overlays, badges, padding, etc. built into the images.
Colors¶
Providing metallic colors¶
Provide metallic properties in colorInitial
for products that are Gold
or Silver
. Metallic properties cannot be found through color analysis and must be tagged manually.
Feature
Correct presentation of products with metallic properties.
Providing initial colors¶
For retailers with very high product turnover, manually setting colors ensures products have colors before analysis is completed or if automatic analysis is unsatisfactory.
Colors must be provided as exactly Gold
, Silver
, Multi
, or a valid RGB hex code. When used, always strive to provide as detailed nuances as possible. Multiple colors can be provided and will be considered to be an evenly distributed color representation.
Feature
Enables color search, filtering and swatches before the automatic color analysis is completed.
Product titles¶
Do not include the brand (or other redundant information) in the product title. Brands can be presented and styled separately in product cards. Product titles should ideally be kept short as long titles may be clipped for mobile visitors.
Displaying the color of a product in the product title is often not necessary as it is displayed in the image. One exception where it is useful is if the retailer has a set of specialized custom colors that are well known among the visitors. In this case, place the color name at the end of the title. Placing the color in another position will result in that the title flickers when the visitor hovers over the different colors.
Clara T-shirt - spirit green
Clara T-shirt - dreamy pink
Clara T-shirt - real teal
Categories and ontology¶
Use the ontology
attribute to define a product’s place in a product-based categorization hierarchy. The category
attribute can include multiple categorizations of the product and does not have to be strictly product-based. Each level in the hierarchy is defined using the greater-than sign >
.
To ensure stable product selections, it is highly recommended to include category IDs in the product data with translations.
Product data
"ontology": "Accessories > Bags > Backpacks"
"category" : ["c1", "c2"]
Translations
{"replace": {"translation": {"locale": "en-GB", "attribute": "category", "id": "c1", "value": "Accessories > Bags > Backpacks"}}}
{"replace": {"translation": {"locale": "en-GB", "attribute": "category", "id": "c2", "value": "Outlet"}}}
Feature
- Both ontology and category attributes help Elevate accurately classify products, enhancing search, recommendations, and overall relevance.
- The category attribute can be used to make product selections (to e.g. define pages in Elevate Apps) utilising the hierarchical information.
- The category attribute is required for all retail media related features.
Custom attributes¶
Custom attributes enhance search, enable facets and filters for both search and navigation, and complement predefined attributes as the foundation for creating product selections. There are several types of custom attributes, including customLabels
, customLengths
, customNumbers
and customJson
.
- Choose the custom attribute type that best matches the available data.
- Provide any non-predefined data that is useful for search, facets, filters, or product selections as custom attributes.
- Useful
customLabels
could for example includeseason
,style
andmaterial
. - Useful
customLengths
could for example include packaging size information. - Useful
customNumbers
could for example include the number of items for packs of items.
- Useful
- Use the
customJson
when you have purely presentational data that is unsuitable for search and filters. - Send as structured data when possible. "A short summer party dress" can be used in more ways when also provided as additional separate attributes rather than only in a single description, e.g.
dressLength: short
,occasion: party
andseason: summer
. - Provide as high granularity as possible of available values. Supply both
Pants
andCapri pants
orLeggings
as opposed to onlyPants
when available. - Normalize values. Avoid having "Long dress", "long dress", and "Long dresses" in different products, when describing the same property.
- Custom attribute names should be in English and consistently named across markets.
- The name of the custom attribute is not considered for search or classification. Therefore, it's important to avoid attributes like
windproof
with the valuetrue
. Instead, use an attribute calledfeatures
with the valuewindproof
. - Use translations to ensure stable product selections.
Translations¶
Translations should be used whenever possible to ensure stable product selections. A translation connects an ID to a label for a given locale, allowing label changes without disrupting product selections.
Info
A product selection is a defined set of products. Product selections are used in boost, bury, and pages nodes and are often rule-based. The rules consist of including or excluding products where an attribute has a specific value.
For example, if a product belongs to the category "Cell phones" and the category name changes to "Smartphones", any product selection relying on the label "Cell phones" will no longer include those products. By using IDs in the product feed with localized labels supplied as translations, you ensure stability.
Feature
- Stable product selections during label changes.
- Cross market (locale) product selections are enabled.
Departments¶
Make sure department values in products are stable and not changed often. Common department values for fashion are Women
, Men
, and Kids
. For a single department retailer, all products should have the same department value, or consider switching to well-defined categories.
Using departments is optional. If you don't have departments, use categories instead.
Content¶
Provide content items for vital pages of high client interest. Typical pages recommended to include are: Returns, Shipping, Delivery, Contact, and Stores. Use the Search phrase report in the Experience app to keep track of popular search phrases.
Using product list templates¶
While only tangentially related to the data feed, it is highly recommended to use a template to control which imported attributes Elevate should return in requests to the Storefront API. This is useful to reduce response sizes, or when you wish to include attributes that would not be included by default, such as custom attributes.