Merchant Center reports “Invalid value [gtin]” when the value is not a valid GTIN: it must be 8, 12, 13 or 14 digits (UPC, EAN, JAN, ISBN) with a correct check digit. Replace it with the number under the product’s real barcode, or leave the field empty and set identifier_exists to false if the product has none.
| Shown in Merchant Center as | Invalid value [gtin] |
|---|---|
| Attribute | gtin |
| Effect | Product disapproved |
| Where to find it | Products → Needs attention, then filter by this issue |
| Free check | Reported by the free feed check |
What Merchant Center means by “Invalid value [gtin]”
A GTIN is the number under a product’s barcode, and it has a shape: 8, 12, 13 or 14 digits (EAN-8, UPC, EAN-13, ITF-14), or the 13-digit form of an ISBN, with a final check digit computed from the others. Google’s help page for the issue says the value must be a number of one of those lengths, spaces and dashes ignored, and the gtin specification adds that Google validates the check digit. A value that fails either test is “Invalid value [gtin]”, and the product is disapproved until the field is corrected: Google’s page on unique product identifiers says any value other than the one assigned by the manufacturer “will cause your product to be disapproved”.
This is different from a missing GTIN and from an incorrect one that is well-formed but belongs to another product. Invalid means the string could not be a GTIN at all.
Why it happens
- A dropped leading zero. Spreadsheets store 012345678905 as a number and write it back as 12345678905, eleven digits, which is no length Google accepts.
- A SKU in the GTIN field. Internal codes such as
TS-BLK-Mor10045mapped togtinbecause the export’s default mapping put the wrong column there. - Placeholders.
0000000000000,N/A,1234567890123entered to satisfy a required field in a supplier system. - A typo in one digit, which the check digit catches.
- Two barcodes in one cell, or a barcode with a trailing note.
How to fix it
In Shopify
The field is Barcode (ISBN, UPC, GTIN, etc.) on each variant. Filter Needs attention to this issue, download the list, and correct the barcode on those variants, reading the number off the packaging or the supplier’s data sheet. For a bulk fix, Products → Bulk edit with the Barcode column, and paste from a spreadsheet whose barcode column is formatted as text so zeros survive. Shopify’s Google & YouTube channel and our integration both send the barcode as gtin.
In WooCommerce
Since WooCommerce 9.2 the product’s Inventory tab has a GTIN field, and each variation has one among its own settings; from 9.3 on, it is labelled GTIN, UPC, EAN, or ISBN. Put the real barcode there and leave SKU for your internal code. Our free connector reads that field, or the GTIN Google for WooCommerce stores, falling back to the parent product’s, and leaves out a value with a wrong length or check digit, or a placeholder such as all zeros; a product without a valid GTIN goes out without gtin and without identifier_exists.
In a CSV or XML feed
Format the GTIN column as text before anything else, so leading zeros are kept. Validate every value: length 8, 12, 13 or 14 and a correct check digit (any online GS1 check-digit calculator will do for spot checks; for a whole column, a spreadsheet formula). Values that are not barcodes go into mpn if they are the manufacturer’s part number, or nowhere. For products that genuinely have no barcode, leave gtin empty and set identifier_exists to false.
How long until Merchant Center clears it
Corrected values are validated on the next feed fetch, and Google’s help page says the changes may take 24–72 hours to be reflected on the “Needs attention” page. For a product whose barcode you do not know yet, Google’s gtin page says “When in doubt don’t provide a GTIN”; the same page says a product that has a GTIN assigned and is submitted without it could be disapproved.
What FeedRobin does about it
The free check validates every GTIN in the feed the way Google does, by length and check digit, and treats an invalid value as absent, so the report’s “no valid barcode” count includes them. We drop invalid codes from the feeds we serve automatically, which means a connected store never sends Google a malformed GTIN and never gets this disapproval; the product is listed as missing a barcode on your dashboard instead, with the fix pointing at the store field above. We never invent a number to fill the gap: a made-up GTIN matches your product to someone else’s listing, which is worse than none.
Questions merchants ask
I copied the barcode from the product. Why is it invalid?
The most common causes are a missing or extra digit, a leading zero dropped by a spreadsheet, or a number that is not a GTIN at all: an internal SKU, a supplier code, or a UPC for a different pack size. Type the number into GS1’s check-digit calculator to see which.
Is an 11-digit UPC valid?
No. A UPC-A is 12 digits. Spreadsheets drop the leading zero and turn 012345678905 into 12345678905, which Google rejects. Format the column as text or pad the value back to 12 digits.
Can I use the same GTIN for all sizes of a product?
No. Each variant has its own GTIN. Reusing one across variants is reported separately and is worse than leaving the field empty, because it matches your product to the wrong catalogue entry.
Sources
- How to fix: Invalid value [gtin] — Google Merchant Center Help
- GTIN [gtin] — Google Merchant Center Help
- GS1: Global Trade Item Number (GTIN)
- About unique product identifiers — Google Merchant Center Help
- WooCommerce 9.2: Pre-release updates (global_unique_id field)
- WooCommerce source code (9.3.0): GTIN, UPC, EAN, or ISBN label
- WooCommerce source code (11.2.1): Inventory tab
- WooCommerce source code (11.2.1): variation fields