Skip to content
Store slow, dated, or hard to edit? Request a Store Diagnostic
Running B2B on spreadsheets or email? Plan Your B2B Project
Paid Media

Shopify Google Shopping Feed Optimisation: Titles, Attributes and Data Quality That Improve Performance

Getting a Shopify product feed approved in Google Merchant Center is one milestone. Getting that feed to actually perform, showing up for the right searches, at a sensible cost, with a click-through rate that justifies the spend, is a completely different challenge, and it’s the one most merchants stall on.

A feed can be fully approved, with zero policy issues flagged, and still perform poorly because the underlying data quality is weak. Google’s Shopping ads and free listings both rely heavily on structured product data to decide when and where to show your products, and a feed full of thin, generic titles and missing attributes gives Google’s matching algorithm far less to work with than a competitor’s feed with rich, specific data, even if both feeds are technically “approved.”

This is a deep dive specifically on the data quality layer: titles, GTINs, and product_type, and how each affects real performance, not just approval status.

Why “Approved” Isn’t the Bar to Aim For

Google Merchant Center’s approval process checks for policy compliance and basic data completeness, required fields present, no prohibited content, pricing that matches your site. It does not check whether your titles are actually optimised for how people search, or whether your product categorisation genuinely reflects your catalogue. A feed can pass every Merchant Center diagnostic and still underperform because the data, while technically valid, isn’t competitive.

This matters because merchants often treat feed troubleshooting as done once the red warnings disappear from Merchant Center, when the real optimisation work, the part that affects impressions, click-through rate, and conversion rate, starts after that point.

Product Titles: The Single Biggest Lever

Google’s Shopping algorithm weights title content heavily when matching your product to a search query, more heavily than most merchants realise. Generic titles are the most common data quality issue we see in Shopify feeds.

What a weak title looks like: “Women’s Dress, Blue”

What a strong title looks like: “Women’s Midi Wrap Dress, Blue Floral, Size 6-16, [Brand Name]”

The difference isn’t cosmetic, it’s about giving Google’s matching system the specific attributes shoppers actually search on: product type, key defining feature (wrap style), colour, size range, and brand. A generic title matches fewer specific searches and gets outranked by competitors whose titles carry more matchable detail.

For Shopify stores, title quality usually comes down to how your feed app (or custom feed) constructs the title field:

  • Does it pull from your actual product title field, or does it construct a more detailed title from metafields and variant data? Many feed apps let you build a title template combining product type + key attribute + colour + brand, which consistently outperforms a raw copy of your storefront product title, especially if your storefront titles are written for branding rather than search matching.
  • Is size or variant-specific information included where relevant? For apparel and footwear specifically, including size range or key sizing detail in the title can measurably affect match quality for size-specific searches.
  • Are you keeping titles within Google’s effective character limits without truncating the most important keywords at the start? Front-load the specific, searchable terms, Google’s own display and matching both tend to weight the earlier portion of the title more heavily.

GTINs: The Field Merchants Skip and Shouldn’t

GTIN (Global Trade Item Number, includes UPC, EAN, ISBN depending on product category) is one of the fields Shopify merchants most commonly leave blank, particularly for private-label or custom-manufactured products that were never assigned a formal barcode.

This matters more than it might seem:

  • Google explicitly uses GTINs to match your product against its own product catalogue data, which feeds into richer search matching, price comparison features, and in some cases eligibility for certain Shopping surfaces.
  • Feeds with GTINs populated for eligible product categories generally have an easier path to full feature eligibility than feeds where GTIN is submitted as “identifier_exists: false” for products that genuinely have one.
  • If your products are private label and genuinely have no GTIN, Google does allow marking identifier_exists as false, but this should reflect reality, not be a default toggle-off setting sitting on the whole catalogue by mistake, which is a common Shopify feed misconfiguration.

Practical fix: audit your product catalogue for which SKUs have real GTINs assigned (check your supplier or manufacturer documentation) and ensure that data is mapped into the relevant Shopify product or variant field your feed app reads from, rather than left blank across the board.

product_type and google_product_category: Getting Categorisation Right

These two fields serve different but related purposes, and Shopify merchants frequently either leave one blank or fill both with inconsistent, vague values.

  • google_product_category maps your product to Google’s own standardised taxonomy, and getting this specific (not just “Apparel & Accessories” but the full specific path down to the relevant leaf category) directly affects which searches and Shopping surfaces your product is eligible to appear in.
  • product_type is your own custom categorisation (typically pulled from your Shopify collection or product type field), and while more flexible, it still contributes context Google uses for matching, and it’s also what you’ll use for structuring Shopping campaign product groups if you’re managing bids at the category level.

The common mistake: mapping every product in a broad collection to the same generic google_product_category rather than the most specific applicable leaf node. “Apparel & Accessories > Clothing > Dresses” performs differently than the parent “Apparel & Accessories” category alone, specificity here is not a minor technical detail, it materially affects impression eligibility.

Image Requirements That Actually Affect Performance, Not Just Approval

Google’s image policy requirements (minimum resolution, no promotional overlay text, no watermarks) are approval-level checks. But beyond meeting the minimum bar, image quality affects click-through rate directly, Shopping ads are highly visual, and a cluttered, low-contrast, or poorly cropped product image will underperform a clean, well-lit one even with identical text data. If your Shopify product images were shot primarily for your PDP layout rather than for a small Shopping ad thumbnail, it’s worth checking how the primary feed image actually renders at ad size before assuming the same image works equally well in both contexts.

Custom Labels: The Underused Field for Campaign Structure

Custom label fields (custom_label_0 through custom_label_4) are optional feed attributes that don’t affect Google’s matching or approval process directly, but they’re one of the more underused tools for improving how you can actually manage and optimise a Shopify Shopping feed once campaigns are live.

Practical ways Australian merchants use custom labels:

  • Margin tier, flagging high-margin versus low-margin products, so you can set different bid strategies or budget priorities by profitability rather than treating every product in a campaign identically.
  • Bestseller status, flagging your genuinely top-performing SKUs so they can be isolated into their own campaign with dedicated budget, rather than competing for spend against your full, long-tail catalogue.
  • Seasonal relevance, flagging products relevant to a specific season or promotional period (useful heading into BFCM or EOFY sales), so you can adjust bids or budgets for that segment without restructuring your entire feed.
  • Clearance or end-of-line stock, flagging inventory you want to move faster, which can inform a distinct bidding approach from your core, ongoing range.

Setting these up requires mapping a Shopify metafield or tag to the relevant custom label field in your feed app, which is a one-time setup step that then pays off continuously in how precisely you can structure and manage campaigns without needing to rebuild product groups manually every time your catalogue changes.

Feed Sync Frequency and Data Freshness

Shopify feed apps typically sync on a schedule (hourly, several times daily, or near-real-time depending on the app and plan). For fields like price and availability, sync delay creates real problems, an out-of-stock product still showing as available in a live Shopping ad is a wasted click and a bad first impression, and price mismatches between your feed and live site are a policy violation Google actively checks for. Confirm your feed app’s actual sync frequency matches how often your pricing and stock levels genuinely change, particularly during sale periods when prices move faster than usual.

A Practical Data Quality Checklist

  • [ ] Titles built with a template (product type + key attribute + colour/size + brand), not a raw copy of storefront titles
  • [ ] GTINs populated wherever a real barcode exists; identifier_exists only set to false where genuinely accurate
  • [ ] google_product_category mapped to the most specific applicable leaf category for each product group, not a broad parent category
  • [ ] product_type consistent and structured, matching how you’d want to organise Shopping campaign product groups
  • [ ] Primary feed image checked at actual ad thumbnail size, not just judged on the full-size PDP version
  • [ ] Feed sync frequency confirmed to match how often price/stock actually changes
  • [ ] Merchant Center diagnostics reviewed beyond “approved” status, check the quality and performance suggestions tab, not just policy warnings

When to Bring in a Specialist

Feed data quality work sits at the intersection of Shopify product data structure and Google Ads account management, and it’s easy for the two teams (or the one person doing both) to fix one side without checking the other stays aligned. If your feed is approved but underperforming and you’ve worked through the basics above without a clear improvement, that’s usually a sign the issue needs a proper audit against your actual campaign structure, this is core to what we look at in Shopify Google Ads management, because feed quality and campaign structure genuinely need to be solved together, not as separate projects.

FAQ

Why is my Shopify Google Shopping feed approved but still not showing for relevant searches?
Approval only confirms policy compliance and required field completeness, it doesn’t mean your data quality is competitive. Weak titles, missing GTINs, or overly broad product categorisation are common causes of low impression volume even on a fully approved feed.

Do I need a GTIN for every product in my Shopify feed?
Only for products that genuinely have one assigned by a manufacturer. For true private-label products without a formal barcode, Google allows marking identifier_exists as false, but this should reflect actual product data, not be applied broadly across a catalogue that does have real GTINs available.

How often should my Shopify product feed sync with Google Merchant Center?
It depends on how frequently your pricing and stock levels change. A store running frequent flash sales needs closer to real-time sync than a store with stable pricing; check what sync frequency your specific feed app or method actually supports and whether it matches your business’s pace of change.

Should I use my Shopify product titles as-is in my Shopping feed?
Not necessarily. Storefront titles are often written for branding and on-site browsing, while feed titles perform better when structured for search matching, product type, key attribute, colour, size, and brand, front-loaded with the most specific searchable terms.

What’s the difference between google_product_category and product_type in a Shopify feed?
google_product_category maps your product into Google’s own standardised taxonomy and affects Shopping surface eligibility; product_type is your own custom categorisation, useful for campaign structure and additional matching context. Both should be as specific and consistent as possible.

Ready for a Proper Feed and Campaign Review?

If your feed is technically approved but not delivering the results you’d expect, book a call and we’ll look at your feed data quality alongside your actual campaign structure to find where the gap is.

Niraj Raut
Written by Niraj Raut SEO Manager

Niraj Raut is the SEO Manager and co-founder at Nexly. He helps Australian Shopify and Shopify Plus brands earn durable organic growth through technical SEO, search-led store architecture and content that ranks. He writes about what actually moves rankings for ecommerce.

Connect on LinkedIn
Have a Shopify project? Chat with us, takes 30 seconds.