Product feed structure

Before you can sync a product feed to Experience OS, make sure your feed structure complies with the content requirements.

The product feed must include the basic information about your product (SKU, group ID, price, image, URL, in stock or not, and its categories). You can see the list of mandatory attributes in the following table, with detailed instructions (format, limitations, and so on).

SKUs must be unique, or the feed won't sync.

🚧

Note:

If you change the group ID structure or category structure between syncs, the feed might reset, causing all previous recommendation data to be lost.

Mandatory feed columns:

Column (case sensitive)DescriptionFormatExample
skuUnique product identifier. Note: SKUs cannot contain spaces or the string "//"String
(up to 256 characters, no spaces)
135
product_type
Optional but highly recommended
The type of item:
Offer, Product, or Article

Financial Institutions only.
StringOffer
group_idIdentifies a group of products that differ in some product attributes.String
(up to 256 characters, no spaces)
22
nameProduct nameString
(up to 1000 characters)
t_shirt
urlURL to the product details page (must be a valid URL, starting with HTTP/HTTPS)String
(up to 1000 characters)
http://mystore.com/135
pricePrice of the product (must be a number)Float
(up to 1000 characters)
9.50
in_stockIndication whether the product is in stock (noted by ‘true/false’)Boolean
(must be lower case)
true
image_urlThe URL to the product image (must be a valid URL, starting with HTTP/HTTPS)String
(up to 1000 characters)
http://mystore.co</span<m/135.png
categoriesThe categories associated with the product, from general to specificStrings
(separated by pipes with no spaces, up to 1,000 characters)
Sports|Equipment|Weights
keywords
Optional but highly recommended
Any additional information describing the product, separated by pipes. Used for our machine learning and affinity algorithms. Because this column is optional, blank values will not trigger errors or warnings.Strings
(separated by pipes with no spaces, up to 1,000 characters)
sale_item|seasonal

🚧

Missing mandatory values:

If a product is missing a value in a mandatory column, it isn't synced. If more than 10% of products have an empty value in one of the mandatory columns, the entire sync fails.

👍

Multi-language support:

See the multi-language support page to learn more about creating a feed for multi-language sites or apps.

See also the included subpages for custom columns.