Criteo Feed Guide¶
A guide that contains information about product feed based on the Criteo Product Feed specification.
Overview¶
Product feed is a file that contains information about all products on your site. Criteo uses this information to build your dynamic product banners.
This guide will help you to provide information on what is the minimum fields required to build a product feed for your Criteo campaign.
Supported Formats¶
To make sure that Criteo can retrieve your product feed, please use one of the formats below. You can download feed examples in the links provided in the table.
Feed Format | Detail | Example |
---|---|---|
TSV | This format is based on Tab-separated value. Headers must be delcared in the first row of the file. Field names can contain spaces or underscores (e.g. image_link or image link) | Feed example |
CSV | This format is based on Comma-separated value. Headers must be declared in the first row of the file. Field names can contain spaces or underscores (e.g. image_link or image link) | Feed example |
XML | This format should conform the basics of the XML structure. Products are represented by a set of XML nodes. The product list must start by <?xml declaration tag. | Feed example |
Required Fields¶
Product information should not contain HTML tags or style tags.
Field | Detail | Requirements | Example |
---|---|---|---|
id | Id is a unique product identifier that represents one, and only one, product. Once an id is assigned to a product and imported, the id may not be used for a different product, nor can the id for a particular product change. If you have item_group_id also populated, populate id with the child ID/SKU | Character Requirements: Id must only contain ASCII characters, and must not contain quotation marks Limit: 240 Type: String |
Example:: abc123-black-7.5 |
title | Title is the product’s name, typically as it is displayed on the product’s detail page. This will be used as the main text descriptor in the banners for a given product | Character Requirements: Title must start with a letter or number Limit: 150 Type: String |
Example: Working Boots – Size 7.5 |
description | Description is a short piece of text that gives more information about a product in addition to its name. Because of the design of the banners, shorter descriptions (under 50 characters) are more likely to fit in Criteo’s formats and layouts, however, not all formats and layouts will have a description |
Character Requirements: Description must start with a letter or number. Remove all HTML tags from this field, including style, embed, object, and anchor tags Limit: 5000 Type: String |
Example: Excellent for daily use |
link | Link is the product’s dedicated detail page. Link is usually, although not necessarily unique to a given product. The product information on this URL should match the corresponding information provided in your feed. Please specify the protocol (http:// or https://) for all URLs If you are running Criteo Predictive Search, the domain name in this field must match the domain claimed in Google Merchant Center |
Character Requirements: Link must start with the protocol (http:// or https://) followed by the full URL of the product detail page. All symbols must be encoded. Eg. $ must be replaced with %24 Limit: 1024 Type: String |
Example: http://www.example.com/product/working-boots |
image_link | Image_link is a URL that specifies a file path to a given product’s image. Image_link will be used to display the product’s image in the banners. Ideally, images should be at least 800x800 pixels and weigh under 16MB. The image must have a Content-Type header specified, either image/png, image/gif or image/jpeg. If you restrict your images from being accessible via cURL, please whitelist our user-agent so we may display your images in the Criteo banners: curl/7.15+ (x64-criteo) libcurl/7.15+ OpenSSL zlib libidn | Character Requirements: Image_link must start with http:// or https:// followed by the full URL of the product’s image. All symbols must be encoded. Eg. $ must be replaced with %24 Limit: 2000 Type: String |
Example: http://www.example.com/product/image/working-boots.png |
availability | Availability indicates if the product may be purchased on the site. You may populate availability with 3 possible values: preorder (item is not currently shipping, but still may be purchased), out of stock (item is not shipping and you are not accepting orders for this item), and in stock (item is shipping and orders may be placed for this item). Items marked as out of stock will be excluded from being shown in the banners | Character Requirements: Availability must be populated with one of the following three values: - preorder - out of stock - in stock Limit: 16 Type: String |
Example: in stock |
price | Price the manufacturer recommends the product is to be sold for. If a given product is “on sale”, price field would be populated with the higher price. Price should be in the same currency as the site. Only populate price with the numeric value using a period (.) as the decimal separator and no thousands separator | Character Requirements: The decimal separator must be a period (.) with no thousands separator Limit: 14 Type: String |
Example: 1299.99 |
sale_price | Sale_price is the price at which the product is available for purchase on the site, if a given product is ‘on sale’, the sale_price would be populated with the lower price. Sale_price should be in the same currency as the site. Only populate sale_price with the numeric price using a period (.) as the decimal separator and no thousands separator. | Character Requirements: The decimal separator must be a period (.) with no thousands separator Limit: 14 Type: String |
Example: 1099.99 |
google_product_category | Category level attributes indicate the category of the product being submitted, according to the Google product taxonomy. If your product can be linked to multiple categories, we only want the one that is the most relevant. | Character Requirements: We accept both IDs and full category path Limit: 500 Type: String |
Example: Women’s > Shoes > Working Boots OR 2271 |
product_type | Product_type is a category (or list of categories) to which the product belongs. Product_type field lists your merchandising category, or set of merchandising categories for this product. It must match your website categories. Each level in the hierarchy needs to be delimited by " > ". If a product is available in multiple categories, please send the different categories as a comma (,) delimited with the primary category first. product_type is case-sensitive, so if you use women’s for one product and Women’s for another, Criteo will interpret these as two different categories | Character Requirements: Product_type must start with a letter or number, and can only contain ASCII characters. The delimiter between categories must be > (> for XML feeds). We only support the full category path. If a product is available in multiple categories, please send the different categories as comma (,) delimited with the primary category first. We do not accept the categories ID of the path. IDs must be filled in the product_type_key field Limit: 500 Type: String |
Example: Single: Computing > Keyboards and Mice > Mice > Wireless Mice Multiple: Computing > Keyboards and Mice > Mice > Wireless Mice, Gifts > For Dad > Mice |
brand | The brand indicates the product brand’s name. Some products don’t have a clear brand associated. In this case this info doesn’t need to be provided. | Character Requirements: The name must start with either a letter or number, and can only contain ASCII characters. Remove all HTML tags from this field, including style tags. Limit: 70 Type: String |
Example: My Brand |
gtin | Global Trade Item Number (GTIN) is a unique product identifier used to identify a product, a service, or an item in the global marketplace. GTIN includes: - GTIN-12 (UPC-A): this is a 12-digit number used primarily in North America. - GTIN-8 (EAN/UCC-8): this is an 8-digit number used predominately outside of North America. - GTIN-13 (EAN/UCC-13): this is a 13-digit number used predominately outside of North America. - GTIN-14 (EAN/UCC-14 or ITF-14): this is a 14-digit number used to identify trade items at various packaging levels. |
Character Requirements: The value must be a 8-, 12-, 13-, or 14-digit number (UPC, EAN, JAN, or ISBN). Limit: 50 Type: String |
Example: 0001234560012 |
mpn | Manufacturer Part Number (MPN) is the number that uniquely identifies the product to its manufacturer | Limit: 70 Type: String |
Example: 4060882 |
Upload¶
Criteo can retrieve the product feed using one of the following protocols
- HTTP or HTTPS
- FTP (File Transfer Protocol)
- Criteo FTP Server
You can upload your finalized product feed to our Criteo FTP server. To do so, please refer to the Criteo FTP guide here