Barcode InfoPCL FontsHome


Home > Barcode Basics > Different Types of Barcodes > UPC-A

UPC-A is used for marking products which are sold at retail in the USA. The barcode identifies the manufacturer and specific product so point-of- sale cash register systems can automatically look up the price. The UPC-A Code and the assignment of manufacturer ID numbers is controlled in the U.S.A. by the Uniform Code Council located in Dayton, Ohio. If you need a manufacturer ID number, call them at (937) 435-3870 and they will send you an application form. Their fax number is (937) 435-4749. The registration fee for a UPC is $750 for companies whose annual sales are $2 million or less. Fees rise proportionately for companies with annual sales greater than $2 million.

At they offer single UPC numbers for $99... a small initial investment, compared with the Uniform Code Council's $750 for 100 numbers ($7.50 each). Be sure to read the small print.

The UPC-E symbol for small items

The UPC-E code is a compressed barcode which is intended for use on small items.  Compression works by squeezing extra zeroes out of the barcode and then automatically re-inserting them at the scanner.  Only barcodes containing zeroes are candidates for the UPC-E symbol.  The Uniform Code Council is very stingy when it comes to handing out manufacturer ID numbers with extra zeroes; these are reserved for products which have a genuine need for the UPC-E symbol.  If you need a small symbol, tell the UCC when you apply for a manufacturer's ID number and be prepared to substantiate your need.

USA retailers required to scan EAN-13 by 2005

The Uniform Code Council has announced that January 1, 2005 will be the date by which all retail scanning systems in the USA must be able to accept the EAN-13 symbol as well as the standard UPC-A. This change will eliminate the need for manufacturers who export goods to the US and Canada to double-label their products.

Most scanners sold as early as 1985 can auto-discriminate between these two codes, so the hardware will generally not be an issue. The primary concern is that product databases used by retailers will need to store 13 digits to accommodate all EAN/UCC numbers; many database designs currently store only 11 digits (or 12 if the check digit is included). In order to guard against any confusion between an existing UPC code and a previously assigned EAN-13 code it is necessary to use all 13 digits as a lookup key.  If you are importing items to the USA market and your retailers insist that you re-label with UPC-A barcodes, you might suggest to them that it would be a good idea to work towards accepting the EAN-13 code; they will have to be ready when 2005 arrives.

Existing US manufacturers will not have to obtain new numbers or redesign packaging. After the changeover date, manufacturers may mark products exported to the USA and Canada with their assigned EAN-13 numbers; there will be no requirement to obtain a separate UPC registration number.

Structure of the UPC-A Code

UPC-A encodes 12 numeric digits. The first digit identifies the numbering system being used:

  • 0: regular UPC codes
  • 1: reserved
  • 2: random weight items marked at the store
  • 3: National Drug Code and National Health Related Items code
  • 4: no format restrictions, for in-store use on non-food items
  • 5: for use on coupons
  • 6: reserved
  • 7: regular UPC codes
  • 8: reserved
  • 9: reserved

The next group of 5 digits identifies the manufacturer. This number is assigned by the Uniform Code Council (UCC). The next 5 digits identify the particular product and are assigned by the manufacturer. The last digit is a Modulo 10 checksum.

Calculating the Checksum

The checksum is a Modulo 10 calculation.
1. Add the values of the digits in positions 1, 3, 5, 7, 9, and 11.
2. Multiply this result by 3.
3. Add the values of the digits in positions 2, 4, 6, 8, and 10.
4. Sum the results of steps 2 and 3.
5. The check character is the smallest number which, when added to the result in step 4, produces a multiple of 10.

Example: Assume the barcode data = 01234567890
1. 0 + 2 + 4 + 6 + 8 + 0 = 20
2. 20 X 3 = 60
3. 1 + 3 + 5 + 7 + 9 = 25
4. 60 + 25 = 85
5. 85 + X = 90 (next highest multiple of 10), therefore X = 5 (checksum)

2-Digit Supplemental Codes for Periodicals

A UPC-A code may be augmented with a two-digit supplemental barcode to indicate the issue number for a periodical. Weekly publications are generally numbered 1-52, while semi-monthlies are numbered 1-24 and monthlies 1-12. Here is an example for issue No. 3:

Audio and Video Recordings

Code Audio Recordings  Video Recordings
0 n/a n/a
1 12" LP or 12" single 12" CDV
2 CD, CD-ROM, CDI, VCD n/a
3 n/a      VHS
4 Cassette, Maxi-Cassette, Cassette Single n/a
6 n/a Laserdisc
7 7" single n/a
8 MiniDisc 8mm tape
9 DVD (all music formats)  DVD music video

Companies which produce recordings are assigned a 6-digit number. The final digit of the company identification also serves as the first digit of the selection number, and can be requested on the application to the Uniform Code Council. The next 4 digits encode the rest of the selection number. The 11th digit indicates the type of recording medium; here are the codes recommended by RIAA (

Books are generally marked with Bookland EAN barcodes.

See also:
AppNote 002:   Calculating a UPC Barcode Checksum in Access Basic
AppNote 007:   UPC-A Retail Barcodes for In-Store Use
AppNote 023:   How to translate a UPC-E barcode to the full UPC-A equivalent

FAQ: Barcoding retail products:   When and how to get a barcode on your retail product or publication


(c) Copyright Measurement Equipment Corporation
All Rights Reserved