Categories
Digital Marketing Facebook Ads Shopify

Fix Missing Fields in Shopify’s Facebook Product Feed

Shopify’s current Facebook integration is missing some key product data. Here is how to fix your feed.

Last Update: October 19, 2021

If you use the Facebook Channel on your Shopify store, you will notice that some product attributes are missing in the product catalog:

  • Google Product Category fixed!
  • SEO Description
  • Gender
  • Material
  • Additional Images

Below is the solution to add these missing details. This will give you finer control over your Facebook Product Sets and will let you create richer dynamic ads with multiple product images.

Pre-requisites

Before we start, make sure all of the following are done:

  1. Install the Google Sales Channel
    The script leverages some of the metafields that are created on by the Google Sales Channel
  2. Install the Facebook Sales Channel
  3. Setup Empty Field Rules
    This is not actually a pre-requisite, but it’s a good backup in case things break down with your feed. This sets some default values for fields such as condition and availability.
  1. Go to Facebook Business Manager and then
    Commerce Manager > Catalog > Data Sources
  2. Click on your data feed and go to Settings
  3. Scroll down to Data Feed Rules and click on Add Rules > Set Default Values
  4. Create default values for age_group, gender, availability, condition, material, and any other fields that make sense for your business.

Step 1
Create the Facebook Product Feed Template

To create the Facebook product update feed, we will use a “hack” to transform a standard Shopify Collection page into and XML data feed:

  • In the Shopify admin, go to
    Online Store > Themes > Action > Edit Code
  • Under Templates, choose Add a new Template
  • Choose collection from the drop down and name your template facebook-feed-template

Paste the code below into your newly created template file and click Save.

{% layout none %}<?xml version="1.0"?>
<rss xmlns:g="http://base.google.com/ns/1.0" version="2.0">
{%- paginate collection.products by 1000 -%}
{%- assign useSEOdescription = true -%}
{%- assign additionalImagesForVariants = false -%}
{%- assign includeOutOfStock = false -%}
{%- assign filterVariantImagesByColor = false -%}
{% comment %}
This template is used to add additional information to the Facebook product catalog
Documentation: https://business.czarto.com/2019/12/11/update-your-shopify-facebook-product-feed-with-missing-attributes/

<comment:title>{{ product.title}} {{variant.title}}</comment:title>
{% endcomment %}
<channel>
<title>{{ shop.name }} {{ collection.title | replace: '&', '&amp;' }}</title>
<link>{{ shop.url }}</link>
<description>{{ collection.description | strip_html }}</description>
{% for product in collection.products %}
{%- assign Gender = product.metafields.mm-google-shopping.gender -%}
{%- assign AgeGroup = product.metafields.mm-google-shopping.age_group -%}
{%- assign Material = product.metafields.mm-google-shopping.material  -%}
{%- assign Color = "" -%}

{%- if product.variants.size > 0 -%}
{%- for variant in product.variants -%}
{%- if includeOutOfStock or variant.available -%}
{%- for option in product.options -%}
{%- if option == 'Color' -%}{% capture Color %}{{ variant.options[forloop.index0] }}{% endcapture %}{%- endif -%}
{%- endfor -%}

{% assign additional_images = product.images %}
{% if filterVariantImagesByColor %}{% assign additional_images = product.images | where: "alt", Color | sort: 'attached_to_variant' | reverse%}{% endif %}

<item>
<g:id>{{ variant.id }}</g:id>
<g:brand>{{ product.vendor }}</g:brand>
{% if useSEOdescription and product.metafields.global.description_tag.size > 0 %}<g:description>{{ product.metafields.global.description_tag | strip_html | strip_newlines | replace: '&', '&amp;' }}</g:description>{% endif %}
<g:product_type>{{ product.type | replace: '&', '&amp;' }}</g:product_type>
<g:mpn>{{ variant.sku }}</g:mpn>
<g:item_group_id>{{ product.id }}</g:item_group_id>
<g:content_id>{{ variant.id }}</g:content_id>
<g:material>{{ Material }}</g:material>
<g:gender>{{ Gender }}</g:gender>
<g:age_group>{{ AgeGroup }}</g:age_group>
{% if additionalImagesForVariants %}
{% if additional_images.size > 1 %}{%- for image in additional_images offset:1 limit:10 -%}
<g:additional_image_link>https:{{ image.src | product_img_url: 'master' }}</g:additional_image_link>
{% endfor %}{% endif %}
{% endif %}
</item>
{%- endif -%}
{% endfor %}
{%- else -%}

<item>
<g:id>{{ product.id }}</g:id>   
<g:brand>{{ product.vendor }}</g:brand>
{% if useSEOdescription and product.metafields.global.description_tag.size > 0 %}<description>{{ product.metafields.global.description_tag | strip_html | strip_newlines | replace: '&', '&amp;' }}</description>{% endif %} 
<g:product_type>{{ product.type | replace: '&', '&amp;' }}</g:product_type>
<g:item_group_id>{{ product.id }}</g:item_group_id>
<g:material>{{ Material }}</g:material>
<g:gender>{{ Gender }}</g:gender>
<g:age_group>{{ AgeGroup }}</g:age_group>
{% if product.images.size > 1 %}{%- for image in product.images offset:1 limit:10 -%}
<g:additional_image_link>https:{{ image.src | product_img_url: 'master' }}</g:additional_image_link>
{% endfor %}{% endif %}
</item>

{% endif %}
{% endfor %}
</channel>
</rss>
{% endpaginate %}

or download from Github

Although the script above will work as is, there are three items that you can configure:

useSEOdescription = true
Setting this to true will use your product’s SEO description. Setting to false will not upload any description (default Shopify feed will be used)

additionalImagesForVariants = false
Setting this to true will upload all your product’s additional images. If you use variants, all your variants will have the identical additional images (their primary image will be as-configured in Shopify)

filterVariantImagesByColor = false
Setting this to true will only upload additional images for a variant IF the ALT text of the images exactly match that variant’s color attribute.

Step 2
Select the Products to Send to Facebook

Now select which products will be included in your feed.

  • In Shopify Admin, go to
    Products > Collections > Create Collection
  • Enter a Title: “Facebook”
  • Add Products to the collection (either manually or using conditions). If you want to include all your products, then add a rule similar to “Inventory Stock is greater than 0”.
  • IMPORTANT!
    Assign the Facebook Feed Template to this collection.
    In the bottom right column of the page, you should see a section called Theme templates. Choose collection.facebook-feed-template otherwise none of this will work.
  • At the bottom of the page, click on Edit Website SEO and enter “facebook” as your collection url handle. (optional – but helps with remembering your feed url)
  • Save and Preview the collection. You should see unformatted text on the screen. This is your Facebook feed. Do a “View Source” in your browser to preview the XML data.
  • Copy the url of this page. It should look similar to https://www.yourstore.com/collections/facebook

Step 3
Upload your Product Feed to Facebook

  • Go to your Facebook Business Manager and go to Commerce Manager
  • Expand Catalogs in the left hand menu and select Data Sources
  • In the Supplementary Feeds section, click on Add supplementary feed
  • Click Upload Feed and choose Scheduled Feed
  • Paste in the feed url generated in Step 2 and click Next (leave Login Details blank)
  • Schedule your updates to occur daily or hourly. Turn off automatic updates (or try leaving this on — I’ve never tried it)
  • Select the data feed to update
  • Name your supplementary feed and click Upload
  • Wait for Facebook to finish fetching your feed

Done

Your products should now have the missing information added. You will probably want to repeat STEP 3 anytime you modify or add new products to your shop.

It’s just a matter of time before Shopify starts uploading the full data specs to Facebook, but until that time, this is the workaround!

Related Reading

93 replies on “Fix Missing Fields in Shopify’s Facebook Product Feed”

A product that is fully synchronized on the Shopify platform does not match the our Instagram Shop especially the variant images. In Meta, an image is displayed that does not match what should appear on Shopify’s end.

Like

Hi,

I’ve been looking everywhere for a solution to have the Instagram shop show all the product images for variants and came across this article, so first off, thank you.

My products are organized by collections and that’s how it also shows on my Instagram shop. Will creating this feed automatically update my products to show all images for variants while keeping it organized the way it is? I’m not sure if I’m misunderstanding it, but the way the instructions are laid out, it seems that your method is for shops with no collections and just showing all the products at once.

Like

Hi Alex, I have come across this article in hopes that this will fix my issue because FB support are useless!
I am using the Shopify data feed but images either aren’t pulling in at all (have had to manually upload them) or are only pulling through for some products.
I just want to check before I do these steps, it’s now May 2023, are those steps you have outlined still relevant as it seems this was about 2 years ago and can’t believe people are still having these issues!

Like

Hi Brooke — Yes, this is still relevant and is still useful. HOWEVER, it does not upload the primary product image, only the secondary images. So I’m not sure that it will fix your underlying problem.

You may need to completely delete your product catalog from Facebook, remove the channel from shopify, etc… And try to restart from a black state. (But this will force you to rebuild any catalog ads you may be running)

Like

Thanks Alex, you’re right. If it’s not fixing the main image it still won’t totally fix my issue then.
I did recently deactivate my shop from the shopify end within the fb sales channel but I don’t know how to delete the product catalogue from fb. Apparently that isn’t possible (according to fb support). Do you know how to do this becayse to be honest that’s what I’d love to do and start fresh. I have no ads running so I’m not worried.
Also by deactivating the shop, all the products etc still remained within commerce manager. Maybe I need to create a new commerce profile somehow?

Like

Hi Brooke — To delete all your products you need to go into your main feed, feed settings, and upload a “replace” feed with a single placeholder product.

If I have time I’ll try to write a how to on doing this tomorrow.

Like

Hi Alex
I’ve just found where I could delete the product catalogue and guess what!? Products are syncing across correctly. However additional images etc are still not pulling through so I’ll give the above steps a try and hope that fixes the issue.

Question – do you know why some stores automatically do this and others don’t? Is it just a glitch?

Like

Hi Alex, sorry likely silly question but when adding the collection template in the code should it be JSON or Liquid?

Like

I set up the supplementary feed as outlined on this page. It works great for 1000 of my items, but I have many more products than that. I considered setting up multiple collections in Shopify, but Facebook would not let me upload more than 1 supplementary feed. Do you know a way around the 1000 product limit?

Like

Hi Alex,
You obviously know your stuff here when it comes to Shopify and Facebook integration, so maybe you can help me with a possibly-related problem.

I’ve integrated Shopify to my Facebook Shop and the items are showing up fine on my Facebook Shop. However, my items are also set up to appear on Facebook Marketplace. I had hundreds of views each day and a handful of sales from Facebook Marketplace in the first few days it was activated, but now I’m only getting 30 or so views a day (on 1800 items for sale) and zero sales for weeks now.

I don’t think my items are visible on Marketplace and I can’t figure out why. Meta Commerce Manager shows the items as active on Facebook Marketplace and it is not showing any errors. I literally can type in the exact title of any of my items in the Facebook Marketplace search bar and nothing appears in search results. It’s like they don’t exist. I have google product categories set up for each item, new/used categorizations, and set size/variants, where appropriate. I sell primarily vintage items, so most things don’t have barcodes. I’m also not running ads, since these are mostly one of a kind items.

Shopify support couldn’t help because the problem is on Facebook, and Facebook Business Support has not been any help so far.

Do you have any ideas what could be causing this and/or a possible solution?

Thanks.

Like

Hi Zach — I don’t have a direct answer/solution to this, but some things to try is to delete and re-upload your entire Facebook product catalog. I believe the best way to do this is to do a manual upload with “replace” (Go to Catalog > Data Sources > Feed > Settings > Single Upload via File > Replace your Data Feed). This will ensure that you don’t have any orphaned items in your catalog that have somehow lost their connections to Shopify — essentially a “reset”.
But otherwise, no other ideas.
Alex

Like

I believe Shopify is now able to push the secondary photos to Facebook shop without this. I did try this workaround in the past, but it seems Facebook rejects the XML feed altogether and won’t publish ANY listings using it if there is even a single instance of an unsupported special character in one of your product’s titles or descriptions.

The only other possibility is that FB now supports those special characters, but it doesn’t look like I have a supplementary feed set anymore (I likely removed it when it was failing the scheduled uploads). I now deleted the facebook-feed-template and the Facebook collection to find out for certain when the next product is added.

Great work on this regardless. I was going to try adding to the code to get past more than just the “&” symbol but never got around to it.

Like

Hi,

I followed the instructions but I’m getting the following message when I try to enter the URL to upload the supplementary feed: File format not supported
The file that you provided is in a format that is either not supported or unknown. Please check that your file uses one of our supported formats which include CSV, TSV, RSS XML, ATOM XML and upload again. Alternatively, you can upload items in your inventory one at a time or in bulk using a spreadsheet.

Where are I going wrong?

Kind regards

Andrea

Like

Hi Alex
I have followed your steps but when I do the upload I keep getting an error saying invalid character detected at line 13 column 18. Please make sure that the XML is well formed. I’m not very tech savvy so I don’t know how to fix this. My feed is http://www.oscaandlizzy.com.au/collections/facebook
Can you please steer me in the right direction – thanks

Would this affect the upload of the remaining items as nothing has changed on my facebook?

Like

Hi Peta — This is probably related to a special character in one of the text values of the field. I think it is probably the brand name: “Django & Juliette”, as the ampersand character is not allowed in XML, so you would need to escape it or wrap it in a <![CDATA[ block. If you are not techn savvy, then the above instructions probably don't help you much. When I have time (hopefully onver the next few weeks) I will update this post and code to handle this.

Like

Hi Alex,

Super useful information! Its awful that facebook has not fixed this issue despite multiple complaints, and her I am..1 year after you posted this and it is still relevant! I’m hoping you can help me with my dilemna?

I’ve gone through all the steps, relatively smooth sailing however now when I add the XML URL to the supplementary feed, it gives an error message “Unexpected content at the end of the document: No content can be inserted after the end of document element at line 324 column 1.” My source has 714 lines for 4 products, line 324 says;
and then there are 2 blank lines until 327. Not sure where I went wrong 😦 please help!

Like

Hi Vicki — Usually this is an issue with a non-standard character being used in your product data somewhere, or if there is extra content in your feed template file. If you post your feed link, I can take a quick look at the output.

Like

Hi –
I followed all of the steps but I am not seeing unformatted text from the “save and Preview” bullet point in step 2. My images are still showing up in the preview and Facebook is giving me a “File format Not Supported” Error if i try to use the url. any ideas?

Like

Hi Alex!

thanks a lot for your well described and truly needed instruction to fix this problem.
I followed the exactly the steps and FB seems to pull the data from the created supplementary feed. However, all my products still show one single image only. Of course I set the particular sections in the code to “true” but it just doesn’t work and I don’t know why.
All my images (4-6 mages per variation and 4 variations per product) do have the following alt text: #typeofvariation_color
I need this alt text so customers only see the images of one variation when the select one.
Could this alt text cause the problem? Or do you have any other idea?
Thanks a lot!
BR,
Jim

Like

Hi Jim,
The code to match the correct images to variants expects the following conventions:
– A variant option called “Color”
– The ALT text of the variant’s images to exactly match the Color value of the variant

It looks like your ALT tag setup is different. Do all your additional images have alt text that is *exactly* “#typeofvariation_color”, or do they also include the actual color name?

Alex

Like

Hey Alex!
Yes, they do include the actual color name. Let me explain in more detail:
My shopify theme supports the function to add multiple images per variant and also to show only the images associated to the selected variant in case all of my images do have the described alt-text “formula”. E.g. The variant option called “Insidecolor” has 3 variants: black, creme, green
So the alt text for every images related to the variant green is #insidecolor_green
The hashtag is a must and the underline as well. However, it is possible to include any additional alt-text, it just needs to be writen before the #. For example:
green #insidecolor_green
Please note that my variant option name is not just “Color” it is “Insidecolor”. I do have another variant option as well for other products which are also not called “Color” they are called “Handlecolor”.

Do you think there is any solution to make it work in my case?
Many thanks!
BR,Jim

Like

Hi Jim,

Try this: (All line number references are to the script here: https://github.com/Czarto/ShopifyScripts/blob/master/Templates/collection.fb-product-update.liquid)

Line 28:
Change
if option == ‘Color’
To:
if option == ‘Insidecolor’
(might be case sensitive)

Further on the same line (28):
Change
{{ variant.options[forloop.index0] }}
To:
#insidecolor_{{ variant.options[forloop.index0] }}

So the full line should look like this:
{%- if option == ‘Insidecolor’ -%}{% capture Color %}#insidecolor_{{ variant.options[forloop.index0] }}{% endcapture %}{%- endif -%}

This will only work if the ALT text of your images is exactlyl “#insidecolor_green”, I don’t think it will work if additional text is included.
There’s also a strong possibility that the code changes above will NOT work, due to other small differences in how your theme works.

Good luck!
Alex

Like

Hey Alex! Thank you so much, it seems to work!!! You are amazing! The shopify support told me that there is no way to do that 😏.
One more thing: I do have another variant option for other products. Its called ‘Handlecolor’. Is it possible reuse this code by just copy paste line 28 for another addiontal variant option? Actually I tried, but if I do there seems to be an issue with the synthax -endfor-. Any advice?
Thank you so much!!?

Like

It’s possible, but more involved.
You would need to create new variables called “Color2” and “additional_images2” and duplicate lines 22, 28, 31-32, 46-48 (using Color2 and additional_images2 instead of Color and additional_images).

I won’t be able to help more than the above unfortunately…

Like

Hi Alex, I have managed to make this work. However, certain fields are throwing issue on Facebook. The warning message is “Some attributes cannot be updated using a supplementary feed and must be managed through your main data source”. Due to this, this supplementary feed is unable to update custom labels and product type. Can you help me on this? Thank you.

Like

Hi Alex. I have an issue regarding Product Type. Actually, we are using custom product types in Shopify. Facebook is able to read our Product Type but flags it as an error. Therefore our Product Type remains blank. I tried customizing your code by using standard product types, but it is still not working. The Product Type remains blank on Facebook itself. Do you have any idea what might be the issue?

Like

Thank you so much for posting this solution! Everything is working for me, up until I try and sync with facebook where I’m getting the error: ‘Unable to parse at line 2 column 1.’ Any idea on what this could be? Thanks so much 🙂

Like

Usually this error is related to an invalid & unescaped XML character, something like & or < or some other non-statndard symbol. I took a quick look but also couldn't see anything wrong with that specific line. If you resubmit the feed, do you get the same line number?

Like

I’m getting a double up of my products variants due to different product ids coming through from the main feed. How do I align these so FB not treating them as additional new products?

Like

Hi Alex,
I followed the procedure and everything works, including the custom labels.
I tried inserting this line to edit the title:
{{ product.vendor }} {{ product.title }}.
On the xml it looks ok, but facebook doesn’t use this new information to change the title passed by Shopify’s Facebook Channel.
What am I missing?

Thank you

Like

Hmmm… I’m not sure. In my scenario, I haven’t had the need to update the product title, so don’t have a definitive solution to this.

Every time Shopify updates product data to Facebook, it currently seems to overwrite/reset the product. And so it is important to set this custom feed to be fetched every hour to that the customizations are continually re-applied.

Having said this, some possible things to look into are:
1) There may be a time delay between uploading the feed and when Facebook between updates the title.
2) If the title is definitely not updating, then you can try putting the desired title into one of the custom fields, and use the Facebook feed rules to set the title to that Custom feed. (I *think* you can do this)

Alex

Like

Hi,
thank you for your work. I’m going to try it out for our stores.
I would have two questions though:
– is it possible in this way to insert also mm-google-shopping.custom_label_n ?
– Is it possible to change the title that is passed to Facebook? We would need product.vendor + product.title.
Thanks in advance for your reply.

Like

hello,
when I paste the code in the template, I receive the error: Error: Invalid JSON: unexpected token. It doesn’t show where the error is. Not sure how I can validate on the shopify wysiwyg.
thanks for any help

Like

Hello, the main issue with i face with exisiting shopofy feed is that product type is not syncing. I need that to create product sets in commerce manager. I am unable to use google product caetogory since google channel ism’t supported in my country.

Does this method sync product type?

Liked by 1 person

Hello, i am receiving the following error. Invalid character detected on line 11677 column 28. Please make sure that the XML element is well-formed. My facebook feed is at specter.pk/collections/facebook

Also, I made some changes to the code since i only needed product types to be synced. Also, i changed the gender metafield to the one created by me since google shopping channel is not in my region. Does facebook accept men, women, unisex as gender or do i need to change values to male,female?

Like

Hi — Are you still receiving the feed error? It is usually related to an invalid special character that needs to be encoded or escaped. If you view page source, and scroll down to the line & column, you should see the character that is causing the issue. Then it would be a matter of adding a string replace in the code.

For gender, I believe it needs to be male, female, unisex. But you can always submit men,women as gender, and use the feed rules in FB to transform those to male, female on the FB side of things.

Like

Is it possible to add the Shopify Collection a product might belong to so a FB Set can be created identical to the Shopify collection?
Or perhaps bring in the tags as another way of linking a set with a collection?

Like

Hey, how do i hide this collection from showing up in search results or front end. because i dont want users to access it or search engines to crawl it… please help

Like

Hi Alex,
Thank you very much for this helpful data.

I want to take only one variant to the feed. Is this possible? Can you help me with that?

Like

Hi Pierre,

Try changing this line:
{%- if product.variants.size > 0 -%}
To this:
{% if false %}

That *should* only generate data for the top level product, and not for any variants.

Let me know if that works.

Alex

Like

Hey Alex,

Thank you for writing this much needed guide.

I was hoping to find some clarification on Facebook dynamic pixel data. I am thinking of removing the shopify app as I would like more control over the images (they come out wrong on facebook) and instead using a spreadsheet upload.

Will this affect historical pixel data for dynamic ads meaning will previous store events be scrapped with an entirely new catalog/datasource?

Thank you in advance.

Like

Hi Alex,
I also want to add FB category IDs I think FB Category ID is also a missing field on Shopify correct me if I’m wrong. Do we need to add the same as Google Category IDs? But the question is where the FB Category ID information will come from?

Like

Hi Alper,

My understanding is that Facebook will use the Google Product Category if the FB Category is missing, and that only one is needed. Using the Google Product Category is the simplest route as Shopify already has ways of setting this (via the Google Shopping Sales Channel).

So I *believe* FB Category Id is not needed.

Alex

Like

Hi again,
As far as I know, the FB algorithm is using this category ID (when you’re using a dynamic catalog on the ad section) to match people who engaged to this category ID before. That’s why I think it’s also necessary to help the FB algorithm to get better results.

Like

Oh actually, I have fixed it! But, now all of my products were rejected for not having a price, description, title, image link, condition, link. But, they all do have those?

Like

Do you have your Facebook Sales Channel connected in Shopify, and all products uploaded via that? The feed you’re building in this tutorial is a supplemental feed that enhances what is already there (it won’t work unless the other feed is there)?

Like

Hi Shelly — Do you know WHY you have multiple feeds? If there’s no good reason for multiple feeds, then they might just be leftovers from some previous attempts at getting things up and running. One option is to delete them all, and then re-connect the Facebook Sales Channel in Shopify.

Like

Is there anyone that I can hire to help me with this? I’m in a never-ending loop between Facebook and Shopify and my Ad agency who all claim it’s the other guys problem. I requested a professional on Storetasker as well and no takers for this issue. I can’t move forward until it’s fixed.

Liked by 1 person

Hello, do I keep the original html in the collection template, or do I remove that before pasting the html? thanks!

Like

Thank you. I had such a hard time getting shopify to talk to Facebook to talk to Instagram that in the end I just kept shopify and instagram separate and gave up on Facebook commerce.

Like

Hey Alex,

Followed the guide to the T, seemed to work great. though the only error i ran into was with the ‘link’

Error Message:
A required field is missing: link
Products without “link” information can’t be uploaded. Please check that this field is included for each product in a separate, labeled column.

As far as i can tell, a link is present. Maybe its not recognised? any ideas?

Cheers!
James

Like

Hey Alex, ran into an issue with products being rejected because of the ‘link

Error message: A required field is missing: link

Products without “link” information can’t be uploaded. Please check that this field is included for each product in a separate, labeled column.

As far as i can tell there are links present, but not being recognized maybe? any ideas?

Like

Hi James — Just a guess, but it might because your main Shopify feed is uploading a subset of all your products, while the supplementary feed is uploading all the products, and so some products that are in the supplementary feed but not in the main feed don’t have all the required attributes.

Does that make sense in your situation?

Best,
Alex

Like

Thanks for the response! really struggling with this one.

I think i’m following what you explained, although i tried deleting the main Shopify feed, so that there wouldn’t be any conflict. Same issue still shows. Link not been recognized, even though there are links present in the issue report

Like

Actually, you should leave the main shopify feed.

the fix would be to one of:
1) Make sure the supplemental feed only contains the products in the main feed
2) Make sure your main feed contains ALL products, and then mark some of them as inactive in Facebook if you don’t want them to show up there.
3) Just ignore the error. I don’t think it should hurt anything.

Longer term, at some point I will update the feed so that it only includes products that are live in the Facebook Sales channel.

Like

Hmm… with the links not being recognised and facebook showing them as missing, no products are being shown right now.

Appreciate your help.

Like

Hello,
I did everything you said to do in the post and I am getting an error message when I upload the url to my data source and click “Request Update Now”. The message reads:” HTML format isn’t supported
Please check that your file is in the correct format. Supported file formats include CSV, TSV or RSS/ATOM XML.”

Any idea on how I can fix this?

Thank you,
Angelina

Like

Hi Angelina,

I took a look at your feed file and everything seems correct. Usually the HTML error is when the collection template isn’t set to the XML feed template, but yours seems to be set correctly.

Are you receiving a line number with the error?

Like

Hello,

I have same issue with Angelina.

HTML format isn’t supported:
Please check that your file is in the correct format. Supported file formats include CSV, TSV or RSS/ATOM XML.
1 product was rejected
No preview available for this issue

Can you help me to fix it? I don’t know where should I ask it to.

Like

Hi Jisun Chung,

The issue is usually that you didn’t select the correct collection template.
Make sure you completed the first bullet point in Step 2.
Make sure when you preview your collection you are only seeing unformatted text, and no images.

Hope this helps.

Alex

Like

This post is a life saver!! You would think Shopify would have implemented this on their end by now.

For the subtype Beauty, how would I include the recommended data: capacity (0.25oz) and ingredients (multiple items)?

Like

Hi Roman,

For the feed itself you would probably need to include something along the lines of:

<capacity>{{ capacity_metafield }}</capacity>
<ingredients>{{ ingredients_metafield }}</ingredients>

You would likely need to store those values in Shopify metafields for each product.

Alex

Like

I still use your original manual feed implementation, which seems to work better than the newly implemented Shopify one, partly because we can have ownership of our catalogue rather than the owner being specified as Shopify.

With that said, I am having an issue with our feed not sending the right content_ids to Facebook. Instead, it sends the the product group ID. This essentially stops the dynamic ads from serving all together. I am trying to modify the above to see if i can make sure the correct content_IDs gets sent through.

Like

Hi Akin,

I had similar issues, and never quite figured out how to resolve them. At the time (still?) there wasn’t much documentation available around Shopify’s Facebook pixel implementation with regards to remarketing.

From Facebook’s side there is “Group Id” and “Content Id”, while on Shopify’s side there’s Variant Id or Product Id. As you mentioned, Shopify seems to pass the Shopify Product Id in the Facebook Group Id variable — I unfortunately haven’t looked deeply at either side’s implementation to be able to help with this, but please let me know if you find a solution (If I figure something out, I will post it here as well).

Best,
Alex

Like

Leave a reply to Alex Czartoryski Cancel reply