A Google Shopping feed that works is the thing that’s keeping you from the fun part of advertising watching sales come in 🤑
Some lucky people manage to get their product feed working on the first try. But since you’re here reading this article, I bet you’re not one of them.
It’s not rocket science, but it can be very tricky to know what to fix and then to find where to fix it.
I’ve set up hundreds of Shopping campaigns and I’ve encountered most problems at least once.
So in this article, I’ll take you through the various parts of a shopping feed, how you avoid these devilish errors and how to get to fix them as quickly as possible.
Here is what we’ll cover in case you want to jump ahead:
Part 1 – Basic Google Shopping Feed Fixes
Standard product feed attributes: id – title – description – google_product_category – product_type – link – image_link – condition – availability – price – sales_price – gtin – brand – mpn – identifier_exists
Part 3 – Advanced Google Shopping Feed Fixes
Product feed basics
Product variations, Bulk Changes & Multiple Feeds
Data feed management software
Google Merchant Center Feed Rules
Ecommerce platforms: Shopify – WooCommerce – Magento – BigCommerce – 3dcart – Prestashop
Part 1 – Basic Google Shopping Feed Fixes
Let’s start with the easiest part, the name.
The feed you need for Google Shopping is known under a ton of different names: merchant center feed, google shopping feed, product data feed, product feed, data feed, etc.
Those might sound complicated but all of these are the same thing: a file with all of the product information of your store in a format that can be read by another system.
These kinds of feeds are used by a lot of different systems. But if you want to advertise your products in Google Shopping, you’ll need to adhere to Google’s requirements.
Google Shopping Product Data Specification
Google has a long list of specifications that explains which data they need and in which format they need it in.
If you’re having problems with your Google Shopping feed, this is probably where things go wrong.
The exact requirements depend on the type of products that you sell or the country you’re selling in.
In what follows, I’ll describe all of the required items. You won’t need to pay attention to all of these, but if you’re stuck, going through this list and understanding what goes on behind the scenes might give you a clue how to fix it.
The product id is the number you use in your store to identify a specific item. It’s important that the number is unique in your product feed. You can use your SKU number or the id generated by your store platform.
For the product title attribute, you can describe your product in up to 150 characters.
Be sure to include the most important keywords at the start, because Google often will show only the first 35 characters, as you can see in the screenshot below:
In the Google Shopping portal, a bigger product title up to 75-100 characters is shown. But the majority of people won’t see this page:
The product title is one of the product attributes with the biggest impact. So make sure you include import product details like brand, color, material or size.
Pro tip: a good product feed title usually also is a title with a lot of SEO benefits
The product description is where you give all the product details a customer cares about: features, dimensions, use cases, etc.
These descriptions don’t show up in the search results, but they do in the Shopping portal (this is a tab of the search results page).
You have up to 5000 characters, but only a few of those will actually show. In the screenshot about, 175 characters are shown. If we check the seller’s website, the product description has over 1400 characters.
So use the limited real estate smartly. Get your most important point across first. And although the rest of the product description might not be visible, it can help Google to understand what other keywords your product would be relevant to appear for.
The google product category attribute tells Google which category your product belongs to.
The category attribute is no longer required. If you don’t pick a category, Google will pick the most appropriate on automatically:
This feature hasn’t been around for too long, but Google’s guesses of the product categories that I’ve seen were pretty accurate.
If you want to supply the data yourself, you can only use the pre-defined values from the Google Product Taxonomy list. Don’t just settle for the highest level category, try to be as specific as possible.
Example: you’re selling a jersey for cycling:
Don’t settle for the general category: Apparel & Accessories > Clothing > Activewear
But be as specific as possible: Apparel & Accessories > Clothing > Activewear > Bicycle Activewear > Bicycle Jerseys
Being as accurate as you can help to increase your visibility.
The product type is another category indicator. It’s not required but highly recommended. This one is mainly used for the organization of your Shopping campaigns.
You’re also not limited to the categories that Google has, so you can create your own subcategories to make the organization easier.
If you do use this, be sure to include the full string. In the example above, maybe your store only sells cycling jerseys. So you could have:
Apparel & Accessories > Clothing > Activewear > Bicycle Activewear > Bicycle Jerseys > Woollen Jerseys
You have to provide a direct link to the product page (not your homepage) and it has to include the https:// (or http://) part. If you have a specific page for mobile traffic, you can supply that link via the mobile_link attribute.
This is the main product image. If you have multiple images, use the additional_image_link attribute.
It’s best to use the best quality image you have, preferably 800px x 800px, but higher is always better. Ideally, the shot needs to be of the product on a white background.
Don’t try to be clever by adding extra text or logos to the image, that won’t work.
But do have a look at the current search results. It happens often that all products have the same image, often dropshippers that use the product images supplied by the manufacturer. That means that you could stand out with a different angle or higher quality image. This is exactly what anime store DokiDokiDesu did.
Let’s take a look at another example of this tactic:
The product availability is a required attribute for all products. Options: in stock, out of stock or preorder.
The product price + currency is a required attribute for all products. For example 15.00 USD. The currency needs to match the country you’re creating the feed for.
The sales_price attribute to communicate a special deal on a product. It is an optional attribute with the same requirements of the product price attribute.
Common mistake #1
The attributes condition, availability, sales price, and price are pretty straightforward, but Google is very strict about the accuracy of all the data in your product feed.
What you put in your feed needs to match the data on your website. If the price doesn’t match, a product will get disapproved.
To avoid this, make sure update your Google Shopping feed is updated frequently. Check in the Automation section below for some tools that make this process easier by integrating with your store.
Gtin or Global Trade Item Number is a unique product identifier. You probably know these better as barcodes. Depending on you where you are located or source your products from, you’ll use a different system:
- UPC: 12 digit number mainly used in North-America
- EAN/UCC: 8,13 or 14 digit number mainly used outside North America
- JAN: 8 or 13 digit number used in Japan
- ISBN: unique identifier for books
If you have multiple options, for example, a UPC code or an EAN number, you can use either one of them.
The brand name of the company that created the product. Don’t include your own store name or the name of your distributor. If it’s a product that you have created yourself and you’ve bought a UPC/EAN barcode from a party like GS1, do add your brand name here.
The identifier_exists attribute indicates whether a product identifier exists for this product. Here is how to use it:
- You resell items that have a gtin / mpn and a brand: identifier_exists needs to be set to TRUE
- You sell old or custom items: identifier_exists needs to be set to FALSE (Google then won’t require a gtin, mpn number or brand for these products in your data feed)
If you don’t provide a value, Google will set it to TRUE.
Don’t try to be clever and set the identifier_exists to FALSE to avoid having to look up or enter all the product identifiers. Google really needs this information to match you with the right search queries.
Common mistake #2
For most products, Google requires 2 out of 3 product identifiers. These are the following attributes: brand, gtin or mpn.
Because a lot of sellers will have different product titles or descriptions, Google uses these product identifiers to figure out which products are the same.
If you don’t supply the correct information, your products might be disapproved, or it will fail to get clicks. This means it’s in your own interest to do the legwork to include these product identifiers.
If you haven’t been using gtin or mpn identifiers, check with your suppliers, they should be able to provide them.
But I’ve also had many cases where a supplier didn’t know or didn’t have any product identifiers.
For example I tried to find the UPC number of a Anker Powercore 13000 power bank. I opened up upcitemdb. The screenshot below shows me all of the different product variations.
I assume Google has a similar database.
If you don’t add the product identifiers to your shopping feed, Google will match your products based on the product titles.
So if your product title is “Anker Powercore 13000 power bank”, Google will show Shopping ads with searches for power bank.
But there are a lot of other ways to describe this product: battery pack, external battery, etc. Thing is that your competitors are probably using a lot of these keywords. And if you use the same product identifiers as your competitors, you’re able to tap into this multitude of searches.
Special product attributes
The item_group_id attribute is necessary if you’re selling a product that comes in multiple variations like a different color or size.
The attribute indicates to Google that there is one “core item”, with small variations. It allows customers to explore variations right in Google Shopping:
Each of the products that have the same item_group_id needs to have one product attribute that differs
- Green chinos 32: item_group_id: chino12 – color: green – size: 32 – age_group: adult
- Green chinos 34: item_group_id: chino12 – color: green- size: 34- age_group: adult
- Brown chinos 34: item_group_id: chino12 – color: brown- size: 34- age_group: adult
- Blue chino 32: item_group_id: chino12 – color: blue – size: 32- age_group: adult
The color attribute is required for all apparel items and indicated the color. The value you need to provide to Google needs to be the actual color spelled out: black grey, teal, etc.
The size attribute indicates the product’s size. Multiple values are supported, but you have to stay consistent across variations.
In our example above we were using the size for the pants: 28, 29, 30, 31, 32, etc.
If you’re also selling shoes you can use the common shoe size in your region: 7, 9, 9.5, 10, 10.5, etc.
Also, S, M, L , XL is possible.
The age_group attribute is required for all apparel items and it indicates which target audience the product is meant for. Possible value are:
- newborn: 0-3 months
- infant: 3-12 months
- toddler: 1-5 years
- kids: 5-13 years
- adult: 13 years & up
These values will help Shopping match products to search queries like “sun hat baby 7 months”
The adult attribute is required if the products contain nudity or sexually suggestive content. if your product doesn’t contain this, you don’t need to supply it, it is set to no as default.
Often this is linked to a checkbox in your store’s back-end. I have had one client where this was all switched on by mistake, which caused the products not to be shown. So make sure this one is only turned on if it needs to be.
To finish, I want to mention the custom_label attribute. These are extra pieces of information you can add to your product feed. Adding custom labels to your Google shopping campaigns takes you beyond the setup and into the optimisation realm of your Shopping campaigns.
But I wanted to add them here in case you want to provide extra information to your feed.
The Google Shopping Policies
Besides all of the required product attributes, there are also some meta requirements you need to pay attention to. These are the various Shopping policies.
Violating these policies is what gets your Google Merchant Center account suspended. I’ll cover each of them below and show you how to fix them.
Prohibited or Restricted product policy
If you are selling products that are heavily regulated or not allowed on Google (categories like alcohol, adult content, tobacco, counterfeit goods, weapons, drugs, copyrighted content, etc.) you could run into these type of errors.
So if you’re not sure about your products, check the list of prohibited or restricted items.
This can change depending on the country you’re selling in. So if you’re expanding internationally, the grounds for disapproval might be different.
Landing page policy
Google wants the best possible experience for a user on your site. If the link you provide to the landing page is broken or returns a different kind of server error, that product or your whole feed might get disapproved.
A second common error in this category is sending the user to the homepage instead of the specific product page.
Welcome gates or popups that block the whole page are also not allowed by Google. So if you do use a popup, make sure it’s easy for the user to get around it.
Check the list of landing page restrictions.
Return and Refund policy
You need to have clear information on your site on how a customer can get a refund or how she can return an order.
You need to provide accurate and complete information with regards to the service (fast, slow, express, insured, etc.) and associated costs.
If you are shipping from outside the country you are targeting you need to provide clear information about the price and type of service. Also, be clear about extra customs fees that might be applied to the order.
The basic thinking behind this policy is: don’t surprise your customer. Be clear what to expect and what it’s going to cost.
You’re able to set Shipping rates on level of your Google Merchant Center account, or on the product level. I prefer managing everything in the GMC settings, that keeps everything neatly organised.
In most countries, the price you provide in your feed will include VAT. Only in the United States you’ll need to configure the tax settings in Google Merchant Center: which states do you owe tax in, what percentage, etc.
Going through all these attributes, I hope you’ve spotted the errors you were making before and have managed to fix them in your back-end.
If your account got suspended and you’ve fixed the issues that led to that suspension you can request an account review.
Part 2 – Fixing Errors In Google Merchant Center
All of the information above will already improve your data quality and shed some light on any policies you might be violating.
When you’re fixing your feed, you can use the Diagnostics overview in the Products section of Google Merchant Center to see if you’re making progress and indicate what other problems you need to fix.
There are 3 types of issues that can occur:
These are issues that affect your whole account. For example, an unclaimed website, no Adwords account linked or a missing return & refund policy.
These problems are related to the fetching, uploading or processing of feeds.
These are the bulk of the issues you’re trying to fix with this article, mainly related to the data quality.
Clicking on each section will outline exactly what is wrong and what you can do to fix them.
Not every problem has the same importance, In Merchant Center there are 3 different types of problems:
- Errors: critical problems that need to be addressed asap
- Warnings: important things to fix when you’re done with the errors. These will often increase visibility
- Notifications: suggestions to optimize your product feed
Here is a look at a Google Merchant Center account with its share of problems:
Part 3 – Advanced Google Shopping Feed Fixes
By now you should have been able to fix a lot your feed issues.
Creating a shopping feed from scratch
If you’re unable to get any of the integrations or feed generators to work, sometimes you need to get back to basics to find the underlying issue.
With shopping feeds, that means creating a new simple product feed from scratch where you can control each and every variable.
You can do this when you’re creating a new feed in Google Merchant Center. Google will generate a new spreadsheet that’s linked to your GMC account and which detects any changes and automatically updates the information in your product feed.
This is a very time-consuming approach, plus all the data needs to be updated as soon as something changes in your store. So I only use this approach if products rarely change or if I need to troubleshoot why a specific product feed won’t work.
There also is an official google shopping feed template. It’s a copy of the template that you’ll get from Google Merchant Center if you use Google Sheets for your product feeds. Be sure to also check tab 2 in the document called Example. This will illustrate how to use the template.
Product variations, Bulk Changes & Multiple Feeds
Luckily, you don’t have to go through the above to create your shopping feed. Most ecommerce platforms will have some kind of integration with Google Merchant Center. Shopify, for example, has it’s own free app which pushes your products into Merchant Center.
And for some stores, that’s all they need. But in some cases, you need extra flexibility or features that these basic setups are too limited.
To me there are a couple of features that make dealing with product feed a lot easier:
- Properly handle product variations
- Ability to quickly make (bulk) changes
- Manage multiple product feeds
- Take advantage of custom labels
- Use optimized feeds for Bing, Facebook Ads, etc.
Some of these or must-haves, others will save you some time.
There are a ton of tools out there that will help you do this (skip ahead for a big list of them). They all work in the following way:
- Grab product data from store (via an app, plugin, extension, API, etc.)
- Ability to edit data in your product feed via the tool
- Push feed(s) to Google Merchant Center
All tools below will do #1 and #3. But not all will do #2.
With the free or cheap ones (except for Feed Rules), you don’t have the ability to edit any of the data in your product feed before it gets pushed to Google Merchant Center.
That means no bulk changes, multiple product feeds or custom labels.
Data feed management software
The main benefit of these comes out when you’re managing multiple product feeds. That can be google shoppings feeds for multiple countries, or a feed for Google and another for Bing Shopping.
These are the main providers of this software:
- GoDataFeed (paid – starting from $29/mo)
- Channable (paid – starting from €19/mo)
- DataFeedWatch (paid – starting from $34/mo)
- Sales&Orders (paid – starting from $50/mo)
You’ll see the pricing vary widely between the different tools. Don’t make a decision purely based on price. If you’re interested in any of these tools, sign up for a trial and explore what they can do for you.
Google Merchant Center Feed Rules
Feed Rules is a little-known feature in Google Merchant Center can do some of the things these platforms can, the only difference is that you can do it for free.
Google Shopping Feed for Shopify
There are plenty of Shopify apps to help you with your Google Shopping Feed:
- Google Shopping app (free – Shopify) – link
- Google Shopping Feed (paid – Simprosys InfoMedia) – link
- Shopping Feed (free & paid – Shopping Feed Inc) – link
- ShoppingFeeder (free & paid – ShoppingFeeder) – link
Google Shopping Feed for WooCommerce
To generate your shopping feeds on WooCommerce, there are many plugins out there. Two of our favorites:
Google Shopping Feed for Magento
To get your Magento product feed working, there are plenty of extensions available:
- Google Shopping Feed – M1 (paid – Magmodules) – link
- Google Shopping – M2 (paid – Magmodules) – link
- Simple Google Shopping – M1 (paid – Wyomind) – link
- Simple Google Shopping – M2 (paid – Wyomind) – link
Google Shopping Feed for BigCommerce
BigCommerce now supports Google Shopping on all plans via the Sales&Orders app.
Other BigCommerce apps that will help you with Google Shopping:
Google Shopping Feed for 3dcart
3dcart also offers Google Shopping support with a variety of modules:
- Automatic Google Shopping Feed (paid – 3dcart) – link – screenshot looks like it +5 years old, so don’t know about the quality of the app
- DataFeedWatch (paid) – link
- GoDataFeed (paid) – link
- Sales&Orders (paid) – link
Google Shopping Feed for Prestashop
- Google Shopping Merchant Center Module (paid) – link
- Google Shopping Export (paid) – link
- Google Shopping Feed in 3 min (paid) – link
Master the subtle tweaks of the set up
You made it till the end, congrats!
Now you know how and where to fix the problems with your Google Shopping Feed.
If you’d like to know what to do after set up, check out my Google Shopping course. Through a series of video lessons, you’ll learn how to set up your Shopping campaigns for maximum impact. The feedback from our students has been really great so I encourage you to check it out!