Shopify Structured Data: What GMC Actually Checks

Unblockr Team··9 min read
technicalstructured-dataschemaShopify

Structured data is the language Google uses to understand your products. Without it, Google can't properly list your products on Shopping. With bad structured data, you'll get disapprovals or suspensions. Here's what you need to know.

What Is Product Structured Data?

It's a block of JSON-LD code embedded in your product page's HTML. It tells Google the product name, price, availability, brand, images, and more — in a machine-readable format. Shopify generates this automatically, but it's not always complete.

The Fields GMC Requires

FieldRequired?Notes
nameYesProduct title
imageYesAt least 1 product image URL
priceYesMust match the visible price on the page
priceCurrencyYesUSD, EUR, etc.
availabilityYesInStock, OutOfStock, or PreOrder
brandRecommendedYour store name or manufacturer brand
gtin / mpnConditionalRequired for branded products. Use identifier_exists=false for unbranded.
descriptionRecommendedProduct description text

The #1 Issue: Price Mismatch

Google compares the price in your structured data with the price displayed on the page. If they don't match — even by a few cents due to currency conversion — you'll get a "Data quality: price [mismatch]" disapproval. This is the most common product-level issue in GMC.

Fix: Make sure your theme outputs the same price in JSON-LD as it displays on the page. Check for rounding differences.

JavaScript-Rendered Schema

Shopify themes often render JSON-LD via JavaScript (not in the raw HTML source). Google's main crawler (Googlebot) can render JavaScript, so this usually works. But GMC's product crawlers may not always render JS perfectly.

How to verify: Go to a product page, View Source (Ctrl+U), and search for "@type":"Product". If you see it in the raw HTML, you're safe. If it only appears after JavaScript runs, it's riskier.

GTIN / MPN for Furniture

Most custom or private-label furniture doesn't have a GTIN (Global Trade Item Number) or UPC barcode. That's fine — you just need to tell Google.

In your product feed, set identifier_exists to false for products without GTINs. Google will accept them without penalty. Don't make up fake GTINs — that causes worse problems.

Organization Schema

Beyond products, Google also looks for Organization schema on your site. This should include your business name, address, phone number, and logo. Shopify themes often include basic Organization markup, but verify it matches your actual business info.

How to Test

Use Google's Rich Results Test: search.google.com/test/rich-results. Enter a product page URL and check for errors or warnings in the Product structured data. Fix any issues before submitting to GMC.

Check your store's compliance for free

Scan your Shopify store against 146+ Google Merchant Center rules in minutes.

Start Free Scan