Read, write, and detect over 30 different barcodes with our barcode SDK.


The UPC-A barcode was first developed in the 1970s for use in American grocery stores. It has since been adopted by other retail industries and is now used worldwide. These universal product codes (UPCs) are a subset of the European Article Numbering (EAN) system. As a result, any barcode system that can read UPC-A codes can also read EAN codes, and vice versa. It’s also possible to transform UPC-A codes created in the United States into EAN codes by adding a leading zero.

There are 12 digits in a UPC-A code, with the first digit indicating what the code contains:

  • 0 — Regular UPC Code
  • 1 — Reserved
  • 2 — Items Where the Price Varies by Weight
  • 3 — National Drug Code (NDC) and National Health Related Items (HRI)
  • 4 — For Use with In-Store, Non-Food Items
  • 5 — Coupons
  • 6 — Reserved
  • 7 — Regular UPC Code
  • 8 — Reserved
  • 9 — Reserved


The UPC-A barcode includes seven basic elements:

  • A leading quiet zone at least the width of 10 narrow bars.
  • The start character (guard pattern).
  • Six symbol characters.
  • The center character (guard pattern).
  • Six symbol characters with a check digit.
  • The stop character (guard pattern).
  • A trailing quiet zone.

The guard patterns noted above occur at the start, stop, and center of a UPC-A symbol. They are typically a greater height than the surrounding symbol bars and follow a specific pattern. For the start and stop bars, the pattern is always narrow bar, narrow space, narrow bar. For the center guard bars, the pattern is always narrow space, narrow bar, narrow space, narrow bar, narrow space.

The UPC-A barcode also uses four widths for bars and spaces, which allows characters to be encoded using only two bars and two spaces, which is the fewest number required of any barcode type.

Two add-on symbols — five digit or two digit — are also available for UPC-A barcodes. These add-ons always occur to the right of the primary symbol and are used to denote information such as the date or the MSRP on products. These add-ons do not contain a start or stop character.

Common Use Cases

UPC-A barcodes remain widely used in U.S. grocery stores but have also seen widespread adoption worldwide for product labeling since they’re both compatible with EAN specifications and can be expanded to include more specific information with add-on barcodes.

Box Barcode