Product Feeds

Google Product Feed Optimization Checklist (With Feed QA Steps)

Work through these tables to find what’s holding your feed back, then use the QA routine to keep it clean after every change.

Feed optimization has two parts. The first is meeting Google’s requirements so products are approved. The second is giving Google complete, accurate and specific data so products can match the right searches. Most feeds have gaps in both.

Each checklist below lists a check, what good looks like and where to verify it. Every requirement comes from Google’s documentation; practitioner suggestions are marked as tips. Use it for a one-off audit, then keep the QA routine at the end for ongoing changes.

Short answer: A good product feed has one primary data source, stable unique IDs, specific titles under 150 characters, accurate descriptions, large clean images, prices and availability that match the landing page, real GTINs and brands, correctly grouped variants and shipping for every target country. Check Needs attention, then compare a sample of products with their live pages after every change.

Key Takeaways

  • Start with Needs attention, then compare a sample of products with their live pages.
  • Price, availability and landing page checks protect the account, so do them first.
  • Complete identifiers, specific titles and full product details improve how well products match searches.
  • Fix problems in the system that generates the feed, not only in Merchant Center.
  • Run a short QA routine after every platform, theme, app or pricing change.

How to use this checklist

Go through the sections in order. The early ones cover issues that can stop products or put the account at risk; the later ones improve quality and performance.

  1. Export the current issue list from Products > Needs attention (turn off Prioritized fixes to see every issue). See how to use diagnostics.
  2. Download a sample of product data from Merchant Center or your feed tool, covering every main category and both simple and variant products.
  3. Open each sample product’s landing page in a private window, logged out.
  4. Work through the tables below, noting each failed check and the system that produces the value.

Practitioner tip: record the root cause next to each failed check (“theme injects price with JavaScript”, “brand mapped from supplier field”). One root cause usually explains dozens of products.

Data source setup

CheckWhat good looks likeWhy
One primary source for the catalogAll products in a single primary data source; exclusions handled with excluded_destinationGoogle’s recommendation for primary sources
No duplicate online and local primary sourcesSame products aren’t submitted in separate online and local primary sourcesGoogle says not to do this
Supplemental sources matchSupplemental IDs match primary IDs exactly and use the same feed labelSupplemental sources match by ID and feed label
No legacy online inventory sourcesQuick price and stock updates use a supplemental source with a “Take latest” ruleOnline inventory data sources are deprecated
Countries and language correctTarget countries and language match where you sell and the language of your data and pagesSet per primary source
Feed labels plannedFeed labels follow the format (up to 20 characters, uppercase, digits, hyphen, underscore) and match campaignsLanguage and feed label can’t be changed later
Single source of truthEach product is managed in one place (platform, file or API), so syncs don’t overwrite fixesAPI and app updates may overwrite manual edits

Background on these concepts is in what is a product feed.

IDs and product structure

CheckWhat good looks like
id present and uniqueEvery product has an id of 1 to 50 characters; no two products share one
id stableIDs don’t change between updates (a change overwrites the product and its history)
id not case-dependentNo IDs that differ only by letter case, such as abc123 and ABC123
id cleanNo whitespace or invalid Unicode characters
IDs not recycledDiscontinued products’ IDs aren’t reused for new products
One record per variantEach size, color or other variant is a separate product with its own id
item_group_id consistentAll variants of a product share one stable item_group_id (1 to 50 characters); the parent isn’t submitted separately
item_group_id only for real variantsNot used to group different products such as a jacket and matching trousers

Variant setup has its own guide: how to manage product variants in feeds.

Titles and descriptions

CheckWhat good looks like
Title length1 to 150 characters; the most important details in roughly the first 70
Title matches pageTitle describes the product on the landing page
Variant details in titleColor, size or other variant details included where relevant, and submitted as attributes too
Specific keywordsProduct type, brand where it differentiates, and specific details such as material or key feature
No promotional textNo prices, sale wording, shipping or delivery claims, all caps for emphasis, symbols or company name
Clean formattingNo HTML tags, extra whitespace or gimmicky characters
Description presentEvery product has a description of 1 to 5,000 characters
Description focusedDescribes only this product; no links, comparisons, category paths, store policies or business history
Key details earlyMost important information in the first 160 to 500 characters
AI-generated text labeledAI-written titles and descriptions use structured_title and structured_description with the correct digital source type

Templates and examples are in product titles and descriptions for Google Shopping.

Images

CheckWhat good looks like
SizeAt least 500 x 500 px (required for all products from January 31, 2027); about 1500 x 1500 or larger recommended; under 64 megapixels and 16 MB
FormatJPEG or WebP recommended; extension matches the real file type
No overlaysNo calls to action, price or shipping text, watermarks, badges or added logos
No placeholdersNo “coming soon” or “no image available” images, and no store logo in place of a product photo
Unique per variantEach variant shows its own color or finish; one photo isn’t reused for distinct products
FramingProduct fills roughly 75% to 90% of the image; no borders
Additional imagesUp to 10 additional images where useful, including lifestyle images in lifestyle_image_link
Crawlable URLsrobots.txt allows Googlebot and Googlebot-image; stable URLs without timestamps or session IDs
AI image metadata keptGenerative AI images keep their IPTC DigitalSourceType metadata

Fixes for each image issue are in how to fix product image issues.

Price, availability and landing pages

These checks matter most, because Google compares them with your website and repeated mismatches can lead to account suspension.

CheckWhat good looks like
Price matches pageFeed price equals the price in the page’s HTML and structured data, in the currency prominently displayed
Price in initial HTMLPrice isn’t only injected by JavaScript after load
Sale prices handledprice holds the regular price, sale_price the sale price, with sale_price_effective_date; page shows both
No loyalty prices in sale_priceMember prices use loyalty_program instead
Availability matches pageIn-stock products have an active buy button; out-of-stock products show sold out or a disabled button
Preorder and backorder datedavailability_date set and the expected date shown on the page
No out_of_stock to hide productspause (up to 14 days) or excluded_destination used instead
Landing page loadsNo 404s, server errors or more than two redirects; URL on the verified domain
Variant URLs distinctEach variant’s link opens with that variant selected
Update timingFeed updates are scheduled to match site changes; Merchant API used if values change more than once a day

If any of these fail, use the guides to fix price mismatches and align website data and product feeds.

Identifiers and product details

CheckWhat good looks like
GTIN where assignedManufacturer GTINs submitted for every product that has one
Brand correctReal brand, not the supplier’s company name; store name for products you make with no official brand
MPN where no GTINBrand plus MPN for products without a GTIN
No invented identifiersNo made-up, guessed or copied GTINs; no internal SKUs in gtin
identifier_exists used correctlyfalse only for products that truly have no identifiers
conditionSet for used and refurbished products
Apparel attributescolor, size, age_group and gender on every apparel variant
Recommended detailpattern, material, size_type and size_system where relevant
Multipacks and bundlesmultipack and is_bundle used where they apply

To fix identifier issues, see how to fix missing product identifiers.

Shipping and returns

CheckWhat good looks like
Shipping for every target countryAccount shipping policy or shipping attribute covers each country where it’s required
Currency matchesEach country has at least one shipping service in the same currency as the product prices
Costs close to websiteShipping costs as close as possible to checkout; overestimate rather than underestimate if needed
Labels used deliberatelyshipping_label and return_policy_label only where products need different policies
Return policy configuredReturn policy set in Merchant Center and consistent with the policy on your site

Feed QA: a routine for every change

Most feed problems start with a change somewhere else: a theme update, a new app, a price import, a new product range. A short QA routine after each change catches issues before Google does.

When to run it

  • After changing your theme, product templates or structured data.
  • After installing, updating or replacing a feed app or plugin.
  • Before and after a sale or bulk price change.
  • After importing new products or a new supplier catalog.
  • After adding a target country, currency or language.
  • After changing attribute rules or supplemental sources.

The routine

  1. Pick a fixed sample of products (practitioner tip: 10 to 20, including a variant product, a sale item, an out-of-stock item and a recent addition).
  2. For each, compare id, title, price, sale price, availability, image and link in Merchant Center with the live landing page.
  3. Check the page’s structured data carries the same price, currency and availability, in the initial HTML.
  4. For attribute rules, use Test rules and the draft preview before applying, then reprocess the data source.
  5. Check Needs attention over the next few days for new issues, and use View history to see when a status changed.
  6. Note what changed and when in a change log.

Suggested attribute values in Needs attention should be checked against your landing page before you accept them. Google notes that accepted fixes override later changes from other methods, such as file uploads.

Ongoing monitoring

Practitioner suggestion for a simple cadence:

How oftenWhat to check
WeeklyNeeds attention summary cards, new issues, products with high click potential that are disapproved or limited
MonthlyAnalytics > Products: impressions, clicks and click-through rate by product, brand and category; products with zero impressions
QuarterlyFull run through this checklist, including a fresh sample of landing pages

Zero impressions can mean a product isn’t approved yet, or simply low traffic, according to Google’s performance documentation.

When to get help

If the checklist turns up problems you can’t trace to a source system, or the same issues return after each fix, an outside review can save time. Our product feed optimization service runs this kind of audit and fixes issues at the source. For broader account problems, see our disapproval service.

Frequently asked questions

What should I check first when optimizing a product feed?

Start with issues that can stop products or put the account at risk: price and availability matching the landing page, landing pages that load, and required attributes. Then improve titles, identifiers and product detail.

How do I QA a product feed?

Compare a fixed sample of products in Merchant Center with their live landing pages and structured data after every change, test attribute rules before applying them, and watch Needs attention for new issues.

How many characters should a Google Shopping title be?

Titles can be 1 to 150 characters. Google says users usually notice the first 70 characters or fewer, so put the most important details first.

Do I need GTINs for every product?

Only where the manufacturer assigned one. Products with an assigned GTIN submitted without it may have limited visibility; products without one use brand plus MPN, or identifier_exists = false if they have no identifiers.

Can I accept Google’s suggested attribute values?

You can, but check them against your landing page first. Accepted fixes override later changes from other methods such as file uploads.

Want a second pair of eyes on your feed?

We run a full feed audit against your website and Google’s requirements, then fix the root causes we find.

Sources

Last reviewed October 10, 2026 against the official documentation listed above. Google changes Merchant Center features and policies regularly — always confirm details in your own account.

Similar Posts