> Skip to main content
🔢 Product Identifiers

GTINs, EANs, MPNs — the complete UK guide

Product identifiers — GTINs, EANs, MPNs, ISBNs — are the plumbing of product feeds. Get them right and your Google Shopping match quality improves dramatically. Get them wrong and you get disapprovals, missed impressions, and wasted ad spend. This is the definitive UK guide.

✓ Auto-mapped from product barcodes✓ Format validation included✓ Disapproval prevention✓ UK EAN format support
13
digits in a standard UK/European EAN barcode (EAN-13)
30%
improvement in match quality when GTINs are submitted correctly
60%
of Google Shopping disapprovals involve incorrect or missing identifiers
0
unique GTINs should ever appear more than once in your feed

Features

GTIN, MPN & EAN

🔢

EAN auto-mapping

Trajekt automatically maps your Shopify or WooCommerce product barcodes to the gtin field in your feeds — no manual entry required.

Format validation

Trajekt validates that GTINs are numeric, the correct length (8, 12, 13, or 14 digits), and pass the checksum algorithm before submission.

🏷️

identifier_exists handling

For handmade, custom, or vintage products without GTINs, Trajekt sets identifier_exists: no correctly — preventing the disapproval that occurs when Google can't find a matching GTIN.

📦

MPN fallback

When no GTIN is available, Trajekt can use your SKU or internal product code as the MPN (Manufacturer Part Number) — providing Google with a fallback identifier.

🔍

Lookup validation

Trajekt cross-checks submitted GTINs against known format rules and flags barcodes that appear to be corrupted or truncated.

📊

Multi-channel

GTINs submitted in your Google Shopping feed are also mapped correctly to Meta, Amazon, eBay, Kelkoo, and Idealo — all requiring the same barcode data in their own formats.

FAQ

Frequently asked questions

A GTIN (Global Trade Item Number) is a unique product identifier — essentially a structured barcode number. GTINs encompass several different formats: EAN-13 (most common in UK/Europe, 13 digits), UPC-A (US/Canada, 12 digits), ISBN (books, 10 or 13 digits), ISSN (periodicals, 8 digits), ITF-14 (shipping containers, 14 digits), and EAN-8 (small products, 8 digits). In UK ecommerce, EAN-13 is by far the most common.
These are all types of product identifiers that fall under the GTIN umbrella: EAN (European Article Number, 13 digits) is standard in the UK and Europe. UPC (Universal Product Code, 12 digits) is standard in North America. ISBN (International Standard Book Number) identifies books. ISSN identifies periodicals. All of these can be submitted in the gtin field in Google Shopping — Google accepts any valid GTIN format.
If your products have barcodes from a manufacturer (i.e. you're reselling branded goods), you should always include the GTIN — it significantly improves Google Shopping match quality and impression share. If you manufacture your own products, you may have registered GTINs via GS1 UK, or your products may genuinely have no GTIN. Custom, handmade, or vintage items typically have no GTIN.
identifier_exists: no tells Google that your product doesn't have a GTIN or MPN — for example, custom-made jewellery, vintage clothing, or craft products. Without this field, Google assumes your product should have a GTIN and may disapprove it when one isn't provided. Only set identifier_exists: no for products that genuinely have no manufacturer identifier.
MPN (Manufacturer Part Number) is the product code assigned by the manufacturer — different from the consumer-facing barcode. MPNs are typically alphanumeric (e.g. BC1408NY2) and specific to the manufacturer's product line. If your product has no GTIN but does have an MPN (common in automotive parts, electronics components, and B2B products), submit the MPN along with brand as an alternative identifier.
On the product itself: the barcode printed on the packaging. From the manufacturer or distributor: product catalogues and data sheets. From your supplier's product data feed. Online databases like Open Food Facts (food products), Book Depository (books), or GS1 Company Database (gs1uk.org). Your ecommerce platform's product data (Shopify stores the barcode in the product's "Barcode" field).
UK businesses register for GTINs through GS1 UK (gs1uk.org). GS1 assigns you a company prefix (the first 7-9 digits) and you then create unique product numbers within that prefix. GS1 UK membership starts from £119/year for small businesses and includes a company prefix for up to 10 products. Each additional product range increases the membership level.
If you submit a GTIN that doesn't pass the checksum algorithm, Google will reject it with a "Invalid GTIN" error. If you submit a GTIN that exists in Google's database but belongs to a different product (wrong barcode), Google may match your listing to the wrong product in its Shopping catalogue, showing incorrect information. Always verify your barcodes are accurate.
Yes. ISBNs are valid GTINs for books. Submit the ISBN-13 (EAN format, 13 digits starting with 978 or 979) in the gtin field. ISBN-10 should be converted to ISBN-13 before submission. For books, gtin is strongly recommended as Google matches editions and formats using ISBN data.
Products with correct GTINs typically see: better match quality (more relevant query triggering), improved Quality Score equivalents, higher impression share, eligibility for rich product cards in Google Shopping, and inclusion in Google's product knowledge graph for popular products. Products without GTINs (where one should exist) have reduced visibility.
Trajekt automatically maps the barcode field from your Shopify (Barcode), WooCommerce (Product GTIN field or custom attribute), or XML feed to the gtin field in your output feeds. Trajekt validates the format (correct digit count, passes checksum) and flags invalid barcodes before submission. For products without barcodes, Trajekt can set identifier_exists: no based on your rules.

Stop GTIN errors costing you Google Shopping performance

Trajekt automatically maps your product barcodes to the gtin field, validates the format, and handles identifier_exists correctly — no manual work required.