Skip to main content
Feed Optimization Guide

Product Feed Optimization Guide for Shopify Product Feed

Learn the required fields, format specs, and optimization tips for Shopify Product Feed feeds.

Diego Nijboer · WISEPIM·Updated
7 core + IDs
Required Fields
Set by each channel
Optional Fields
Per app or feed schedule
Refresh Rate
Overview

What is Shopify Product Feed?

A Shopify product feed is the list of your products, one item per variant, in the format a shopping channel reads: Google Merchant Center, Meta catalogs, Microsoft Merchant Center, TikTok or a price comparison site. Shopify does not hand you one universal feed file for all of them. Instead, each channel connects through its own route. Google's Google & YouTube app syncs your products, deals and shipping to Merchant Center. The Facebook & Instagram app syncs your products to a Meta catalog. TikTok's app syncs products to TikTok. Other channels are covered by apps in the Sales channels category of the Shopify App Store, or by an external feed tool or PIM that publishes a feed URL.

Whichever route you pick, the feed is built from the same Shopify fields: Title, Description (Body HTML), Vendor, Product type, the product category from Shopify's standard product taxonomy, variant SKU, Price, Compare-at price, Barcode, inventory, images and metafields. That is why most Merchant Center problems on Shopify stores start in the admin, not in the feed. An empty Barcode field means no GTIN. A Vendor field filled with your own store name means a wrong brand. Variant options that are not in English stop products from syncing to Google, according to Shopify's own requirements for the Google & YouTube channel.

This guide covers what a Shopify product feed must deliver, which Shopify field feeds each attribute, and the errors that keep Shopify products out of Shopping results. If you need Shopify's import and export spreadsheet instead, see the Shopify CSV guide. With WISEPIM you can import your Shopify catalog, fill and check the fields channels ask for, and then either sync the fixes back to Shopify so the channel apps pick them up, or publish a Feed Hub feed URL that Merchant Center, Meta, Microsoft, Pinterest, TikTok and comparison sites can fetch.

At a Glance

PlatformShopify
Feed Format
XML
Max ProductsSet by each channel
Refresh RatePer app or feed schedule
Field Requirements

Shopify Product Feed Field Requirements

Required and optional fields for your product feed

Required
ide.g. TSHIRT-ORG-BLU-M
Text. Channel apps build it from the Shopify product and variant IDs; a custom feed usually uses the variant SKU. Keep it stable once ads run.
50
titlee.g. Organic Cotton T-Shirt Men Blue M
Text. From the product Title, often with the variant option values added (color, size).
150
descriptione.g. Crew neck T-shirt in 100% organic cotton jersey. Regular fit, pre-shrunk, machine washable at 40 degrees.
Text. From Description (Body HTML) with the HTML stripped.
5000
linke.g. https://www.example.com/products/organic-tshirt?variant=44012345678901
URL. The product page on your storefront, with the variant parameter so the right option is preselected.
image_linke.g. https://cdn.shopify.com/s/files/1/0000/0001/products/organic-tshirt-blue.jpg
URL. The variant image if one is assigned, otherwise the first product image.
availabilitye.g. in_stock
Text. Derived from variant inventory and the continue selling when out of stock setting.
pricee.g. 29.95 EUR
Price with currency. From the variant Price, in the currency of the market the feed targets.
brande.g. Northwear
Text. From Vendor. Required for new products, with exceptions such as books and media.
70
gtine.g. 8712345678906
Text. From the variant Barcode field. Submit it whenever the manufacturer assigned one.
50
mpne.g. NW-TS-ORG-BLU-M
Text. Needed when a product has no GTIN. Usually the variant SKU or a metafield.
70
conditione.g. new
Text. Required for used or refurbished products. Shopify has no native field, so a metafield or a default of new is used.
item_group_ide.g. organic-tshirt
Text. The Shopify product ID or handle, shared by all its variants. Required for variants in several countries and in free listings.
50
Optional
google_product_categorye.g. Apparel & Accessories > Clothing > Shirts & Tops
Text or ID. Mapped from the Shopify product category (standard product taxonomy) or set in the channel app. Without it, Google assigns one.
product_typee.g. Men > T-Shirts > Organic
Text. From the Product type field or your collection structure.
750
identifier_existse.g. no
Boolean. Set to no for custom or own-label products that have no GTIN and no MPN.
sale_pricee.g. 24.95 EUR
Price with currency. Feed tools usually send Compare-at price as price and the lower variant Price as sale_price.
additional_image_linke.g. https://cdn.shopify.com/s/files/1/0000/0001/products/organic-tshirt-back.jpg
URL. The other product images, in media order.
colore.g. Blue
Text. From the variant option named Color, or a category metafield.
100
sizee.g. M
Text. From the variant option named Size.
100
shippinge.g. NL:::4.95 EUR
Text. Often left to Merchant Center shipping settings, which the Google & YouTube app syncs from Shopify.

Free tool

Check a product against Google Shopping rules

Enter one product's title, description, price, GTIN and image link. The checker lists the errors and warnings Merchant Center's core requirements would raise, before you upload.

Open the full tool
Loading the tool
Feed Structure

How Shopify Product Feed Feeds Are Structured

The key rules and formatting your feed needs to follow for this channel

  1. 1

    Send one item per variant

    Shopping channels list variants, not products. A T-shirt with three colors and four sizes becomes twelve items, each with its own id, link, price, availability, GTIN and image. All twelve share one item_group_id so the channel can show them as one product with options.

    <g:id>TSHIRT-ORG-BLU-M</g:id><g:item_group_id>organic-tshirt</g:item_group_id>
    <g:color>Blue</g:color><g:size>M</g:size>
  2. 2

    Keep ids stable across feed sources

    Channel apps generate their own ids from the Shopify product and variant IDs, while a custom feed often uses the SKU. If you switch from one source to another, Merchant Center sees the new ids as new items, and the performance history of the old ids does not carry over. Pick an id scheme before you start campaigns and keep it.

    App-generated id: built from product ID and variant ID
    Custom feed id: TSHIRT-ORG-BLU-M (variant SKU)
  3. 3

    Use one source per product and country

    Shopify warns that connecting the Google & YouTube app to a Merchant Center account with an existing product feed overwrites that feed. Running the app and a separate feed for the same products and country also creates duplicates with different ids. Decide which source owns which products, and use supplemental data only to add or override fields.

  4. 4

    Match price and currency to the market

    Shopify's requirements say you must sell in a currency that matches the country you target. If you sell in several countries with Shopify Markets, each country needs its own price, currency and landing page that shows the same amount the feed sends.

    <g:price>29.95 EUR</g:price> for a feed labeled NL
    <g:price>27.00 GBP</g:price> for a feed labeled GB
  5. 5

    Strip HTML from Body HTML

    Shopify stores the description as HTML. Channels expect plain text in description, so tags, inline styles and embedded scripts have to go. Keep line breaks as plain text and escape special characters in an XML feed, or wrap the text in CDATA.

    <g:description><![CDATA[Crew neck T-shirt in organic cotton jersey.]]></g:description>
  6. 6

    Carry extra attributes in metafields

    Shopify has no native field for MPN, condition, age group or gender. Store them in product or variant metafields, or in the category metafields that Shopify's standard product taxonomy unlocks, and map them in your feed source. A feed can only send what exists in the product data.

Optimization

Shopify Product Feed Optimization Tips

Proven tips to boost your feed performance and get more products in front of buyers

  1. 1

    Fill the Barcode field on every variant

    The Barcode field is where Shopify keeps the GTIN, and channel apps read it from there. Shopify's Google requirements say a product that has a GTIN needs it before it can be published. Google says products with missing or incorrect GTINs may get limited visibility. Check that the field holds a real EAN or UPC, not an internal code.

    Valid: 8712345678906 (EAN-13 with a correct check digit)
    Invalid: SKU-1042 typed into the Barcode field
  2. 2

    Use Vendor for the real brand

    Channel apps send Vendor as brand. Stores that import products often end up with the supplier name or their own store name in Vendor. Clean it up in bulk so every product carries the brand printed on the product.

  3. 3

    Set the Shopify product category

    Assign each product a category from Shopify's standard product taxonomy. Shopify uses it to give channels like Google and Meta a standardized category, and it unlocks category metafields for attributes such as color and material. Products left uncategorized make channels guess.

  4. 4

    Build titles from attributes, not marketing copy

    Storefront titles are often short because the page shows the rest. A feed title should lead with brand and product type and add the variant attributes shoppers filter on. Some feed tools let you write a feed-only title, so your storefront title can stay as it is.

    Storefront: The Everyday Tee
    Feed: Northwear Organic Cotton T-Shirt Men Blue M
  5. 5

    Keep variant options in English for Google

    Shopify's requirements for the Google & YouTube channel state that product options, including variants, need to be in English to sync. If your store runs in another language, translate option names and values in the base language or use a feed source that sends translated attributes per market.

  6. 6

    Reuse one clean source for every channel

    Meta, TikTok and comparison sites read the same core attributes as Google. Microsoft Merchant Center can import product offers from Google Merchant Center on a schedule. Fixing the data once at the source pays off on every channel, while fixing it inside each channel's own rules leaves you maintaining the same fix in several places.

Troubleshooting

Common Shopify Product Feed Feed Errors

The most frequent feed problems and how to fix them

  • Error

    Missing GTIN because the Barcode field is empty

    Solution

    Google can disapprove a product that has a GTIN when you do not submit it. Add the EAN or UPC to the Barcode field of every variant. For own-label or custom products with no GTIN, send brand plus mpn, or set identifier_exists to no in your feed source.

  • Error

    Invalid GTIN from internal codes in the Barcode field

    Solution

    Barcode fields often hold SKUs, supplier codes or numbers with a wrong check digit. Validate every value before it reaches the feed, and remove codes that are not real GTINs rather than sending them.

  • Error

    Price or currency mismatch with the landing page

    Solution

    Merchant Center compares the feed price with the price on your product page. With several markets, make sure each feed sends the price and currency of its own country, that rounding rules and price adjustments per market are reflected in the feed, and that sale prices from Compare-at price end when the sale on your site ends.

  • Error

    Products do not sync because variant options are not in English

    Solution

    Shopify's Google & YouTube channel requires product options and variants in English. Translate the option names and values, or publish those products through a separate feed that sends the attributes your target market expects.

  • Error

    Duplicate items or a replaced feed in Merchant Center

    Solution

    Connecting the Google & YouTube app to an account with an existing product feed overwrites it, and running two sources for the same products creates duplicates with different ids. Choose one source per product and country, and remove the other before you go live.

  • Error

    Missing apparel attributes or a wrong product category

    Solution

    Apparel can need color, size, age group and gender, and Google assigns a category when you do not send one, which can lead to errors. Set the Shopify product category and fill the category metafields or variant options that carry these values.

Metrics

Feed Performance Metrics to Track

The numbers that show you how well your product feed is actually working

  • Approved items share

    The share of your Shopify variants that Merchant Center or Commerce Manager approves. Track it per channel after every sync. A drop right after a store change usually points to a field that changed in the admin.

  • GTIN coverage

    The share of variants with a valid value in the Barcode field, counted only for products that have a manufacturer GTIN. This number tells you how much of the catalog can match to existing products on Google.

  • Price mismatch warnings

    The number of items flagged because the feed price differs from the landing page. Watch it per market, and after sales, price imports or currency changes.

  • Category coverage

    The share of products with a Shopify product category and a Google Product Category. Uncategorized products make channels guess and can miss category-specific requirements.

  • Feed freshness

    The time between a change in your product data and its arrival at the channel. Check the last sync or fetch time per channel, especially for stock and prices.

How to Set Up Your Shopify Product Feed Feed

Step-by-step guide to creating and optimizing your product feed

  1. 01

    Choose your channels and route

    List the channels you want to reach. For Google, Meta and TikTok you can use their Shopify apps; for comparison sites and channels without an app you need a feed URL from a feed app, feed tool or PIM. Decide which source owns each channel and country so you do not send the same products twice.

  2. 02

    Clean the core fields in Shopify

    Check Title, Description, Vendor, Product type and the product category on every product. On every variant, check SKU, Price, Compare-at price, Barcode and inventory. These fields become title, description, brand, product_type, google_product_category, mpn, price, sale_price, gtin and availability.

  3. 03

    Add the attributes Shopify has no field for

    Store MPN, condition, age group, gender and other channel attributes in metafields or category metafields, and make sure variant options for color and size are filled consistently. Keep option names and values in English if you sync to Google through the Google & YouTube app.

  4. 04

    Connect the channel

    Install the channel app and connect your account, or add your feed URL as a data source in the channel's merchant center with a fetch schedule. For Microsoft Shopping, you can import from Google Merchant Center with Microsoft's Google Import tool.

  5. 05

    Fix issues at the source

    Open the diagnostics in Merchant Center or Commerce Manager after the first sync. Fix each issue in your product data, not in the channel, so the fix reaches every channel on the next sync. Work through the issues that affect the most products first.

  6. 06

    Keep the feed current

    Make sure price and stock changes reach each channel quickly. Check sync times per channel after sales and price updates, and re-check diagnostics after bulk edits or imports in Shopify.

Free Download

Check your Shopify catalog for feed gaps

Import your Shopify products into a free WISEPIM workspace (free for up to 100 products) and see which variants miss the fields Google Shopping and Meta ask for, before a channel disapproves them.

  • Import products, variants, SKUs, prices and barcodes from your Shopify store
  • Quality Guard rule packs check GTIN, image and price fields for Google Shopping
  • Fix brands, categories and titles in bulk, then sync them back to Shopify
  • Publish a Feed Hub feed URL for Google, Meta, Microsoft, TikTok or comparison sites
Get Free Template

Frequently Asked Questions

Common questions about Shopify Product Feed product feeds

Not one universal feed file. Each shopping channel connects through its own route: the Google & YouTube app syncs products to Google Merchant Center, the Facebook & Instagram app syncs them to a Meta catalog, and TikTok's app syncs them to TikTok. For other channels you use a feed app from the Shopify App Store or an external feed tool or PIM that publishes a feed URL.

The usual route is the free Google & YouTube app, made by Google, which syncs your products, deals and shipping to Google Merchant Center. Alternatively, you register a feed URL from a feed tool as a data source in Merchant Center. Use one route per product and country, because connecting the app to an account with an existing product feed overwrites that feed.

In the Barcode field of each variant. Channel apps read the GTIN from there. If a product has no GTIN, add a brand in Vendor and an MPN, for example in a metafield, or mark the product as having no identifier in your feed source.

Yes. Microsoft Merchant Center has a Google Import tool that imports your product offers from Google Merchant Center, once or on a daily, weekly or monthly schedule. You can also give Microsoft Merchant Center its own feed from a feed tool.

The product CSV is Shopify's own spreadsheet for importing and exporting products in your store, with columns like Handle and Variant SKU. A product feed goes the other way: it sends your products to a shopping channel in that channel's format, with attributes like id, gtin and item_group_id.

Yes. You import your Shopify products into WISEPIM, fill and check the fields channels need, and then either sync the changes back to Shopify so the Google & YouTube and Meta apps pick them up, or publish a Feed Hub feed URL for Google Shopping, Meta, Microsoft Shopping, Pinterest, TikTok or comparison sites. Feeds refresh manually, on a schedule or when products change. WISEPIM does not install or configure Shopify apps for you.

Google Product Category Lookup

Full taxonomy list, IDs, and how to map your products correctly.

Explore More Feed Guides

checklist.html
  • Inventory all product sources
  • Define your attribute schema
  • Normalize brand names
  • Add alt-text to every primary image
+ more steps in the attachment
Printable checklistHTML · 10 steps

The product feed optimization checklist

Actions:10•Phases:4•Format:HTML · print → PDF•Owners included:Yes

Ten hard steps that bring your rejection rate down and your CTR up, from title templates to source-side structured data.

  • Record your current rejection rate first as a baseline
  • Per-channel title templates (no copy-paste)
  • Pipe errors into Slack/email for same-day triage

One email, no follow-up spam. Print it and get to work.

Inside WISEPIM

Generate every feed automatically from one catalog

The WISEPIM Feed Hub turns your central product data into ready-to-publish feeds for every channel in this guide, and dozens more. Map fields once, schedule refreshes, monitor errors per channel, and push fixes back to the source. No manual exports, no format juggling, no chasing rejections one channel at a time.

Map, validate, schedule, and monitor every channel feed from one workspace.

Keep exploring

Hand-picked next steps to go deeper.

Ready to Optimize Your Shopify Product Feed Feed?

WISEPIM automatically generates optimized product feeds for all major channels from your central product catalog.