EAN vs UPC Barcode Format

EAN-13 and UPC-A are the two most common barcode formats. While they are very similar, making sure you get your barcode images in the correct format can save hassle and stress in the future.


UPC-A vs EAN-13 formats

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

We normally supply EAN-13 format barcodes. These are the best barcodes to use in Australia and are in fact more common in all countries except for the USA/Canada. We supply these 13 digit numbers with a leading ‘0’ which essentially makes the barcode an EAN-13 format barcode. If a UPC-A barcode is required (for example for supplying stores in the USA), then the EAN-13 format can also be used as a UPC format barcode.

As can be seen to the left, the actual bars of an EAN-13 with a leading ‘0’ and a UPC barcode without the leading ‘0’ are identical. The only difference is in the distribution of the numbers below. This means that scanners read both versions in exactly the same way. If a store requires a UPC-A version barcode when you have an EAN-13 barcode, they can simply be instructed to ignore the leading ‘0’ and it will work in the same way.

Which format should you use?

We recommend you use whichever format is most common in your primary market- so UPC if you are mostly selling into the USA/Canada, and EAN-13 if you are operating anywhere else. If you are doing business both in the USA and internationally, you should probably use the EAN-13 format as almost all American retailers can process and are used to it. Only very old systems can’t manage EAN-13 barcodes, as the Uniform Code Council implemented Project Sunrise in 1997 with the goal of ensuring all US and Canadian retailers could use both EAN and UPC codes by 2005.

How do they scan?

Because the actual bars are the only part of the barcode that is scanned (i.e the scanner isn’t reading the digits below the barcode), an EAN-13 barcode with a ‘0’ on the front can sometimes be confused by scanners as a UPC barcode without the ‘0’ and vice-versa. This is largely to do with what the scanner or software system is expecting to see. This sometimes occurs when a barcode that is not linked on the system is scanned. The software has no point of reference for what format the barcode should be, and, hence, assumes that it is UPC format. When the number is first added to the system in the 13 digit format and linked to the product in the system (this is generally how stores add the barcodes based on the information provided on their buyer form), it tends to scan appropriately as an EAN-13 format barcode.

Wine being scanned at checkout
Once the barcode has been set up properly, it’s easy to scan no matter the format.

Why this occurs?

The way a digit is encoded into every barcode is 7 blocks of either white or black making up each digit. A full set of digits 0-9 is called a parity. Retail barcodes have a minimum of 2 parities, one for the left side and one for the right. This is so they can be scanned upside down and still return the correct number the right way around.

Originally the 12 digit UPC system was created in the 1970’s by George Laurer. UPCs work with 2 different parities; a left side odd parity and a right side even parity (each with 6 digits).

Barcode parities

Later, a 13 digit EAN-13 system was introduced as a superset of the UPC barcodes. These were deliberately designed to be used in conjunction with UPC-A barcodes. To achieve this, the designers, employed both the left odd parity and the right even parity of the UPC barcodes, but added an additional parity (a left-even parity) which was to be used on a selection of the left hand side digits.

Barcode format breakdown

The left and right hand side of the EAN-13 barcodes are still divided into 6 digits each. This means in no EAN-13 barcode is the first digit encoded in the barcode, but instead it determines the way the other digits are encoded. The first digit is calculated by determining the combination of Left Odd encoding (L) and Left Even encoding (G) as shown on the image above to calculate a digit from 0-13. See the table below for more details.

First digitLeft Parity (first 6 digits)Right Parity (last 6 digits)
0LLLLLLRRRRRR
1LLGLGGRRRRRR
2LLGGLGRRRRRR
3LLGGGLRRRRRR
4LGLLGGRRRRRR
5LGGLLGRRRRRR
6LGGGLLRRRRRR
7LGLGLGRRRRRR
8LGLGGLRRRRRR
9LGGLGLRRRRRR

The 0 determines that all of the initial 6 digits will use the left odd parity. This means that the bars look the same as a UPC barcode would without the leading ‘0’( as the UPC version also only uses the odd parity).

Please contact us if you have any questions about this.

×