Beyond the Barcode: Selecting a Symbology for a Linear Barcode

Selecting barcode symbology

A barcode may look like just a funny pattern of lines and spaces, but it’s in how those lines and spaces are arranged and then subsequently decoded that opens up a new way to communicate that truly defines the essence of the barcode. Technically speaking, however, a barcode is a machine-readable representation of data that typically identifies the object/asset it is on.

It doesn’t stop there. I’m sure everyone has seen all different kinds of barcodes – some linear or one-dimensional while others may be two-dimensional like the QR, or quick response, codes that are frequently used in advertising and linked to a website and can be accessed using a cellphone.

Determine Symbology

Once a type of barcode has been determined, the next step is deciding on a barcode symbology. What exactly is a symbology? Symbologies are a set of standards and are unique in how the barcode is structured and outlines how readers decode the barcode. They identify what makes up a single digit/character, where to start and stop, size of the quiet zone and checksum within the barcode.  Think of symbologies as different languages such as French, German or English.  They are just different ways to communicate something.  

There are many barcode symbologies. For this article, I would like to stick with the basics – linear, one-dimensional barcode symbologies. Two of the most common linear or one-dimensional barcodes are Code 39 and Code 128. We receive a lot of questions about which one is better and which one our customers should go with when deciding on a barcode symbology. Ultimately the decision is the customer’s to make; however, we’d like to take this opportunity to share our thoughts on the matter.

Code 39 vs. Code 128

Code 39 is the older of the two symbologies, having been developed in 1974 and Code 128 coming seven years later in 1981. And while there are benefits to both symbologies, we feel Code 128 is the superior barcode symbology for the following reasons:

  • CPI (Characters Per Inch): Code 128 is a continuous barcode and Code 39 is a discrete barcode. This basically means you must have gaps or spaces between characters in discrete barcodes while a continuous barcode does not require spaces. Essentially this allows for a denser barcode with a continuous barcode like Code 128. Also, Code 128 allows you to choose from different character subsets that may effectively double your CPI when only working with numerical values. The highest CPI you’ll get with Code 39 is 9.4, but you can get 12.1 up to 24.2 characters per inch if you are only using numeric values with Code 128. To put it another, more direct way, by using Code 128 you can reduce your label size, thereby saving money, and still easily read the barcode.
  • Improved barcode integrity: Code 128 has a check character built into the symbology. Check characters are used to ensure the accuracy of the transmission to the reader. It verifies everything is reading accurately. While this is something you can achieve with a mod to Code 39, the mod takes additional spaces and, again, more space equals more money!
  • Available Characters: Code 39 has access to the full 128 ASCII character set; however, if you fall outside the standard 26 uppercase letters, 10 digits and 7 special characters you will be required to double the space for each character. Code 128 offers the full set of ASCII characters without increasing the space requirements for the barcode and the label itself.

In the past the answer to the question of which linear barcode symbology is better was not as clear as reader technology played a huge role and was still catching up, making it more difficult to read Code 128; however, with today’s readers the answer is clearer. Both symbologies are widely used and recognized, but for the reasons spelled out in this article Code 128 is a superior barcode symbology for the reasons listed here, and, at the end of the day, it can also save you money!