· Updated · 11 min read

Barcode Country Codes: What the First Digits Actually Tell You

Every few months a post goes around explaining that the first three digits of a barcode reveal which country a product was made in, usually with a table attached. The table is real. The conclusion is wrong, and GS1 — the organisation that issues the numbers — says so directly. Here is what the prefix actually records, why the difference matters, and where country of origin is genuinely written down.

There is a claim about barcodes that resurfaces every year or two, usually attached to a screenshot of a table and an instruction to check before you buy. The first three digits, it says, tell you which country the product was made in. 690 means China. 729 means Israel. 471 means Taiwan. Check the number, know the origin.

The table in those posts is usually accurate. The conclusion drawn from it is not. The prefix is real, it is published, and it does map to countries — but what it maps to is the GS1 member organisation that issued the number to the brand owner, which is a fact about a company's paperwork rather than a fact about a factory. GS1, the not-for-profit that administers the system, states the position without hedging: the GS1 prefix does not indicate that a product was manufactured in a specific country, and the product may have been produced anywhere in the world.

This is worth getting right in both directions. The prefix is not useless — it tells you something real, and there are situations where it is exactly the thing you want to know. It just does not answer the question people most often ask it.

The Short Answer

  • The prefix identifies the issuing registry, not the origin. It records which national GS1 member organisation allocated the company prefix the number was built from.
  • Companies register where their business sits, and manufacture wherever they like. The barcode does not change when production moves between countries, because nothing about the number depends on the factory.
  • Several prefix ranges are not countries at all. 978 and 979 are books, 977 is a serial publication, and the 20–29 and 200–299 ranges are numbers a single shop prints for itself.
  • Country of origin is a customs determination, based on where the last substantial transformation happened, and it appears on the packaging because the law requires it there.
  • The GS1 system does have a real origin field — application identifier (422), on trade packaging. It is simply not the retail prefix.

You can check any number against the published allocation with our barcode prefix checker, which reports the issuing organisation and says plainly what that does and does not establish.

What the Prefix Actually Is

A retail barcode number — a GTIN — is built in layers. Take a 13-digit EAN-13 apart and you get three components and a piece of arithmetic:

PartAssigned byWhat it identifies
GS1 prefix (first 2–3 digits)GS1 Global Office, to member organisationsWhich GS1 member organisation issued the company prefix
Company prefix (continues the number)A GS1 member organisation, to a businessWhich company licensed this block of numbers
Item referenceThe company itselfWhich product, size or variant
Check digit (last)Nobody — it is calculatedWhether the other digits were read correctly

The prefix and the company prefix are not really separate fields. A company is issued one continuous company prefix, and the leading digits of that prefix happen to fall in the range administered by whichever GS1 member organisation issued it. That is the entire mechanism. The "country code" is a side effect of how number capacity was divided up between national organisations, not a deliberate origin marker.

A useful comparison: the first digits of a payment card number identify the issuing bank. Nobody concludes from a card number where the cardholder is standing. The barcode prefix works the same way, and invites the same category error.

Why Registration Country Is Not Manufacturing Country

Once you see the mechanism, the gap is obvious. A company applies to a GS1 member organisation — normally the one for the country where the business is established — and receives a company prefix. From that moment the prefix is fixed. The company can:

  • manufacture in a different country from day one;
  • move production between countries, repeatedly, without changing a digit;
  • use contract manufacturers in several countries for the same product;
  • be acquired by a business headquartered somewhere else entirely and keep the same numbers.

None of those events touch the barcode, because the barcode identifies the product and its brand owner, not its supply chain. A European food brand with a European prefix may source and pack in Asia. A company that registered in one market because it sells there may make everything at home. Both are ordinary, and both break the inference.

There is a second, less-known route to a mismatch. GS1 does not force a company to register with its local member organisation, and some businesses licence numbers from a GS1 organisation in a different country for commercial reasons. There is also a long tail of numbers sold on by resellers from company prefixes issued years ago, which can carry a prefix bearing no relationship to the current seller at all.

The Prefix Table, Correctly Labelled

Here are the main allocations. Read the column heading carefully: it says issuing organisation, and it means it. This is an abridged table covering the ranges most often asked about; GS1 publishes the authoritative and current list.

PrefixIssuing GS1 member organisation
000–019, 030–039, 060–139GS1 US
300–379GS1 France
400–440GS1 Germany
450–459, 490–499GS1 Japan
460–469GS1 Russia
471GS1 Taiwan
489GS1 Hong Kong
500–509GS1 UK
539GS1 Ireland
540–549GS1 Belgium & Luxembourg
570–579GS1 Denmark
590GS1 Poland
600–601GS1 South Africa
628GS1 Saudi Arabia
629GS1 United Arab Emirates
640–649GS1 Finland
690–699GS1 China
700–709GS1 Norway
729GS1 Israel
730–739GS1 Sweden
754–755GS1 Canada
760–769GS1 Switzerland
789–790GS1 Brazil
800–839GS1 Italy
840–849GS1 Spain
868–869GS1 Türkiye
870–879GS1 Netherlands
880GS1 South Korea
885GS1 Thailand
888GS1 Singapore
890GS1 India
893GS1 Vietnam
899GS1 Indonesia
900–919GS1 Austria
930–939GS1 Australia
940–949GS1 New Zealand

Allocations do change. Ranges are reassigned as member organisations merge, are created or are wound up — the range once held by GS1 Brunei, for example, reverted to central administration in 2021. Any table you find, including this one, is a snapshot.

The Ranges That Are Not Countries

A good deal of the confusion comes from ranges that have nothing to do with geography at all. If a lookup returns a country for one of these, the lookup is wrong.

Books and serials: 977, 978, 979

A barcode starting 978 or 979 is an ISBN-13 — the prefix is a notional "Bookland" country created so that book numbering could join the retail system. 977 is the equivalent for serial publications carrying an ISSN, and 979-0 is used for printed music. These identify a title, so no country is implied even loosely. Our GTIN converter handles the ISBN-13 to ISBN-10 relationship, which only exists for the 978 range.

Store-internal numbers: 20–29 and 200–299

These are restricted-circulation numbers. A supermarket prints them for loose produce, the deli counter, items weighed and wrapped in store, and own-brand packaging handled locally. They are not globally unique — two shops will happily use the same number for different things — and they are not registered to anyone. This is the single most common reason a barcode lookup returns nothing at all, a case covered further in our guide to looking up product information from a barcode.

Coupons and refunds

Ranges including 050–059, 981–984 and 990–999 are reserved for coupon identification, and 980 for refund receipts. A number in these ranges is a voucher instrument, not a product.

Centrally administered ranges

A few ranges sit with the GS1 Global Office rather than any national body, including allocations used for short GTIN-8 numbers. Again: real, published, and not a nationality.

Reading the Prefix From the Right Place

Even when the intent is right, the arithmetic often is not. The prefix is not simply "the first three digits printed on the pack" — where it starts depends on the format, and two cases catch people out constantly.

UPC-A has an invisible leading zero

A 12-digit UPC-A is a 13-digit GTIN whose leading zero is not printed. To read the prefix you have to restore it. The well-known UPC-A 036000291452 is analysed as 0036000291452, giving prefix 003. Slicing the first three printed digits gives 036, a different range. Both happen to resolve to GS1 US, which is precisely why this error survives unnoticed — it gives the right answer for the wrong reason, until it does not.

GTIN-14 starts with an indicator, not a prefix

The 14-digit numbers on cases and pallets begin with a packaging-level indicator describing the hierarchy level, followed by the GTIN-13 body. Read the first three digits of a GTIN-14 and you are reading the indicator plus two digits of the prefix, which produces a confidently wrong country. The prefix begins at the second digit.

The check digit comes first

Before any of this, confirm the number is a number. The final digit is calculated from the others, so a single mistyped digit usually breaks it, and a broken number may not carry the prefix you think it does. For 5901234123457, the weighted sum of the first twelve digits is 83, and 90 − 83 = 7, which matches the printed check digit. Our barcode validator does this across formats.

Where Country of Origin Is Actually Recorded

If the prefix does not answer the question, something does. Two places, depending on who is asking.

On the packaging, because the law requires it

Country-of-origin marking is a legal obligation in most major markets, and it is a customs concept rather than a branding one. In the United States, the marking rules under Title 19 of the Code of Federal Regulations define country of origin as the country of manufacture, production or growth, and provide that work done in a further country only changes the origin if it effects a substantial transformation. The European Union applies a comparable principle for non-preferential origin: under Article 60(2) of the Union Customs Code, goods originate where the last substantial, economically justified processing took place, in an undertaking equipped for that purpose.

The practical consequence is that origin is a determination about processing, made under rules that differ by jurisdiction and product, and the answer is printed on the pack. It is not derivable from a number, and it could not be — the barcode was assigned before anyone knew where the goods would be made.

In the GS1 data itself, as application identifier (422)

There is a genuine origin field in the GS1 system, and it is worth knowing about because it demonstrates the contrast. Application identifier (422) carries country of origin as an ISO 3166 numeric code inside a GS1-128 or GS1 DataMatrix symbol, typically on trade and logistics packaging. Related identifiers cover processing countries and full process chains. These are explicit, structured origin data, and they exist precisely because the retail prefix does not do that job. Our GS1 barcode decoder reads those identifiers out of a decoded string, and the format itself is covered in what GS1 DataMatrix is.

This is also the direction retail is heading. The two-dimensional codes arriving on consumer packaging under the GS1 Sunrise 2027 programme can carry structured attributes and link to authoritative product data, which is a far better answer to "where is this from" than any inference from a prefix.

Why the Claim Keeps Coming Back

The country-of-origin reading is durable for understandable reasons. The prefix genuinely does correlate with a country, often enough to feel confirmed: a great many companies do manufacture in the country where they registered, so spot checks appear to work. The table is real and easy to find. And the conclusion is satisfying — it promises a way to verify something about a product using only what is printed on it.

The claim tends to spike when consumers are looking for a way to act on where goods come from, and the prefix looks like a ready-made tool. Independent fact-checkers have addressed specific viral versions of it more than once, including a November 2023 PolitiFact check on claims about a particular prefix, and separate checks on assertions built around the 729, 841 and 871 ranges. The consistent finding is the same one GS1 publishes: the prefix identifies the issuing organisation, and inferences about manufacture from it are not supported.

A whole category of consumer apps is built on this inference, presenting a prefix-derived country as the product's origin. If you use one, read what it shows as the registration country, whatever label the app puts on it. The underlying data is fine; the interpretation is the problem.

None of which makes the prefix worthless. It tells you which registry issued a number, which is genuinely useful when you are checking whether a number was properly allocated, diagnosing why a lookup failed, or evaluating a barcode you are about to buy from a reseller. Those are the questions it can answer.

Frequently Asked Questions

Can you tell where a product was made from its barcode?

No. The barcode prefix identifies the GS1 member organisation that issued the number to the brand owner, which normally reflects where that company registered rather than where the product was manufactured. GS1 states directly that its prefixes do not identify a product's country of origin, because member companies may produce goods anywhere in the world. The country of origin is printed on the packaging because customs law requires it there, and that marking is the reliable source.

What does 690 mean on a barcode?

Prefixes in the 690–699 range were issued by GS1 China, so the brand owner registered its company prefix there. It does not establish that the product was manufactured in China, and a great many goods manufactured in China carry prefixes issued elsewhere — because the prefix follows the brand owner's registration, not the factory. Both halves of that matter: the prefix over-reports in one direction and under-reports in the other.

Is 729 an Israeli barcode?

729 is the prefix range administered by GS1 Israel, so a number beginning 729 was issued to a company that registered there. It does not show where the goods were made, and the converse inference fails too — goods made in Israel may carry prefixes issued by other member organisations. Fact-checkers have examined viral claims built on this prefix, and on 841 and 871, and reached the same conclusion each time: the prefix is a registration fact, not an origin fact.

Why does my barcode lookup return no country?

The usual reason is that the number is not a product number. Ranges 20–29 and 200–299 are restricted-circulation numbers printed by a retailer for in-store use, and they belong to no country and no database. Books (978, 979) and serials (977) return a publication rather than a nationality, and coupon ranges return a voucher. The remaining case is a prefix that is unassigned or was allocated after your reference table was compiled.

Do the first three digits of a UPC work the same way?

Not quite, and this trips up most lookups. A 12-digit UPC-A is a 13-digit GTIN with an unprinted leading zero, so the prefix has to be read from the padded form: 036000291452 is analysed as 0036000291452 and the prefix is 003. In practice every UPC-A resolves to GS1 US either way, which is why the mistake persists, but the same carelessness applied to a 14-digit case code produces a genuinely wrong answer.

Does a valid check digit mean the product is genuine?

No. The check digit is arithmetic over the other digits, so it only proves the number was transcribed correctly. Anyone can compute a valid check digit for any number, and counterfeit packaging routinely carries perfectly valid barcodes — often copied from the genuine product. A failed check digit tells you something is wrong; a passed one tells you almost nothing.

Can two products have the same barcode?

They should not, within the global system, because company prefixes are exclusive and each company assigns its own item references. But it happens: restricted-circulation numbers are deliberately reused by different retailers, recycled company prefixes and resold numbers create collisions, and outright duplication occurs through error. This is one of several reasons a barcode lookup can return a product that is plainly not the one in your hand.

Where can I check what a prefix means?

Our barcode prefix checker validates the check digit, handles the UPC-A and GTIN-14 cases correctly, and names the issuing organisation along with an explicit statement of what that does and does not establish. It runs entirely in your browser. GS1 publishes the authoritative and current allocation list, which is the reference to use when a prefix is recent or unusual.

The Short Version

The first digits of a barcode identify the GS1 member organisation that issued the number, which is a fact about where a company registered. Manufacturing is not part of that decision and does not change the number, so the prefix cannot tell you where something was made — a point GS1 makes plainly and fact-checkers have repeated through several cycles of the claim.

What it can tell you is which registry a number came from, whether it was issued at all, and whether you are even looking at a product number rather than a book, a coupon or a code the shop printed for its own deli counter. Those are useful answers. For origin, read the packaging — and if you want structured origin data rather than a printed line, it is in application identifier (422), on the trade packaging, where it was put on purpose.

Check What a Prefix Really Says

Paste any EAN-13, UPC-A, EAN-8 or GTIN-14 and see the issuing GS1 member organisation, whether the check digit holds, and whether the number is a product at all rather than a coupon, a book or a store-internal code. Runs entirely in your browser.

Read the Number Off the Product in Front of You

Typing thirteen digits off a curved package is how transcription errors happen, and a mistyped digit breaks the check digit and changes the prefix. Scan & Generate reads EAN-13, UPC-A, EAN-8 and ITF-14 along with QR, Data Matrix, PDF417 and six more formats, shows the raw decoded number as text, and keeps a history of what you scanned — so the number you check is the number that was printed.