Missing GTIN in Google Merchant Center: What AI Can and Can't Fill

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Missing GTIN in Google Merchant Center: What AI Can and Can't Fill.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Missing GTIN in Google Merchant Center: What AI Can and Can't Fill.

No: AI should never fill in a missing GTIN, because it is an assigned number, not a guessable one. Google says to give a GTIN only if you are sure it is correct, and incorrect identifiers can get products disapproved. Take real numbers from the maker, supplier or packaging; where none exist, use Google's no-GTIN route or GS1.

What AI can do is the tedious work around the numbers: matching your product rows to a supplier's spreadsheet, spotting rows where the number is missing, wrong in length or fails its check digit, and drafting the email that asks a supplier for the missing codes. The split is simple. AI sorts and compares, and the numbers come from a source that assigned them.

Follow me on Instagram@sagnikteaches

Why a guessed GTIN does damage

A GTIN (Global Trade Item Number) is the number under a barcode. It identifies one product in one pack from one brand. Google uses it to recognise that your listing and a competitor's are the same item, to group offers and to show the product in the right place. Three things go wrong with an invented or wrong number:

Connect on LinkedInSagnik Bhattacharya
  • Disapproval. Google's guidance on unique product identifiers says not to make up, guess or borrow values from similar products, and that incorrect identifiers can get products disapproved.
  • Wrong product matched. A number that happens to be valid belongs to another product. Your listing could be matched to it, with the wrong image, brand or reviews attached.
  • Account trust. Repeated bad data makes a feed harder to fix later and a review harder to pass.

A model asked "what is the GTIN for this blender?" will produce a number with the right number of digits and a confident tone. It has no barcode database to read from. Some of its guesses will fail the check digit and some will pass it and still be wrong, which is worse, because a passing number does not warn you.

Subscribe on YouTube@sagnikteaches

What Google says, in the points that matter

From Google's Merchant Center Help pages on unique product identifiers and on the GTIN, brand, MPN and identifier_exists attributes (checked November 2026):

  • A GTIN is strongly recommended where the maker assigned one, but not every product has one. Products that have a GTIN but are submitted without one may have limited visibility.
  • "Only provide a GTIN if you're sure it's correct. When in doubt don't provide a GTIN (for example, don't guess or make up a value)."
  • Valid GTINs must pass the GS1 check-digit test and must not sit in the restricted ranges (prefixes 02, 04 or 2) or the coupon ranges, which the GTIN page lists as 05, 98 and 99.
  • Spaces and dashes are accepted but ignored. Convert 8-digit UPC-E codes to 12-digit UPC-A, and ISBN-10 to ISBN-13.
  • For a multipack or bundle the maker created, use the identifiers of the multipack or bundle. For a multipack you put together, use the individual product's identifiers; for a bundle you put together, use the main product's.
  • For customised or engraved products that have a manufacturer-assigned GTIN, submit the GTIN and use the bundle attribute to show customisation.
  • The manufacturer part number (MPN) is required for products without a manufacturer-assigned GTIN and optional for custom-made products with no clear MPN. Unless you are the manufacturer, use only the maker's MPN, never one you created.
  • Brand is required for any product with a clearly associated brand, and for products where the seller is also the maker; it is optional for products without one, such as movies, books and music. Google says not to guess or make up a brand, so a placeholder such as "Generic" has no place there.
  • If you make the product, are its only seller and it has no official brand, the brand page says to use your store name as the brand and an MPN of your own choosing, instead of setting identifier_exists to false.
  • identifier_exists is recommended for products with no GTIN, MPN or brand, such as one-of-a-kind goods and items made before GTINs existed. Set it to no only if you are certain no identifiers were assigned; a product set to no where there is evidence an identifier exists gets a warning.

Google's pages overlap on one point. The identifier_exists page uses a hand-knitted scarf as its example of a no-identifier product, while the brand page tells a maker-seller to use the store name and its own MPN. For goods you make, the brand-and-MPN route is the more specific instruction; read both pages before changing hundreds of rows.

Google's "Find a GTIN" help page also says that not all products have a GTIN, that you can ask the manufacturer for it, and that if you use a third party to find GTINs you should verify its legitimacy.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Where the real numbers come from

  1. The packaging. The number is printed under the barcode. For a small catalogue, scanning with a phone barcode reader is faster than typing.
  2. The supplier's product file. Most wholesalers and distributors hold GTINs (often called EAN or UPC) in their price files or data sheets. Ask for the column.
  3. The manufacturer. For goods you resell, the maker assigned the number. Ask the brand's trade team or support contact.
  4. Your own assigned numbers, from GS1. If you make a branded product, GS1 issues GTINs through local member organisations in more than 120 countries: you join, receive a company prefix and create numbers from it. GS1 describes itself as the only official provider of GS1 GTINs. Each local office sets its own fees, which depend on membership and how many numbers you need, so read its current terms before deciding. Do not buy numbers from a seller you cannot verify.
  5. Book identifiers. For books, the ISBN is the GTIN. Convert ISBN-10 to ISBN-13 as above.

If your goods are items you make yourself and do not sell through channels that require barcodes, you may not need GTINs at all. The question to settle is what each sales channel actually requires, and that is answered by reading its requirements and, for Google, the identifier guidance above.

What AI can do safely in a feed

Match your rows to a supplier file

A common situation is two files: your product export, with names and SKUs, and a supplier's sheet, with their codes and GTINs. A model can help you build the lookup. The rule is that the match is on a shared key such as supplier SKU or manufacturer part number, not on a product name guess, and any row it cannot match on a key goes to a "no match" list.

I have two tables. TABLE A is my products: sku, title, brand, mpn. TABLE B is my supplier's price file: supplier_sku, description, gtin. Match rows by mpn = supplier_sku ONLY. Do not match on titles or descriptions. Output: (1) matched rows with sku, mpn, gtin; (2) rows from A with no match; (3) rows where more than one B row matches; (4) any gtin in B that is not 8, 12, 13 or 14 digits. Do not invent or alter any gtin.

Illustrative result: of 120 rows, 100 matched, 17 had no match (the supplier file did not list them), 3 matched twice (a size variant sharing an MPN), and 4 of the matched supplier GTINs had 11 digits, probably with a leading zero dropped by the spreadsheet. The last is typical: spreadsheet software strips leading zeros from numbers, and a 12-digit UPC starting with 0 turns into 11 digits. Format the column as text before pasting. Do not ask the assistant to "fix" the 11-digit ones by adding a zero; a check against the supplier's original file shows whether a zero was lost or a digit.

Test every number's check digit

A GTIN's last digit is a check digit, worked out from the others. You can test it with a spreadsheet formula, and you can ask an assistant to write one for your column layout. The rule for a 12-digit code: working from the right, starting with the digit next to the check digit, multiply digits by 3, 1, 3, 1 and so on, add them up, and the check digit is whatever brings the total to the next multiple of 10.

A worked check using a sample number, for illustration only (do not use it in a feed): 036000291452. Take the first eleven digits, 0 3 6 0 0 0 2 9 1 4 5, and from the right multiply by 3, 1, 3, 1…: 5 by 3 is 15, 4 by 1 is 4, 1 by 3 is 3, 9 by 1 is 9, 2 by 3 is 6, 0, 0, 0, 6 by 3 is 18, 3 by 1 is 3, 0 by 3 is 0. The total is 58, the next multiple of 10 is 60, so the check digit is 2. It matches the last digit, so the number is valid. Change the last digit to 3 and it fails. The test says only that the number is internally consistent, not that it belongs to your product, which is why a valid-looking number from an assistant proves nothing.

Write a Google Sheets formula, or a short set of helper columns, that tests whether the value in column D is a valid GTIN-12, GTIN-13 or GTIN-14 by the standard check-digit method. D is formatted as text. Return VALID, INVALID or WRONG LENGTH. For 12- and 13-digit codes, also pad the value to 13 digits with leading zeros and return RESTRICTED if the padded value starts with 2, 02 or 04, and COUPON if it starts with 05, 98 or 99. Then give me five test values, with the answer each should return, which I can check by hand.

As in other uses of an assistant for spreadsheet formulas, ask for test values with known answers, and check them by hand before running the column.

Draft the supplier request

Draft a short email to a supplier asking for GTINs (barcode numbers) for the attached list of 17 SKUs. Say I need them for a product feed. Ask them to confirm the numbers are the manufacturer-assigned ones and to say which products have no barcode. Under 90 words, polite, plain. Use [first name] and [your name].

That email is the best use of an hour in the whole job: a supplier can answer 17 rows in a few minutes, and the answer is authoritative.

When the right answer is no GTIN at all

Some products never had one. Handmade goods, one-off pieces, custom prints, vintage items and own-made products without a barcode programme come to mind. For these, leave the GTIN out. If you made the product, Google's brand page says to use your store name as the brand and an MPN of your own choosing rather than setting identifier_exists to false; that is the one case where Google lets you create a part number. If the product has no assigned identifiers and you did not make it, such as a vintage piece or an unbranded item bought in without codes, set identifier_exists to no. Never borrow a number from a similar product or put a placeholder such as "Generic" in the brand.

Product typeGTINBrandMPNidentifier_exists
Resold branded applianceFrom maker or supplierMaker's brandMaker's MPN; required if no GTINLeave unset
Own-brand product with GS1 numberYour assigned numberYour brandYour own codeLeave unset
Product you make, no barcode (including handmade)NoneYour store name or brandA unique code of your choice, as the makerLeave unset
Vintage piece or unbranded item bought in, no codesNoneThe maker's, only if clearly knownNoneno
Engraved version of branded productThe branded product's GTINMaker's brandMaker's MPN if knownLeave unset; use the bundle attribute
BookISBN-13OptionalNot neededLeave unset

The table follows the same Google pages. Verify against the current pages for any case that matters to your account. Products without identifiers may show with less prominence than those with them; I have no figure for how much, so I will not guess one.

A 340-product feed with 58 identifier problems, cleared

An illustrative home and lighting retailer has 340 products and a Merchant Center diagnostics list showing missing or invalid identifiers on 58. The work, in order:

  1. Export the 58 rows with sku, brand, mpn, current gtin, supplier name. Time: 10 minutes.
  2. Run the check-digit and length test. Result: 9 rows have a GTIN that fails or is the wrong length and 49 have none, so all 58 need a sourced number or a no-GTIN decision. Time: 10 minutes.
  3. Set aside the products the shop makes. 6 of the 58 are the retailer's own lampshades, made to order, with no barcode. Time: 5 minutes.
  4. Match the other 52 to supplier files by MPN. Two suppliers' files cover 43 of them. The matching prompt finds GTINs for 35; 8 rows have no match. The remaining 9 come from suppliers who sent no file. Time: 30 minutes including cleaning leading zeros.
  5. Verify a sample. Check 10 of the 35 against the product packaging or the maker's site. Nine agree; one is a variant with a different pack size. The mismatch makes the team check all 35 against the supplier's original file. Time: 40 minutes.
  6. Send the supplier request for the 17 rows still without a number (8 unmatched, 9 with no file). Time: 10 minutes; answers arrive over a few days.
  7. Handle the own-made rows. For the 6 lampshades, follow Google's maker guidance: the shop's name as brand, the shop's own product code as MPN, no GTIN. Time: 10 minutes.

Total: about two hours of work to clear 58 rows, plus a wait for suppliers. The assistant took the sorting and the draft. It never produced a number. Compare this with the shortcut of pasting product names into a chatbot and asking for barcodes: it would have taken ten minutes and put 58 unverified numbers into a live feed.

Feed check steps before you upload

  1. Format identifier columns as text so leading zeros survive.
  2. Remove spaces and dashes from every GTIN cell.
  3. Test length: 8, 12, 13 or 14 digits; convert 8-digit UPC-E and ISBN-10 as described above.
  4. Test the check digit on every row; list failures.
  5. Test prefixes: with 12- and 13-digit codes padded to 13 digits, nothing starting 2, 02 or 04 (restricted ranges) or 05, 98 or 99 (the ranges Google lists for coupons).
  6. Find duplicates: the same GTIN on two different products is a mistake unless the products are the same item; a different colour of the same product needs its own GTIN from the maker.
  7. Check variants: sizes and colours each have their own number; copying a parent's GTIN down to variants is a classic error.
  8. Check brand and MPN. Brand is the maker's brand, not your shop's, for resold goods; MPN is the maker's part number, or your own code only for products you make.
  9. Set identifier_exists only for products with truly no identifiers.
  10. After upload, open the Diagnostics area in Merchant Center and read any issue about identifiers on the rows you touched.

The first time through a feed, repeat steps 1 to 7 on a copy before you touch the live data. For a wider look at feed problems after a change in how shopping results are shown, see Merchant Center fixes for a small store, and for cleaning supplier files before they become feed data, supplier sheet to import file. If your product data is thin in other ways (missing descriptions, materials, sizes), product data enrichment shows what AI can add from your own documents.

More cases that trip people up

Multipack and bundle confusion

A shop sells a pack of three candles, which the maker sells singly. Google treats several identical items sold as one product as a multipack. If the maker sells a three-pack with its own GTIN, use the three-pack's identifiers. If you put three single candles together yourself, Google says to submit the single candle's GTIN, MPN and brand and show the count with the multipack attribute. A bundle is different: a main product plus accessories, such as a candle with a holder, and a bundle you assemble uses the main product's identifiers. Who created the pack decides the answer, so ask the maker, not the assistant.

The 11-digit number

A column of numbers pasted from a PDF lost its leading zeros, so a UPC that should read 012345678905 shows as 12345678905. The length test fails, which is right, and the supplier's own file shows the zero. Add it back only after confirming against that file, and set the column to text before the next paste.

Mistake: one GTIN copied down a whole range

An illustrative retailer selling a lamp in four colours used the first colour's GTIN for all four to clear a warning. The warning went away, but the feed now claimed that four different products were one item, which breaks Google's rule that each colour or size variant carries its own GTIN. The maker had four numbers; one email got them. The signal to look for is duplicates in the GTIN column, which a pivot or a duplicate count finds in a minute.

Before and after: a feed row

Before: title "Table lamp", brand "Generic", gtin "1234567890123" typed to silence the error. After: title "Ceramic table lamp, ivory, 45 cm", brand left empty because the lamp was bought in unbranded from a wholesaler that assigns no codes, no gtin, identifier_exists "no". The second row is honest, and for a bought-in product with no assigned identifiers it is what the guidance describes. Had the shop made the lamp itself, the row would instead carry the shop's name as brand and its own product code as MPN.

Keeping the numbers clean from now on

Most missing-GTIN backlogs are created at the moment a product is added, so the cheapest fix is a rule for new products. Add a required "GTIN or reason" column to your product intake sheet: either a number with its source (supplier file, packaging, GS1) or a stated reason such as "handmade, no barcode". A row with neither does not go into the feed. The source column matters more than it looks, because six months later, when a number is challenged, you can tell where it came from in seconds.

Run the length, check-digit and duplicate tests monthly on the whole feed, not just on new rows, since supplier files get re-exported with the zeros stripped and a quiet corruption can reach live data. A saved sheet with the formulas from the check-digit prompt turns the monthly test into a paste and a glance at the INVALID count.

Reading the diagnostics after the upload

A day or two after the upload, open the diagnostics and look at three things: the count of products with missing identifier warnings, the count of disapprovals for invalid GTINs, and any product moved to limited visibility. Write the counts down before and after, per batch. If disapprovals rise after you added numbers, look first at the check-digit test and then at variant rows. For the same discipline applied to marketplace fields filled by AI, checking eBay item specifics against sold data uses a similar approach: let the tool draft, then check each field against an independent source.

Questions about missing and invalid GTINs

Can I put a made-up GTIN in so the warning goes away?

No. Google says to provide a GTIN only if you are sure it is correct, never to guess or make one up, and warns that incorrect identifiers can get products disapproved. A guessed number can also belong to someone else's product. If you have no GTIN, leave the field out and follow the no-GTIN guidance instead.

Can AI look up GTINs from product names?

It can suggest numbers that look right and are wrong, because it is not a barcode database. Use it to match your rows to supplier files and to flag rows that need a lookup. A number has to come from the maker, your supplier, the packaging or the issuing body.

When do I set identifier_exists to no?

Only when you are certain the product has no assigned identifiers, such as a one-off vintage piece or an unbranded item bought in without codes. Google gives a warning where it is set to no and there is evidence an identifier exists. If you made the product yourself, Google's brand guidance prefers your store name as the brand plus your own MPN.

Do I need my own GTINs if I make the product?

Only if a sales channel needs a barcode. GTINs come from GS1 through its local member organisations, which assign you a company prefix; GS1 calls itself the only official provider, and Google says to verify any third party you use. For Google alone, a maker who is the only seller can use its store name as brand plus its own MPN instead.

What does a check digit do?

The last digit of a GTIN is calculated from the others. A number whose last digit does not fit the others is invalid, and Google requires valid GTINs. A spreadsheet formula can test every row, which catches typos and truncated numbers before upload.

Further reads

Sources: Google Merchant Center Help pages on unique product identifiers, the GTIN, brand, MPN and identifier_exists attributes, and finding a GTIN; GS1 pages on getting barcodes and on company prefixes (all checked November 2026). No GS1 fees are quoted because each local office sets its own.

Want your product feed checked properly?

On a 1:1 call we can look at where your product data comes from, set up a repeatable check for identifiers and prices, and decide which fixes are worth automating.

Book a 1:1 call with me