UPC-A Barcode - A barcode of the EAN/UPC symbology that encodes UCC-12 identification numbers.
Symbology - The term symbology (the study or interpretation of symbols) refers to the structural characteristics of barcode symbols.
UCC-12 identification number - The UCC identification number comprising 12 digits used to identify trade items, coupons and a company's internal applications.
Uniform Code Council - The Uniform Code Council, Inc. (UCC), located in New Jersey and Ohio in the United States, is a membership organisation that jointly manages the EAN•UCC System with EAN International. The UCC also administers the EAN•UCC System in Canada and the United States.
The Universal Product Code (UPC) symbology is used throughout the American grocery industry and has expanded into general retail as well. In it's standard version (UPC-A) the barcode consists of a five digit Manufacturer Number and a five digit Product Number. In addition there is a one digit Number System Identifier at the start of the code. The number system digit denotes the use of one of ten number systems defined by the UCC:
|0, 6, 7||are for regular UPC codes|
|2||is for random weight items, eg. meat and produce, marked in-store.|
|3||is for National Drug Code (NDC) and National Health Related Item Code (NHRIC)|
|4||is for in-store marking of non-food items.|
|5||is for coupon use.|
|8||is for regular UPC codes with variable length company prefixes.|
|1, 9||are not used at present.|
The Human Readable Characters (HRC) for the Number System Character and the Check Digit are printed at a smaller size and separately from the other digits.
The Human Readable Characters (HRC) are positioned at the base of the barcode. A recommended font is the OCR-B.
Apart from the standard layout, there are a number of human readable character layouts currently in use. The HRC layout does not affect the encodation of the barcode, but does assist in visual identification and the grouping of human readable characters can aid in key entry if scanning is not used.
The following symbols are common layouts:
The UPC-A symbol allows for supplementary codes to be added to the main barcode. These add-ons may be 2 or 5 digits. They do not include a check character and have no bearing on the check digit calculation of the main code. The UPC-A supplementary codes were mainly intended for use on books and periodicals, but may also fulfil an in-house function.
UPC-A + 2 and UPC-A + 5:
The UPC-A symbol also has a check digit which is the last digit of the code and is calculated according to the Modulo 10 algorithm. (See Check Digit Calculation below).
The UPC-A symbol is described by the Magnification Factor. The allowable limits being 80% to 200%. For each magnification there is a recommended (or nominal) height. This height is recommended to ensure symbol readability when read by a multi-directional scanner, therefore any reduction in height (or truncation) should only be attempted if absolutely necessary.
The 100% UPC-A barcode is the same size as a 100% EAN-13 barcode symbol. Refer EAN•UCC-13 barcode size charts.
UPC has a set of allowed tolerances for the quality of the printed code. These measurements relate to the maximum variation in the width of a single bar or space and vary according to magnification factor:
As the above table shows, the tolerances allowed reduce rapidly for magnification factors below 100%. For this reason, the final print method should be considered carefully when choosing a magnification factor. For example, some printing presses are too variable to consistently print small (eg. 80%) UPC codes.
Check Digit Calculation
In common with most other barcode implementations, UPC-A symbols also have a check digit which is the last number on the right. It is used to check for an error in scanning or data entry. The most common error found with the transcribing or keying of data is that of transposition (reversing the order of two digits). Therefore, the following mathematical formula (Modulo 10) is used:
UPC-A (UCC-12) digit number without check digit: 0 1 2 3 4 5 6 7 8 9 0
Starting with the first number on the right, add all the alternate numbers. Multiply the result by three.
0 + 8 + 6 + 4 + 2 + 0 = 20 x 3 = 60
Starting with the second number on the right, add all the alternate numbers.
9 + 7 + 5 + 3 + 1 = 25
Add the results of steps 1 and 2.
Total = 85
The check digit is the smallest number which when added to the total in Step 3, produces an exact multiple of ten.
In this example, 85 + 5 = 90, therefore the check digit is 5.
UPC-A (UCC-12) digit number with check digit: 012345678905
Note: If the result of Step 3 is an exact multiple of 10, then the check digit is 0 (not 10).
All barcode types require a certain amount of light space (or quiet zone) to the left and right of the code. This enables the scanner to differentiate between the barcode and surrounding graphics. Should the wrong type of graphic image or colour intrude on the light margin, there is a risk that the barcode will not decode, or worse, will decode incorrectly.
Minimum Light Margins (UPC-A):
|Left Light Margin
|Right Light Margin
|0.094" (2.377mm)||80%||0.094" (2.377mm)|
|0.099" (2.526mm)||85%||0.099" (2.526mm)|
|0.106" (2.675mm)||90%||0.106" (2.675mm)|
|0.112" (2.824mm)||95%||0.112" (2.824mm)|
|0.117" (2.972mm)||100%||0.117" (2.972mm)|
|0.123" (3.121mm)||105%||0.123" (3.121mm)|
|0.129" (3.269mm)||110%||0.129" (3.269mm)|
|0.135" (3.417mm)||115%||0.135" (3.417mm)|
|0.141" (3.566mm)||120%||0.141" (3.566mm)|
|0.147" (3.715mm)||125%||0.147" (3.715mm)|
|0.153" (3.863mm)||130%||0.153" (3.863mm)|
|0.158" (4.012mm)||135%||0.158" (4.012mm)|
|0.164" (4.161mm)||140%||0.164" (4.161mm)|
|0.176" (4.458mm)||150%||0.176" (4.458mm)|
|0.188" (4.775mm)||160%||0.188" (4.775mm)|
|0.199" (5.052mm)||170%||0.199" (5.052mm)|
|0.211" (5.350mm)||180%||0.211" (5.350mm)|
|0.223" (5.647mm)||190%||0.223" (5.647mm)|
|0.234" (5.944mm)||200%||0.234" (5.944mm)|
UCC Customer Service
Uniform Code Council, Inc.
7887 Washington Village Drive, Suite 300
Dayton, OH 45459, U.S.A.