Available for projects & agency overflow · Quick reply, from the person who does the work

Setting up a product feed for Pinterest

A Pinterest feed uses an attribute structure close to the Google Merchant Center specification, as CSV, TSV, XML or through a direct integration offered by Shopify, WooCommerce and other platforms. Three points differ clearly from Google and explain most of the rejections I fix: price formatting, accepted availability values, and refresh frequency.

Describe my issue Send a message

The situations I handle

  • Products rejected in the Pinterest catalogue without knowing if the file format is at fault
  • A price rejected even though it works fine in the same site’s Google feed
  • A free or pending-price product sent with a price of 0
  • A custom availability value not recognised by Pinterest
  • Unsure whether to use direct integration (Shopify, WooCommerce) or a manually hosted CSV/XML feed
  • Needing a faster refresh than standard for a fast-turnover catalogue

How I set up the Pinterest feed

  1. Choosing the format or integration

    I use either a CSV, TSV or XML file hosted and refreshed automatically, or a direct integration when the platform offers it natively, particularly on Shopify or WooCommerce, avoiding a separately maintained file.

  2. Reusing the Google-close attributes

    I start from the same attributes as a well-built Google feed, id, title, description, link, image_link, price, availability, condition, brand, since the structure is close to a large extent.

  3. Bringing the price into compliance

    I check every price carries the ISO-4217 currency code whenever the currency isn’t the dollar, and make sure no product is sent with a price of 0, a value Pinterest rejects.

  4. Limiting availability values

    I make sure the availability field only holds one of the three values Pinterest accepts: in stock, out of stock or preorder, with no other variant used on Google or Meta.

  5. Setting the refresh frequency

    I configure a daily refresh by default, and tighten it up to every 6 hours on request when the catalogue justifies it, for instance stock that changes several times a day.

What sets Pinterest apart from Google

The closeness between the Google and Pinterest specifications often means deriving a Pinterest feed from an existing Google feed rather than starting from scratch. Three differences deserve systematic checking:

  • Price format: Pinterest requires an explicit ISO-4217 currency code whenever the currency isn’t the dollar, and rejects any price of 0.
  • Availability: only three values are accepted, in stock, out of stock, preorder, against sometimes broader variants tolerated elsewhere.
  • Refresh: the default frequency is 24 hours, but Pinterest allows tightening it up to 6 hours on request.
flux-pinterest.csv
id,title,availability,price
REF-0001,Exemple de produit,in stock,29.90 EUR

Related pages

Describe your need in one minute

A few targeted questions so I can reply with an estimate rather than another questionnaire.

outil
api
sens
frequence (facultatif)
Please provide an email or a phone number so I can get back to you.

Please provide an email or a phone number so I can get back to you.

Frequently asked questions

Can I reuse my Google feed for Pinterest?
Largely yes, the attribute structure is close. You still need to check the price format, the availability values and the refresh frequency, which follow Pinterest’s own rules.
Why is my price rejected on Pinterest when it works on Google?
The most common reason is a missing ISO-4217 currency code when the currency isn’t the dollar, or a price of 0, which Pinterest systematically rejects.
Which availability values does Pinterest accept?
Only in stock, out of stock or preorder. Any other value isn’t recognised.
How often does the Pinterest feed refresh?
Every 24 hours by default. On request, that can be tightened up to every 6 hours for a catalogue that needs it.
Do I need a CSV file or a direct integration?
Both are possible. On Shopify or WooCommerce, a direct integration avoids maintaining a separate file when the platform offers it.