UPC vs EAN vs SKU:
What's the Difference?

UPC vs SKU, UPC vs EAN, and where GTIN fits: four names that sellers mix up all the time. Here is what each one is, who controls it, and which one belongs on your label.

Updated 8 min read By the UPC Label Generator team

On this page
  1. The short answer
  2. Comparison table
  3. What is a UPC barcode?
  4. The GTIN family
  5. UPC vs EAN
  6. UPC-A vs UPC-E
  7. UPC vs SKU
  8. Which number goes on my label?
  9. FAQ

The short answer

UPC (12 digits) and EAN (13 digits) are both GTINs, global product numbers licensed from GS1 that any store in the world can scan. GTIN is the umbrella name for the whole family. A SKU is your own internal stock code: you make it up, and it means nothing outside your business.

Comparison table

UPC, EAN, GTIN and SKU side by side (sources: GS1 General Specifications Release 26.0, GS1 US, as of November 2026).
Compared UPC-A UPC-E EAN-13 GTIN SKU
What it is 12-digit product number and its barcode Compressed barcode for some UPC numbers 13-digit product number and its barcode The family name for GS1 product numbers Your own stock code
Who issues it GS1 (GS1 US) GS1 (GS1 US) Your country's GS1 office GS1 You
Digits 12 8 printed, stands for 12 13 8, 12, 13 or 14 Any letters and digits you like
Where it's used Mainly US and Canada Small packs in the US and Canada Most other countries Worldwide Only inside your business
Scans at any store? Yes Yes Yes Yes (8, 12 and 13-digit forms) No
Make it yourself? No, license it No, license it No, license it No, license it Yes

What is a UPC barcode?

A UPC (Universal Product Code) is the 12-digit number that identifies one specific product, such as one flavour and size of a drink, and the black-and-white barcode that carries it. Its official GS1 name is GTIN-12, and the barcode is called UPC-A. GS1 US describes GTIN-12 as the only GTIN that can be encoded in a UPC-A barcode (GS1 US: What is a GTIN?, checked November 2026).

The 12 digits have three parts:

  • Company prefix (6 to 11 digits). Licensed to one company by GS1. The first digit also says what kind of number it is: 0, 1, 6, 7, 8 and 9 are normal company prefixes, 3 is reserved for US drug codes, 2 and 4 are for in-store use such as weighed goods, and 5 is reserved (GS1 General Specifications, section 1.2.3.4).
  • Item reference. Chosen by the company, one per product variant.
  • Check digit. The last digit, calculated from the other 11 so a scanner can tell when a digit was misread or mistyped.

The barcode itself stores only those 12 digits. The product's name and price live in the store's database, looked up by the number. Here is what each part of the printed barcode does:

UPC-A barcode for 036000291452 at 100% size, with its parts labelledThe symbol is 37.29 mm wide including its blank quiet zones and 25.93 mm tall including the digits. The bars are 22.85 mm tall.03600029145237.29 mm (1.468″) including quiet zones31.35 mm guard to guardbars 22.85 mm25.93 mm with digits123445
  1. Quiet zones. Blank space of 9 bar widths each side (2.97 mm at 100%). Nothing may print here.
  2. Guard bars. The left, centre and right pairs (outlined) tell the scanner where the code starts, splits and ends. They run 5 bar widths lower than the rest.
  3. First digit, printed left of the bars. It is the start of the GS1 company prefix.
  4. Ten middle digits in two groups of five: the rest of the company prefix and the item reference.
  5. Check digit, printed right of the bars. It is calculated from the other 11 and catches typing errors.
A UPC-A barcode at 100%, drawn by our label engine.

The GTIN family

GTIN (Global Trade Item Number) is the umbrella. GTINs come in four lengths, and each one has its own barcode (GS1 US; GS1 General Specifications, as of November 2026):

The four GTIN formats.
Format Also called Barcode Used for
GTIN-8EAN-8EAN-8Very small retail items, mostly outside North America
GTIN-12UPCUPC-A (or UPC-E for some numbers)Retail items, mainly US and Canada
GTIN-13EAN, JANEAN-13Retail items, most other countries
GTIN-14Case codeITF-14 or GS1-128Cases and cartons, not scanned at the checkout

Business systems often store every GTIN as 14 digits by adding zeros in front. GS1 is explicit that those filler zeros don't change the number, which is the key to the UPC/EAN relationship below.

UPC vs EAN

An EAN-13 is the same idea as a UPC with one more digit. In fact every UPC already is an EAN: put a 0 in front and you have its 13-digit form. 036000291452 and 0036000291452 identify the same product, and both carry the same check digit, because a leading zero adds nothing to the calculation. GS1 US states the reverse too: a company prefix used to create a GTIN-13 begins with 1–9, never 0 (An Introduction to the GTIN, Release 2.1).

GTIN-12 UPC-A barcode

GTIN-13 EAN-13 form

GTIN-14 databases, cases

  1. Filler zeros. They change the length, not the number: all three rows identify the same product.
  2. Same check digit (5). Leading zeros add nothing to the check-digit sum, so it stays valid in every form.
One GTIN written three ways. Only the filler zeros change.

So a 13-digit number that starts with 0 is a UPC in disguise, and you can print it as a normal UPC-A by dropping the zero. A 13-digit number starting with any other digit is a true EAN-13 and needs an EAN-13 barcode. Our UPC validator recognises both cases and tells you which one you have; it suggests dropping the zero and leaves the decision to you.

When would you need an EAN instead? If your business is registered outside the US, your local GS1 office will normally give you EAN-13 numbers. They scan at US stores too. If you are a US seller, your UPCs already work abroad.

UPC-A vs UPC-E

UPC-E is a shorter barcode for very small packs, a little over half the width of a UPC-A. It is not a different number: it squeezes out zeros from a 12-digit UPC and prints 8 digits. For example, GS1's own example 012345000058 prints as the UPC-E 01234558. Only numbers that start with 0 and contain zeros in particular positions can be shortened, so you usually have to plan for UPC-E when your numbers are assigned. Most products use UPC-A, and that's what our generator prints. The UPC barcode size guide covers how small a UPC-A can go before you'd need it.

UPC vs SKU

A SKU (stock keeping unit) is the code you use to find and count stock: “TEE-BLU-M” or “1042”. You create it, it can contain letters, and you can change your scheme whenever you like. Two shops selling the same T-shirt will each have their own SKU for it, but both will scan the same UPC.

They work together. A typical seller's product list has both columns: the SKU for picking, packing and reordering, and the UPC for stores, marketplaces and checkouts. Keep the mapping one-to-one: one SKU, one UPC for each sellable variant.

Can a SKU be a barcode? Yes, for your own use. Shelf, bin and warehouse labels usually print SKUs as Code 128, which handles letters. Never put a SKU into a UPC barcode: a UPC must be a GS1 number, and a made-up 12-digit SKU could clash with a real product.

Printing both

Our labels can show your SKU as a small text line under the product name, above a UPC barcode. The barcode always carries the UPC.

Which number goes on my label?

  • Selling in stores or to retailers: the product's UPC (or EAN) as a UPC-A or EAN-13 barcode. Make it with the UPC label generator.
  • Your own shelves and bins: your SKU, usually as a Code 128 barcode, plus readable text.
  • Amazon FBA: either the manufacturer UPC or Amazon's own FNSKU label, depending on who you are and what you sell. See UPC vs FNSKU.
  • No number yet: start with how to get a UPC.

Frequently asked questions

Is a barcode a SKU?
No. A barcode is a way of printing a number so a machine can read it. A SKU is a code you invent for your own stock. You can print a SKU as a barcode (usually Code 128) for your own shelves, but that barcode is not a UPC and won't work at a store checkout.
Do all stores use the same UPC?
Yes. A product's UPC is the same in every store and on every marketplace, because it belongs to the brand that licensed it from GS1. Each retailer's own SKU or item number for that product is different.
Does Walmart use UPC or SKU?
Both, for different jobs. Walmart Marketplace asks sellers for a GTIN/UPC on each product (or an approved exemption), and you also give each listing your own SKU to track it in your inventory. Walmart has its own internal item numbers as well.
Are SKU and EAN the same thing?
No. An EAN is a 13-digit global product number licensed from GS1, the same for every seller of that product. A SKU is your private stock code, which you make up and which means nothing outside your business.
What is the difference between an EAN code and a UPC code?
A UPC has 12 digits and is mostly used in the US and Canada; an EAN has 13 digits and is used in most other countries. Both are GS1 numbers. Put a 0 in front of a UPC and you have the same product's EAN-13 form: 036000291452 becomes 0036000291452.
Are barcodes universal?
UPC and EAN barcodes are: GS1 says all GTIN formats are usually accepted by retailers and marketplaces worldwide. Barcodes you create yourself for SKUs, bins or assets (Code 128, Code 39, QR codes) only mean something inside your own system.
What is a GS1 company prefix?
The first part of every product number you create, licensed to your company by GS1. Its length decides how many numbers you can make: a longer prefix leaves fewer digits for products. With a single GS1 US GTIN you get one number instead of a prefix. See how to get a UPC.