Catalog Requirements
The following sections outline the requirements for setting up catalogs in Reddit Ads.
Bulk import catalogs
- Specifications
- A UTF-8 encoded CSV file with all products in the catalog. TSV, RSS XML, ATOM, and compressed files aren't supported.
- File size may be up to 200 MB.
- Formatting
- Must contain a title row.
- Although double quotation marks (") aren't required for text qualifiers, we recommend using them to prevent misinterpreted data. Single quotation marks will be interpreted as part of the text.
- If your value includes double quotation marks (“):
- Double the quotes (“”)
- Wrap the entire title with another pair of double quotes
- Can only contain the following delimiters: (
,
), (;
), (|
), and (\t
) - Currency should be formatted as a number followed by the ISO 4217 currency code. For example,
123.45 USD
and”123.45 USD”
are valid. - If UTM parameters or third-party tags must be used, they should be added to the end of the product URL and included in the Link column.
- Updating: The catalog can be manually refreshed by uploading a new CSV file. This will update ads with the latest product data.
"""T-shirt"" by Brand XYZ"
Data feeds catalogs
- Specifications
- Supported URLs: A HTTPS, FTP, or SFTP URL for a product feed from a feed partner or hosted elsewhere
Never include credentials in the URL. Use Catalog Manager fields to pass username and password if required.
- Supported files: CSV, Google Sheets, RSS 2.0 XML, or compressed files. TSV and ATOM XML files aren't supported.
- Supported URLs: A HTTPS, FTP, or SFTP URL for a product feed from a feed partner or hosted elsewhere
- Formatting
- The link should include the file name but not the credentials:
https://reddit.com/best_catalog.csv
sftp://reddit.com/best_catalog.csv
ftp://reddit.com/best_catalog.csv
- If UTM parameters or third-party tags must be used, they should be added directly into the feed.
- The link should include the file name but not the credentials:
- Updating: The catalog automatically refreshes based on your sync schedule. This will automatically update ads on refresh. Since you won't be notified when a refresh occurs, we recommend manually checking your catalog regularly.
Required fields
Products in a catalog must contain data in these fields. You'll receive an error if products are missing this data.
Values for all fields must be at least one character in length.
Unless otherwise stated, these fields aren't visible to users.
Recommended fields
We strongly recommend including data for these product fields to enhance data quality and optimize performance.
Values for all fields must be at least one character in length.
Unless otherwise stated, these fields aren't visible to users.
Field | Description | Requirements & Recommendations |
---|---|---|
google_product_category | The Google product category. |
|
item_group_id | A group of products with different variations, such as size, color, and quantities. |
|
product_type | Retailer-defined product categorization. | 2,000 characters maximum |
gtin | Product's Global Trade Item Number (GTIN). |
|
mpn | Product's manufacturer part number (MPN). |
|
mobile_link | URL of the product targeted for mobile clients. | |
additional_image_links | Additional images of the product. |
|
platform_specific_link | URL of the product for a specific platform. | Must be a JSON object containing an iOS and Android URL. Valid
Invalid
|
sale_price | The sale price of the product. This is displayed to users with the striked-out original price if sale_price is lower than price. |
|
sale_price_effective_date | The date range when the sale price applies. When this value is set, sale_price will only be effective during the specified period. If this value isn't set, sale_price will always be effective. |
|
cost_of_goods_sold | Costs associated with the product sale as defined by the merchant's accounting convention. | Must be the same as price or sale_price (whichever is lower) |
custom_label_0 , custom_label_1 , custom_label_2 , custom_label_3 , custom_label_4 | Custom tags assigned to a product, such as Winter sale, Heavy duty, or Summer 2022 collection. | 200 characters maximum |
custom_number_0 , custom_number_1 , custom_number_2 , custom_number_3 , custom_number_4 | Custom numeric values assigned to a product. Custom numbers can be used to create filters with numeric values, such as filters for product set creation or search. | 200 characters maximum |
brand | Product's brand name. | 2,000 characters maximum |
color | The color of the product. | 200 characters maximum |
gender | The gender of the product. |
|
average_review_rating | The average rating of the product. | A numeric value |
number_of_ratings | The number of ratings for the product. | 200 characters maximum |
condition | Condition of the product at the time of sale. |
|
size | The product's size. | 200 characters maximum |
size_type | Product's size type, like regular, tall, or big. | Must be set to regular , petite , plus , tall , big , or maternity |
material | The product's fabric or material. | 200 characters maximum |
pattern | Product's pattern or graphic print. | 200 characters maximum |
availability | The availability of the product. | Must be set to in_stock , out_of_stock , preorder , or backorder . To ensure out-of-stock items are not selected, create a product set filtered on IN_STOCK |
expiration_date | Date when the product stops showing. |
|
age_group | The age group of the product. | Must be set to either newborn , infant , toddler , kids , or adult |