Pages Appendix1 Appendix2 References


ID Automation Barcode FAQ & Tutorial


A History of Barcodes

The industrial use of barcodes can be traced back as far as the 1960s, in some cases as a means to identify railroad cars. Common linear barcodes started appearing on grocery shelves in the early 1970s as the UPC barcode to automate the process of identifying grocery items. Today, barcodes are just about everywhere and are used for identification in almost all fields of business. When barcode technology is utilized in business processes, procedures are automated to increase productivity and reduce human error. Barcoding should be used whenever there is a need to accurately identify or track something.

Barcode & RFID Technology

Radio Frequency Identification (RFID) is still in its infancy as a technology, and implementation is usually many times more expensive compared to that of bar-coding. There are many additional issues to consider with RFID such as those listed in the Disadvantages of RFID section in ID Automation's RFID FAQ. However, RFID also has many advantages over barcoding. In some cases, these advantages outweigh the disadvantages and high cost of implementing RFID technology. Decision makers must carefully consider whether RFID really provides an advantage the traditional use of barcodes in their business model.

Barcode Types, Symbologies & Standards

The type of barcode that should be used may depend on several variables, including the following:

  1. Standards and mandates
  2. Purpose and use
  3. Data encoded
  4. Printing and/or decoding methods

There are several different types of barcode standards for different purposes - these are called symbologies. Each type of symbology (or barcode type) is a standard that defines the printed symbol and how a device, such as a barcode scanner, reads and decodes the printed symbol.

If an industry standard has already been established for the intended implementation, the standard should be implemented. If a standard does not exist for the chosen implementation, several symbologies are available to choose from.

Industry standards are usually established when multiple parties or companies are involved in the ID process. The standard is not necessarily the same as the barcode symbology. Barcode standards define how to use the barcode symbology in a particular situation. For example, the two standards to create ISBN barcodes for books and generate ISSN barcodes for periodicalsboth use EAN-13 to encode data into the barcode, but have different methods depending on the specific ISBN & ISSN standards. 

The chart below includes a few established barcode standards and what they are used for:

Established Barcode Standards:

Established Standard


Barcode Symbology

ABC Codabar

blood bank tracking



automotive item identification

Data Matrix


unique identifier for US Department of Defense

Data Matrix

EAN-8 & EAN-13

items for sale worldwide



shipping cartons

Interleaved 2 of 5 or Code 128


global trade identification

Code 128


global trade identification



global trade identification



global trade identification and POS


ISBN, ISSN & Bookland

books and periodicals

EAN-13 with UPC/EAN


US Department of Defense

Code 39


US Department of Defense

Data Matrix


US mail



shipping cartons

Interleaved 2 of 5 or Code 128


serial numbers for serial publications

Code 128


serial numbers for serial publications

Code 128


blood, tissue and organ products

Code 128


shipping cartons

Code 128

USPS Special Services

US mail special services

Code 128


items for sale in the USA and Canada


USPS Intelligent Mail

USPS mail routing and tracking

4 State

* Beginning January 1, 2010, GS1 DataBar may be used in place of all UPC and EAN barcode types for POS.

IDAutomation also offers a list of several popular barcode symbologies at the barcode FAQ site and information about how to identify the various symbologies

Choosing the Best Barcode Type for Printing

IDAutomation offers several Application Integration Guides that suggest one or more options for integrating barcodes. The integration options should be examined to determine whether to implement components, applications or barcode fonts for printing. A few of the Barcode Integration Guides offered include the following:

  • Access
  • Crystal Reports
  • Excel
  • FileMaker
  • Open Office & Star Office
  • Oracle Reports
  • Reporting Services
  • C++
  • C# .NET
  • Visual Basic 6 and VB.NET
  • Web Barcode Implementation

Once it is determined which product to use for the printing of barcodes, the following suggestions may help in selecting the barcode symbology:

When using Barcode Components or Applications for printing, the following is suggested:

  • When encoding uppercase and/or lowercase letters, numbers, punctuation, any letter or symbol appearing on the standard U.S. keyboard and lower ASCII functions such as returns and tabs, up to about 40 digits, use Code128. All of IDAutomation's barcode componentsand applications support Code 128 as the default barcode type.
  • When encoding several lines of data of any type over 40 characters, it is suggested to use the PDF417 or Data Matrix barcodes.

When using Barcode Fonts, the following is suggested:

  • When encoding only numbers, up to about 30 digits, choose Codabar Barcode Fonts. Codabar is the most dense, self-checking (easy-to-use) symbology.
  • When encoding uppercase letters, numbers and these symbols (- . $ / + %), up to about 20 digits, choose Code 39 Barcode Fonts. Code 39 is also a dense self-checking (easy-to-use) alpha-numeric symbology.
  • When it is necessary to encode uppercase and lowercase letters, numbers, punctuation and ASCII functions such as returns and tabs, up to about 40 digits, use Code 128 Barcode Fonts or the Universal Barcode Fonts.
  • When encoding any data of any type over 40 characters, use the PDF417 or Data Matrixbarcodes.

When barcodes are sent via fax machine or are used in a low-resolution environment, the following is suggested:

  • After evaluating several popular barcodes, the Data Matrix barcode is the most dependable in a faxing environment. Data Matrix is one of the smallest and most dependable barcode symbologies. Compared to other barcode types, Data Matrix is approximately 30 times smaller than a Code 39 barcode representing the same data. This comparison may be seen visually in the Barcode Symbology Evaluation and Test Sheet.
  • If the DataMatrix barcode cannot be implemented, it is suggested to print the chosen barcode at the largest X Dimension (or size) as possible, which will usually allow the symbol to be read by a scanner.
  • When printing to thermal 203 DPI printers, special care must be taken to create accurate barcodes. Several knowledge base articles exist for the proper use of thermal printers:
    • Printing to 203 dpi thermal printers with Barcode Fonts
    • Using low resolution printers with Web Products

When Barcode Applications are used, the following is suggested:

  • To create barcode images individually, save the images to a file or easily paste barcodes into other Windows applications, consider IDAutomation's Barcode Image Generator. This application is commonly used to create barcode image files for PhotoShop, Paint Shop Pro, Quark, CorelDraw, Word and other word processor and graphic applications where a single image can be printed several times without change.
  • To print barcode labels dynamically from a database or list with a label design application compatible with Windows, consider IDAutomation's Barcode Label Software.

When encoding photos, arrays, binary data, Unicode, international or double-bytecharacters, the following is suggested:

A two-dimensional symbology (2D barcode) such as the PDF417 or Data Matrix barcode should be used to encode this type of data. 2D barcodes encode this type of data when the encoding mode is set to BASE256 or BINARY, which encodes all data, byte-by-byte. When scanning the data, the barcode scanner must be able to read all 256 bits of each byte. This usually means using the serial interface option (data bits have to be 8N) on the scanner, serial emulation over USB or another type of connection that allows all 256 bits of each byte to be transferred to the necessary application. Normally, keyboard wedge and USB barcode scanners (that emulate a keyboard) do not support extended characters above ASCII 128, and they only read characters that are actually on the keyboard. The scanner manual or vendor may need to be consulted for this type of implementation. Alternatively, the data may be converted to Base64 when encoded in the barcode and then back again when read. However, this requires additional programming and will create a symbol that is about four times larger then it would be with BASE256 or BINARY encoding.

When creating PDF documents, the following is suggested:

IDAutomation barcode fonts may be used to integrate barcodes into PDF documents, thus creating virus-free portable data files that can be viewed on all operating systems with a PDF viewer. The fonts have been tested and work with the following PDF conversion products:

  • Adobe Distiller Server works well with all of IDAutomation's MICR, OCR and barcode fonts including symbol-encoded fonts.
  • Crystal Reports version 9 and above can create PDF documents with IDAutomation'sBarcode Fonts.
  • PDFLib is a library for generating PDF "on the fly" for programmers only. Runs on Mac, Windows and several Unix platforms in addition to EBCDIC-based platforms, such as IBM eServer iSeries 400 and zSeries S/390. PDFlib is especially well-suited for generating PDF on a Web server. PDFlib can generate PDF data directly in memory (instead of on file), resulting in better performance and avoiding the need for temporary files. This product was implemented by a client using IDAutomation's PostScript Interleaved 2 of 5 Barcode Fontswith Redhat Linux 6.2.
  • PDF Machine is a simple print driver that permits the creation of a PDF document from any printable source. Version 6.2 supports printing the barcode font at small point sizes.

Reading Barcodes

One of the most common tools for reading barcodes is the hand-held barcode scanner. Thebarcode scanners recommended and sold by IDAutomation all have built-in decoders that can read several different barcode symbologies. There are a few low-priced scanners on the market, but they require complicated decoders. In the long run, after ordering and programming a decoder, more time will be spent using the decoder than if ordering a scanner with a built-in decoder.

Most of the barcode scanners sold by IDAutomation receive their power from the PC keyboard orUSB port so no external power supply is required. When a barcode is scanned, the data is sent to the PC as if typed on the keyboard. To learn more about scanning barcodes, review how to scan barcode data into applications.

Most barcode scanners can read common linear symbologies such as Code 39, UPC, EAN, Code 128 and Codabar by default. Some scanner manufacturers’ ship new barcode scanners with most symbologies disabled, therefore, if a particular barcode cannot be read, make sure it is enabled in the scanner's firmware. Not all scanners read barcodes that are printed at small X dimensions (the x dimension is the width of the narrow bar in the code,) so it is advisable to check the barcode scanner manual to make sure the scanner can read the small X dimensions.

The low-priced IDAutomation Plug 'n Play USB Barcode Scanner performs like a laser scanner and reads very small barcodes. Barcodes of 4 to 32 mils in size and up to 4.2" in width are easily read from a distance of 4 to 8 inches with this scanner.

Barcode Area Efficiency

Many situations may exist where the space a barcode occupies becomes a concern. The barcodes below are all encoding the same data of "BARCODE12345678" with the same narrow bar width or X dimension of .03CM or 12 mils. When creating small barcodes, the scanner must also be able to dependably read them. Some barcode scanners also read different symbologies better at different sizes. For example, the Symbol Laser Barcode Scanner dependably reads the Code 39 Barcode Font when printed as small as 6 points, but only reads the Code 128 Barcode Font when printed at 8 points. However, the IDAutomation Plug 'n Play USB Barcode Scanner reads both Code 128 and Code 39 at 6 points and above. The barcodes below may be printed from IDAutomation’s Symbology Test Sheet for testing purposes.

Linear and 2D Barcode Symbology Evaluation Chart

Code 39 without check digit:

Code 128 Auto:


Data Matrix ECC200 with ASCII encoding mode:

PDF417 in Text encoding mode:

QR-Code with Error Correction L

As seen in the examples above, the Data Matrix barcode is the most compact of the symbologies evaluated. However, it requires a 2D Barcode Imager or Image Reader to read the symbol. Several Imagers can easily read small symbols, such as the Hand-Held Products Barcode Imager which can read Data Matrix barcodes printed with the Data Matrix Font as small as 2.5 points, which is an X dimension of about .02CM or 8 mils. Data Matrix is also one of the most accurate barcode symbologies.

Barcode Accuracy & Misreads

The accuracy and amount of misreads of several different barcode symbologies were evaluated in a study at Ohio University Center for Automatic Identification. Studies indicate that a well-trained data entry operator will usually make a data entry error once every 300 keystrokes. Therefore, implementing even the least accurate barcode symbology is a huge step forward to increasing production and reducing data entry errors.

Barcode Type

Worst Case Accuracy

Best Case Accuracy


1 error in 10.5 million

1 error in 612.9 million


1 error in 10.5 million

1 error in 612.4 million

Code 128

1 error in 2.8 million

1 error in 37 million

Code 39

1 error in 1.7 million

1 error in 4.5 million


1 error in 394 thousand

1 error in 800 thousand

Conversion Table & Specifications

Specifications are provided by many types of barcode implementations. In some cases, the specifications of the barcode sizing parameters are given in inches, but need to be calculated in CM (centimeters) in the barcode tool. To convert inches to CM, multiply the value in inches by 2.54. To convert mils to CM, multiply the MILS (1 mil equals .001 inches) value by .00254.

Below is a chart that contains many common barcode dimensions:
















































Barcode Types


Example of Barcode

Code 39

The Code 39 barcode is the easiest to use of alpha-numeric barcodes and is designed for character self-checking, thus eliminating the requirement for check character calculations.



Extended Code 39

The full 128 character ASCII character set can be printed (in accordance with ISO 646) with the Extended Code 39 barcode.


Code 128

Character set A allows for uppercase characters, punctuation, numbers and several special functions such as a return or tab.

ISBT 128
USS Code 128
ISS Code 128


Character set B allows for upper and lower case letters, punctuation, numbers and a few select functions.



Character set C encodes only numbers and the FNC1 function (indicated in blue). Because the numbers are "interleaved" into pairs, two numbers are encoded into every barcode character which makes it a very high-density barcode.

UCC 128
EAN 128



The Universal Product Code (UPC) barcode is used in the retail industry. UPC-A consists of 12 numbers.




UPC-E consists of 12 numbers that are compressed into 8 numbers for small packages.



The European Article Numbering System (EAN) is a superset of U.P.C. EAN-13 consists of 13 numbers.




The European Article Numbering System (EAN) is a superset of U.P.C. EAN-8 and consists of 8 digits for small packages.


Interleaved 2 of 5

Interleaved 2 of 5 (ITF) is a numeric-only barcode used for encoding pairs of numbers in a high density barcode format.




The symbology of the Codabar character set consists of barcode symbols representing characters 0-9, letters A to D and the following symbols: -  .  $  /  +. 

Rationalized Codabar
2 of 7 Code


Industrial 2 of 5

The symbology of the Industrial Code 2 of 5 character set consists of barcode symbols representing the numbers 0-9, the start character and the stop character.

Code 2 of 5


Code 11

The symbology of the Code 11 character set consists of barcode symbols representing the numbers 0-9, a dash symbol, the start character and the stop character.



Code 93

The symbology of the Code 93 character set consists of barcode symbols representing characters 0-9, A-Z, the space character and the following symbols:  /, + , %, - , . , $ .



GS1 Databar

GS1 DataBar is capable of encoding up to 20,000,000,000,000 (20 trillion) values. This symbol is approved for POS use after 1-1-2010.



DataBar Expanded

GS1 DataBar Expanded is a variable length, expanded version of the DataBar symbology capable of encoding the 14 digit GTIN and additional data.



DataBar Expanded Stacked

GS1 DataBar Expanded Stacked Omni-directional has the exact same data characteristics as GS1 DataBar Expanded, except that it may be stacked to decrease width and increase height.



DataBar Omni-Directional Stacked

GS1 DataBar Stacked Omni-Directional has the exact same data characteristics as GS1 DataBar. This symbol is approved for POS use after 1-1-2010.



Databar Truncated

GS1 DataBar Truncated has the exact same data characteristics as the GS1 DataBar barcode, except the bar height is set to the minimum height of 13 times the X dimension.



GS1 Databar Limited

GS1 DataBar Limited has the same data characteristics as the GS1 DataBar barcode, except that it may only include values up to 4,000,000,000,000 (4 trillion).



GS1 Databar Coupon Code

Coupon Code Tutorial. Coupons printed before January 2010 should also include the UPC symbol. After January 2010, the UPC symbol does not need to be printed.



MSI Plessey

The MSI Plessey barcode was designed in the 1970s by the Plessey Company in England and has been used primarily in libraries and retail applications.

MSI Code
Pulse Width Modulated Barcode



The POSTNET (Postal Numeric Encoding Technique) barcode is a special barcode developed by the US Post Office to encode zip code information.

Zip + 4



The U.S. Postal Service uses a special barcode called PLANET to track letter-size mail electronically




New USPS height-modulated barcode designed for use in high speed, automated, mail sorting machines that allow both Planet and Postnet barcode information to be combined into a single barcode to track mailings, request address-quality service.

4-State Customer Barcode
4CB or 4-CB
 OneCode Solution Barcode



The MICR E13B font is a special font that is used on bank checks and drafts in the United States, Canada, Puerto Rico, Panama, UK, and a few other countries to print MICR characters for magnetic recognition and optical character recognition systems.




The MICR CMC-7 font is a special font that is used on bank checks in Mexico, France, Spain and most Spanish speaking countries.





The OCR-A and OCR-B character sets contain both upper and lower case letters, numbers, and several special characters. The OCR-A font characters were created from ANSI X3.17-1981 specifications and the OCR-B font characters were created from ANSI X3.49-1982 specifications.

OCR-B1 Eurobanking
OCR-A1 Eurobanking



Large amounts of text and data can be stored securely and inexpensively when using the PDF-417 symbology. Using Reed Solomon error correction, the printed PDF417 barcode symbol can withstand damage without causing loss of data.



Data Matrix

Data Matrix is a very area efficient 2D barcode symbology that uses a unique square module perimeter pattern that helps the barcode scanner determine the cell locations. It can encode letters, numbers, text and actual bytes of data; it can encode just about anything including extended characters, unicode characters and photos.



Maxi Code

MaxiCode is a two-dimensional matrix barcode symbology containing hexagon modules in a 1" square area. MaxiCode is used by the UPS (United Parcel Service) on packing slips for sorting and addressing packages.




Aztec is an area efficient 2D barcode symbology that can encode letters, numbers, text and actual bytes of data, including Unicode and extended characters, plus small photos.


QR Code

QR-Code is a very efficient, two-dimensional (2D) barcode symbology that encodes characters, numbers, text and actual bytes of data, including Unicode characters and photos.



Asset Tags & Labels

Seton Has Asset Tags & Asset Labels For All Your Identification & Tracking Needs

Choose barcode labels or serialized asset tags & asset 
labels printed with your wording, layout and logo. Use asset tags to identify and track all your assets & equipment, to deter theft and improve inventory.

DuraGuard Asset Tags


Protective topcoat “guards” against solvents & abrasion!

Most popular & versatile asset tag printed with or without bar code

Indoor/Outdoor multi-layered metalized polyester


QuickGuard Foil Labels


Durable to withstand industrial environments!

Debossed numbering prevents numbers from being rubbed off

Permanently printed into anodized aluminum for years of use


SetonGuard Property ID Plates


Maximum Durability – Specially designed for Extreme Conditions

Perfect for Outdoor/Harsh Environments & chemical resistance

Text & graphics permanently etched into anodized aluminum tag


Destructible Asset Labels


Virtually impossible to remove 
in one piece!

Label breaks into tiny pieces if removed

Prevents unauthorized transfer 
of assets


Tamper-Evident Bar Code Labels


Discourage theft and prevents 
reuse of labels!

Leaves a checkerboard pattern 
when removed

Label cannot be reused once removed


Top of page
Site Policy Contact Us Disclosure Policy Suggested Operating Environment