The Universal Product Code was the first bar code symbology widely adopted. Its birth is usually set at April 3, 1973, when the grocery industry formally established UPC as the standard bar code symbology for product marking. Foreign interest in UPC led to the adoption of the EAN code format, similar to UPC, in December 1976.

There are now five versions of UPC and two versions of EAN. The Japanese Article Numbering (JAN) code has a single version identical to one of the EAN versions with the flag characters set to ``49''.

By 2005 all US retailers will have to be able to scan all EAN/UCC article numbers (8, 12, 13 and 14-digit).

UPC and EAN symbols are fixed in length, can only encode numbers, and are continuous symbologies using four element widths.

UPC version A symbols have 10 digits plus two overhead digits while EAN symbols have 12 digits and one overhead digit. The first overhead digit of a UPC version A symbol is a number related to the type of product while an EAN symbol uses the first two characters to designate the country of the EAN International organization issuing the number. UPC is in fact a subset of the more general EAN code. Scanners equipped to read EAN symbols can read UPC symbols as well. However, UPC scanners will not necessarily read EAN symbols.

The UPC symbology was designed to make it ideal for coding products. UPC can be printed on packages using a variety of printing processes. The format allows the symbol to be scanned with any package orientation. Omnidirectional scanning allows any package orientation provided the symbol faces the scanner. The UPC format can be scanned by hand-held wands and can be printed by equipment in the store. Version A of the symbology has a First Pass Read Rate of 99% using a fixed laser scanner and has a substitution error rate of less than 1 error in 10,000 scanned symbols.

Nominal X dimension is 13 mils. A magnification factor of 0.8 to 2.0 is allowed and, as a result, makes a printable range of X dimension values of 10.4 to 24 mils.

The UPC format can be printed using a variety of printing techniques because it allows for different ink spreading. The amount of ink spreading depends on printing press conditions, amount and viscosity of ink and other factors which are difficult to precisely control. The UPC symbol is decoded by measuring the distance from leading edges to leading edge of bars, trailing edge to trailing edge of bars and leading edge to leading edge of characters. Since relative distances are measured for decoding, uniform ink spread will not affect the symbol's readability. However, excessive ink spread will make the spaces very small to the point that the reader will be unable to resolve them. Since UPC is a continuous code with exacting tolerances, it is more difficult to print on any equipment except printing presses.

UPC Version A

UPC version A is the basic version of UPC and is usually the version seen on grocery store items. The symbology is used to encode the 10 digit Universal Product Code. An eleventh digit indicates the type of product, and a twelfth digit is a modulo check digit. The symbol is divided into two halves, each containing 5 digits. The two six-digit patterns are surrounded by left, center and right guard patterns. The left six digits use odd parity encodation while the right six digits use even parity encodation.. The first digit is the UPC number system digit related to the type of product (0 for groceries, 3 for drugs, etc.). The next 5 digits are the UPC manufacturer's code. The first five digits of the right half are the product code. The final digit is the check digit. Although UPC A is continuous, the left and right halves of the symbol can be independently decoded.

A digit is coded as a sequence of two bars and two spaces within a space 7 modules wide. Bar and space widths may be 12, 3, or 4 modules wide. This results in 20 possible bar-space combinations. Ten of these patterns are used for the left odd parity digits and ten are used for the right even parity digits. The left digits always start with a space, while the right digits always start with a bar.

Left Digits
Odd Parity
S B S B Right Digit
Even Parity
B S B S
0 3 2 1 1 3 2 1 1
1 2 2 2 1 2 2 2 1
2 2 1 2 2 2 1 2 2
3 1 4 1 1 1 4 1 1
4 1 1 3 2 1 1 3 2
5 1 2 3 1 1 2 3 1
6 1 1 1 4 1 1 1 4
7 1 3 1 2 1 3 1 2
8 1 2 1 3 1 2 1 3
9 3 1 1 2 3 1 1 2

A typical UPC Version A symbol has center guard bars in the center of the symbol which are longer than the other bars. This divides the symbol into a right and left half. This division allows the symbol to scan in any orientation. The moving beam laser bar code reader in grocery stores produces orthogonal scanning beams either in a cross, starburst, or figure-eight. At least one beam will then pass through each half of the symbol, since the symbol's height is at least equal to half of the length of the symbol.

The height of the symbol should be at least half the length of the symbol. Sometimes the symbol's height is shortened to fit into the design of the package. This truncation of symbol height affects the ability to scan the symbol in any orientation, and will generally reduce the First Pass Read Rate.

The Quiet Zone should be 9 modules on the left and right of the symbol.

Version A may include either a 2 digit or a 5 digit supplemental encodation. These extra digits are primarily used on periodicals and books.

More information about Version A is available here.

UPC Version E

UPC version E is the next most common version of UPC. It is a zero suppression version of UPC. It is intended to be used on packaging which would be otherwise too small to use one of the other versions. The code is smaller because it drops out zeros which would otherwise occur in a symbol. For example, the code 59300-00066 would be encoded as 593663. The last digit (3 in the example) indicates the type of compression. Guard bars precede and follow the data (no middle guard bars). The digits are coded following the parity pattern EVEN, EVEN, ODD, ODD, EVEN, ODD. The data is enclosed between two left-hand guard bars and three right-hand guard bars. The six digit number is always preceeded by a 0 and followed by the check digit. The way the check digit is computed is by expanding the type E to a type A, then doing the regular check.

More information about Version E along with a converter is available here.

Other UPC Versions

There are three other versions of UPC. These other versions are not in wide use.

UPC version B is a special version originally developed to handle the National Drug Code and National Health Related Items Code. It allows for 11 digits plus one product type code. This version does not have any modulo check digit.

UPC version C is a special code designed to promote industry-wide compatibility. The code is 12 digits long with a product type digit and a modulo check sum digit.

UPC version D is a variable message length version of UPC. The symbol must contain at least 12 digits. The first digit is a product type code. This is followed by 10 information carrying digits. The twelfth digit is a modulo check sum, and this is followed by a variable number of digits.

EAN-13 and EAN-8

The EAN Article Numbering System (EAN),the Japanese Article Numbering (JAN) System and the International Article Numbering System (IAN) are identical to UPC except for the number of digits. The Japanese Article Numbering (JAN) System (JAN) codes are the same as the EAN codes, with the flag characters set to ``49''. There are two principal EAN versions.

Standard EAN (sometimes called EAN-13) has 10 numeric characters, 2 or 3 "flag" characters which are usually a code for the country of the EAN International organization issuing the number , and a check digit. In all other respects, it is identical to UPC version A. JAN is the same as EAN-13. For compatibility with UPC, flags 00, 01, 03, 04, and 06 through 13 are assigned to the United States.


What are the country codes?

Lots of people have requested the codes. Here is a partial list. Remember, it indicates the country that issued the code, NOT THE COUNTRY OF ORIGIN OF THE PRODUCT.

        00-13      USA & Canada
        20-29      reserved for local use (store/warehouse)
        30 -37     France
        400-440  Germany
        45          Japan
        46          Russian Federation
        471        Taiwan
        474        Estonia
        475        Latvia
        477        Lithuania
        479        Sri Lanka
        480        Philippines
        482        Ukraine
        484        Moldova
        485        Armenia
        486        Georgia
        487        Kazakhstan
        489        Hong Kong
        49          Japan
        50          UK
        520        Greece
        528        Lebanon
        529        Cyprus
        531        Macedonia
        535        Malta
        539        Ireland
        54          Belgium & Luxembourg
        560        Portugal
        569        Iceland
        57          Denmark
        590        Poland
        594        Romania
        599        Hungary
        600-601  South Africa
        609        Mauritius
        611        Morocco
        613        Algeria
        619        Tunisia
        622        Egypt
        625        Jordan
        626        Iran
        64          Finland
        690-692  China
        70          Norway
        729        Israel
        73         Sweden
        740-745 Guatemala, El Salvador, Honduras, Nicaragua,
                     Costa Rica & Panama
        746        Republica Dominicana
        750        Mexico
        759        Venezuela
        76          Switzerland
        770        Colombia
        773        Uruguay
        775        Peru
        777        Bolivia
        779        Argentina
        780        Chile
        784        Paraguay
        785        Peru
        786        Ecuador
        789        Brazil
        80 -83    Italy
        84          Spain
        850        Cuba
        858        Slovakia
        859        Czech
        860        Yugoslavia
        869        Turkey
        87          Netherlands
        880        South Korea
        885        Thailand
        888        Singapore
        890        India
        893        Vietnam
        899        Indonesia
        90 -91    Austria
        93          Australia
        94          New Zealand
        955        Malaysia
        977        ISSN (International Standard Serial Number periodicals)
        978        ISBN (International Standard Book Number)
        979        ISMN (International Standard Music Number)
        980        Refund receipts
        99          Coupons


More information about EAN-13 is available here.

EAN-8 has a left-hand guard pattern, four odd parity digits, a center guard pattern, four even parity digits, and a right-hand guard pattern.

An EAN-8 bar code has two flag digits, five data digits, and one check digit. There is additional information about EAN-8 here.

Information about Bookland EAN and ISBN numbering of books can be found at BarCode 1's Bookland EAN and ISBN Page.




  • Barcode FAQ's
  • Membership Terms
  • General Barcode Info
  • Placing Barcodes
  • Order Now
home
cd/dvd services
dvd authoring
upc barcodes
cd mastering
contact
|
|
|
|
|
  • ISRC Codes

  • ISBN Numbers

  • ISSN Numbers
  • Master Carton Codes

  • Inventory Codes

  • Magazine Barcodes