WooCommerce powers a significant slice of UK ecommerce. Flexible, open-source, and deeply customisable — which is exactly what makes its native Google Shopping integration frustrating to manage at scale.

Why the native Google integration falls short

WooCommerce's built-in Google Listings & Ads plugin gets products into Merchant Center, but with real limitations: it doesn't pull custom attributes (where most stores put GTIN/EAN data), has no rules engine, doesn't support custom labels, and handles variable products inconsistently. For more than a few hundred products, you need a dedicated approach.

How WooCommerce data maps to Google Shopping fields

  • Product nametitle (usually needs optimisation)
  • Product descriptiondescription (HTML-heavy — needs stripping)
  • Regular priceprice
  • Sale pricesale_price
  • Featured imageimage_link
  • SKUid
  • Custom attribute 'Brand'brand
  • Custom attribute 'GTIN' or 'EAN'gtin
  • Stock statusavailability

The GTIN problem specific to WooCommerce

WooCommerce doesn't have a built-in EAN/barcode field. Most stores add GTINs via a custom product attribute named 'GTIN' or 'EAN', a dedicated plugin, or ACF. The key is telling your feed tool which field to read the GTIN from. Trajekt pulls all WooCommerce custom attributes via REST API and lets you map any attribute to the gtin field. Most stores can achieve 90%+ GTIN coverage this way.

Variable products — the most common mistake

WooCommerce variable products (parent + children per size/colour) need to appear as separate rows in your feed, each with a unique id and a shared item_group_id matching the parent. When only the parent is included, Google sees no size or colour variants — limiting match potential. Trajekt pulls WooCommerce variations correctly via the REST API.

Description HTML cleanup

WooCommerce descriptions frequently contain HTML, shortcodes, inline styles, and page builder markup. Google Shopping descriptions must be plain text. Strip all HTML before output. Short descriptions in WooCommerce are often cleaner — consider using them as your Shopping feed description source.

Setting up the WooCommerce REST API for Trajekt

  1. WooCommerce > Settings > Advanced > REST API > Add Key
  2. Set Permissions to Read. Copy the Consumer Key and Consumer Secret
  3. In Trajekt: Add Store > WooCommerce > store URL + credentials

WooCommerce to every channel — automatically

Trajekt connects via WooCommerce REST API and generates feeds for Google Shopping, ChatGPT, Meta, TikTok, and more. No plugin installation needed.

Start free →

Common WooCommerce-specific disapprovals

Missing GTIN: Map your EAN/barcode custom attribute to the gtin field. For products without barcodes, set identifier_exists: no.

Price mismatch: WooCommerce sale prices with expiry dates — if the sale expires and your feed hasn't updated, Merchant Center sees a different price. Daily updates prevent this.

Product URLs returning redirects: If you've changed your WooCommerce permalink structure, old product URLs may 301 redirect. Ensure your feed uses current canonical URLs.