The symptom
- Merchant Center warnings *Missing GTIN* / *Limited performance due to missing identifiers*.
- Schema shows no
gtin13,gtin,gtin8,gtin14ormpnfield. - Products imported from a supplier CSV that did not include barcodes.
Why it matters
A GTIN (the 13-digit EAN on the barcode) is the global identity of a product. Google uses it to place your offer on the product’s comparison page; AI assistants use it to confirm that your "Bosch GSR 12V-35" is the same item they found elsewhere, and to trust your price.
Since 2025 Google treats missing identifiers as a quality issue for branded products; unbranded or custom goods can declare identifier_exists = no instead.
How to check it yourself
- Open a product in WordPress admin → Inventory tab. WooCommerce 9.2+ has a native GTIN, UPC, EAN or ISBN field. Is it filled?
- Rich Results Test → Product →
gtin13/mpn. - Merchant Center → Products → Needs attention → identifier issues.
How to fix it
- Collect codes: from supplier price lists, packaging barcodes, or the manufacturer’s site. For own-brand products, buy GS1 codes; do not invent numbers.
- Enter them in the WooCommerce GTIN field (bulk import via CSV column
GTIN, UPC, EAN, or ISBNor the REST APIglobal_unique_id). Older stores can use Rank Math’s or Yoast’s GTIN fields, or a *Product GTIN* plugin. - Confirm the SEO plugin outputs the value as
gtin13(13 digits) orgtinin schema, and map the same column togtinin your Google/Microsoft/OpenAI feed. - Where a product genuinely has no GTIN, output
mpn+brandand setidentifier_existsto no in the feed.