Which barcode type do I need? EAN-13, UPC-A, Code 128, and QR compared

Which barcode type do I need? EAN-13, UPC-A, Code 128, and QR compared

The format decides who can scan your code and what it can hold. Pick it from the job: a product sold in stores, a shipping carton, an internal label, or a link.

What happens when you pick the wrong format

Every barcode format has rules about what it can hold. EAN-13 takes 12 digits and a check digit, Code 39 has no lowercase letters, and Interleaved 2 of 5 needs an even number of digits. If your data breaks the rules, the generator refuses it. That is the easy case. The harder one is a format that works on your desk and fails where the code is used.

A product sold in stores needs EAN-13 or UPC-A with a number from GS1, because stores and marketplaces check the company prefix. An internal SKU like SKU-10001 can't go into EAN at all, since EAN holds digits only. Cartons in a warehouse usually carry ITF-14. A web address has no place in a 1D barcode; that job belongs to a QR code.

Match the format to the job, then make it

JobFormatWhat it holds
Product sold in stores worldwideEAN-1312 digits + check
Product sold in the US and CanadaUPC-A11 digits + check
Small pack in the US and CanadaUPC-ENumber system 0 or 1, 6 digits, check
BookISBN-13978 or 979, 9 digits, check
Shipping cartonITF-1413 digits + check
Internal SKU, asset tag, shipping labelCode 128Any ASCII text
Older industrial scanners, ID badgesCode 39A-Z, 0-9, a few symbols
Library, blood bank, labCodabarDigits and - $ : / . +
A link, Wi-Fi login, or contact cardQR codeText, as UTF-8 bytes

The Barcode Generator makes every 1D format in this table, plus EAN-8, Code 93, Interleaved 2 of 5, and MSI. For EAN, UPC, ISBN, and ITF-14 you can leave out the last digit and it is calculated, or type it and the tool tells you if it is wrong and what it should be. Type a 10-digit ISBN under ISBN-13 and it becomes the 978 form. It will draw any number you give it, so it can't tell whether a retail number belongs to your company. Download SVG for print and PNG for documents.

For links and other text, the QR Code Generator builds the content for a URL, a Wi-Fi network, a contact card, an email, an SMS, a phone number, or a map location, and downloads it as PNG or SVG. The code is static: the content sits inside it, so to change where a printed code points later, encode a short URL that you control.

Choose a barcode type and make it

  1. Decide where the code will be scanned: a store till, a warehouse, your own system, or a phone camera.
  2. For products sold in stores, get your numbers from GS1 and use EAN-13, or UPC-A in the US and Canada.
  3. For your own SKUs and labels, use Code 128. Use Code 39 only when an older scanner needs it.
  4. Open the Barcode Generator, pick the format, and type the number without the check digit, or with it to have it verified.
  5. For a link or other text, use the QR Code Generator and keep error correction at M for normal use.
  6. Download SVG for print and test it with a real scanner before a print run.

What the generators can't decide for you

  • Both tools draw any number or text. Only GS1 assigns retail numbers that stores accept.
  • Bars printed too thin or too short may not scan. Test with a real scanner before printing many.
  • QR codes made here are static. The content can't be changed after printing.
  • Long QR content makes a dense code that is hard to scan from a distance.

Frequently asked questions

What is the difference between EAN-13 and UPC-A?

UPC-A holds 12 digits and is used in the US and Canada. EAN-13 holds 13 and is used everywhere else. A UPC-A number with a 0 in front is the same code as an EAN-13.

Can a barcode contain letters?

Yes, in Code 128 (any ASCII text) and Code 39 (capital letters, digits, and a few symbols). EAN, UPC, and ITF-14 hold digits only.

Do I need to buy barcode numbers for my products?

For products sold in stores or on marketplaces, yes: the number has to come from GS1. Internal labels can use your own numbering with Code 128.

When should I use a QR code instead of a barcode?

When the code holds a link, a Wi-Fi login, or other text a phone camera should open. Barcodes like EAN and Code 128 hold short IDs for tills and handheld scanners.

Tools used in this guide

  • Barcode GeneratorDeveloper Tools

    Makes Code 128, EAN, UPC, ISBN, Code 39, ITF-14, and Codabar barcodes with check digits.

  • QR Code GeneratorDeveloper Tools

    Creates QR codes for links, Wi-Fi, contacts, and more, as PNG or SVG.

More from the blog

All guides