As a merchant, you might want to upload your products to Pinterest as product Pins. Product Pins are specially formatted to let people who are browsing on Pinterest know that they're shoppable. They contain a product title and description, as well as pricing and availability info.
Add your retail catalogue’s data source to Pinterest to upload many of your products, as product Pins, at once. Then, you can promote them across Pinterest as shopping ads. You have the option of providing the URL link for your hosted data source, or uploading your data source manually.
Before you add your retail catalogue, you’ll need to:
If you do not meet the requirements above,
Retail catalogues work in accordance with how you choose to add your data source, from which we can access your retail catalogue.
If you’re providing the URL link for your hosted data source, we’ll access your data source daily so we can dynamically create product Pins for each product in your retail catalogue. Make sure that your updated data source is available every day so your product details are up to date. You can even schedule your data ingestion in advance.
If you’re uploading your data source manually, we’ll access your data source when it’s being uploaded, and every time you upload an updated one we can create product Pins, or update the metadata for existing Pins, for each product in your retail catalogue.
We’ll alert you to any errors. It's important to review and fix them as quickly as possible to make sure that your product info is accurate and up to date. An error can mean that your whole feed does not update, some items on your feed do not update, or you need to make some formatting changes.
We can process up to 20 million products per retail catalogue. If you have more than 20 million products, please
This is only relevant if you’re hosting your data source. If you’re uploading your data source manually, you can skip this section.
You’ll need to host your own data source on an FTP/SFTP/WebDAV server or with an HTTP/HTTPS direct-download link. This needs to be accessible by a user-agent, and cannot require IP or SSH key whitelisting. If you're using a direct download link, there cannot be any extra navigation required for us to access the file.
We support the following formats:
Tab separated (TSV) | ( |
Comma separated (CSV) | ( |
XML (RSS 2.0, ATOM 1.0) | ( |
Note: We accept compressed files (.zip, .giz, .gz, .bz2 and others), but we currently do not support encrypted, password-protected compressed files, Google Drive files or Dropbox files.
Your retail catalogue needs to include the following fields, formatted exactly as you see them. If they’re missing, or formatted incorrectly, your entire retail catalogue will fail ingestion.
Column name | Description | Syntax/supported values | Example |
---|---|---|---|
id |
Unique ID that represents the product. |
Maximum of 127 characters. | DS0294-L |
title | Name of the product (same name as the product from the landing page, including variant details, such as colour and size). | Maximum of 500 characters. | Women’s denim shirt, large |
description | Description of the product. | Maximum of 10,000 characters in plain text (not HTML). | Casual fit denim shirt made with the finest-quality Japanese denim |
link | Landing page for the product (needs to lead directly to the same product and showcase the same data) |
String URL. Maximum of 511 characters and URL must start with http:// (we do not recommend hardwalls). |
|
image_link |
Link to the main product image (at least 75x75 pixels, accessible by our user-agent and no template or placeholder images). If you change the image later, you’ll need to use a different link or the image will not update. |
String URL. Maximum of 2,000 characters, starting with http:// or https:// (encode or remove commas). Recommended: Enclosing the string with quotes. |
|
price |
Price of the product (should reflect the true cost of the product and include currency in ISO-4217 if it's not US dollars, otherwise we’ll default to US dollars). |
<numeric> <ISO 4217> Currency can come before or after the numeric price value, with or without space, and follow the standard ISO-4217 code. Do not use 0 values or currency symbols. |
24.99 USD 24.99USD 24,99 USD 24,99USD 24.99 24,99 GBP24.99 GBP 24.99 GBP24,99 GBP 24,99 |
availability | Availability of the product. |
Should be one of the following values: in stock |
in stock |
item_group_id (only required when products have multiple variants) | Parent ID of the product. | Maximum of 127 characters. | DS0294 |
You can add optional fields to your retail catalogue to help us better map your products to people. The more information you provide, the more relevant your Pins will be to the people who see them.
Column name | Description | Syntax/supported values | Example |
---|---|---|---|
product_type | Categorisation of your product based on your custom product taxonomy. |
Maximum of five subcategories, with a maximum of 1,000 characters must be separated by > wrapped by spaces (we do not recognise other delimiters such as the comma or pipe). |
Clothing > Women’s > Shirts > Denim |
additional_image_link |
Links to up to 10 additional images of your product (at least 75x75 pixels, accessible by our user-agent and no template or placeholder images). We'll create a new Pin for every additional image link. If you change the image later, you’ll need to use a different link or the image will not update. |
Maximum of 2,000 characters each, starting with http:// or https:// (encode or remove commas). Recommended: Enclosing the string with quotes. |
" |
mobile_link | Mobile-optimised version of your landing page. | Needs to start with http:// or https:// | |
sale_price |
Discounted price of the product (should be lower than the price and include currency in ISO-4217 if it's not US dollars, otherwise we’ll default to US dollars) If provided, the sale price will be considered the current price of the item. |
<numeric> <ISO 4217> Currency can come before or after the numeric price value, with or without space, and follow the standard ISO-4217 code. Do not use 0 values or currency symbols. |
14.99 USD 14.99USD 14,99 USD 14,99USD 14.99 14,99 GBP 14.99 GBP14.99 GBP 14,99 GBP14,99 |
average_review_rating | Average amount of reviews for the product. |
<numeric> Between 1 and 5 |
5 |
number_of_ratings | Number of ratings for the product. | <numeric> | 2 |
number_of_reviews | Number of reviews for the product. | <numeric> | 4 |
description_html |
HTML description for the product. Recommended: Use this if your description is longer than 200 characters. If this field is provided, we’ll use it instead of the required description field. |
HTML formatting | <body> <h1>My Product</h1> <p>Buy Now</p> </body> |
Column name | Description | Syntax/supported values | Example |
---|---|---|---|
item_group_id | Parent ID of the product. | Maximum of 127 characters | DS0294 |
brand |
Brand of the product | Maximum of 100 characters | Josie’s Denim |
gtin | Unique universal product identifier | Numeric |
3234567890126 |
mpn | Manufacturer part number of the product |
Maximum of 70 alphanumeric characters |
"mpn": "PI12345NTEREST" |
Column name | Description | Syntax/supported values | Example |
---|---|---|---|
colour |
Primary colour of the product. | Maximum of 30 characters. | blue |
gender | Gender associated with the product. | Should be one of the following values: male female unisex |
male |
age_group | Age associated with the product. |
Should be one of the following values: newborn |
newborn |
material | Material used to make the product. | Maximum of 30 characters. | cotton |
pattern | Pattern used for the product. | Maximum of 30 characters. | plaid |
size | Size of the product. | Maximum of 30 characters. | M |
size_type | Additional description for the size of the product. |
Should be one of the following values: regular |
regular |
size_system | The country’s sizing system in which you’re submitting your product. | Country code. |
US |
alt_text | Description of what appears in the main images of the product. | One or more alt text values, separated by commas. The number of alt text values should match the number of images in your image_link field. Commas should be encoded as ,, or removed if they’re part of the alt text. Commas should be used to separate multiple alt texts. | A light blue crochet baby hat with tassels |
variant_names | Options for this variant of the product (people on Pinterest will see these options next to your Pin and can select the one they want). | Texts separated by commas listed in the order you want them displayed. | Colour,Size |
variant_values | Value options for this variant of the product (people on Pinterest will see these options next to your Pin and can select the one they want). |
Texts separated by commas listed in the order you want them displayed. Should be consistent with the order of the variant_names field. |
Red,Small |
adult | Whether the product is of an adult nature or not. Adult products will not be shown on Pinterest. |
Should be one of the following values: true |
false |
Column name | Description | Syntax/supported values | Example |
---|---|---|---|
tax | Tax details for the product |
Consists of one group of up to four elements: country, region, rate (all required) and tax_ship (optional). Colons, even for blank values, are required. country:region:rate(required):tax_ship |
US:1025433:6.00:y |
shipping | Shipping details for the product |
Consists of one group of up to four elements: country, region, service (all optional) and price (required). Colons, even for blank values, are required. country:region:service:price(required) |
US::Express:13.12 |
shipping_weight |
Weight of the product. |
<numeric> <metric> Make sure there’s a space between the numeric string and the metric. |
5 lbs |
shipping_width | Width of the package needed to ship the product. |
<numeric> <metric> Make sure there’s a space between the numeric string and the metric. |
16 in |
shipping_height | Height of the package needed to ship the product. |
<numeric> <metric> Make sure there’s a space between the numeric string and the metric. |
12 in |
free_shipping_label |
Whether you provide free shipping for the product or not. If you do, enter 0 in the free_shipping_limit field. If you only offer free shipping after someone spends a specific amount, enter that amount in the free_shipping_limit field. |
Should be one of the following values: true |
true |
free_shipping_limit | Minimum order purchase necessary to obtain free shipping of the product. |
<numeric> <ISO 4217> |
35 USD |
Column name | Description | Syntax/supported values | Example |
---|---|---|---|
custom_label_0 | Custom grouping of products (up to five) | Maximum of 200 characters |
Summer promotion |
custom_label_1 | Custom grouping of products (up to five) | Maximum of 200 characters | Bestsellers |
Column name | Description | Syntax/supported values | Example |
---|---|---|---|
ad_link | Link that can be used to track traffic coming from Pinterest shopping ads. |
String URL. Should send full URL including tracking, not just tracking parameters. We do not currently support impression tracking. Must begin with http:// or https:// |
|
condition | Condition of the product. |
Should be one of the following values: new |
new |
google_product_category | Categorisation of the product based on the standardised Google Product Taxonomy. |
Both text values and numeric codes are accepted. |
Clothing & accessories > Clothing > Shirts & tops 21 |
Make sure that you follow our
Learn how to