2D Barcode
Linear Barcode
Code 11
Code 11
Code 11 is a discrete, high-density and numeric-only barcode symbology. It is a linear barcode which also known as Code11, USD-8, USD8. Code 11 is originally designed to use on labels for telecom industry. Code 11 was designed by Intermec in 1977. Code11 barcode is able to encode numeric data and hyphen. The checksum digit "C" or "K" is optional of Code 11.
Encoding Data of Code 11:
Code 11 could encode data in variable length. The character set of Code 11 symbology including the numeric data and hyphen below:

Numberic numbers from 0 to 9

Special character: Dash symbol (-)
Component of Code 11 symbology:
A complete Code 11 is composed of 5 parts, including:
  • A leading start/stop character. Start and stop characters are mapped to asterisk special character.
  • The data itself encoded in the barcode symbology.
  • An optional check digit. And "C" check digit is the basic check digit for Code 11. One or two weighted checksum digit is required for Code 11.
  • An optional "K" check digit. This check digit is depending on the message length. "K" check digit is highly recommended for message over the string length of 10.
  • An ending start/stop character which mapped to asterisk special character.
Checksum Digit of Code 11:

Code 11 is not the self-checking barcode symbology. In order to preventing encoding error and enhance data integrity, checksum digit is necessary. Unlike Code 93 which needs both "C" or "K" digit, Code 11 needs at least requires one "C" check digit. Both "C" and "K" check digits are required when string length over 10.
Checksum Calculation of Code 11:
Code 11 employs the Modulo 11 division method to calculate the check digit of Code 11. Just follow the steps below to calculate the checksum digit.
Calculation for "C" check digit:
Choose the right most data of the message, assigned weight value 1 to it.

Put the remaining data from right to left in the sequence of value 1 to 10. Then start from 1 again if string length is more than 10.

Multiple the data value with its weighted value, sum up all the results.

Divide the result by number 11 and the reminder of the result is check digit C.
Calculation for "K" check digit:
Choose the right most data of the message (including check digit "C"), assigned weight value 1 to it. And the right most data should be check digit "C" at this occasion.

Put the remaining data from right to left in the sequence of value 1 to 9. Then start from 1 again if string length is more than 9.

Multiple the data value with its weighted value, sum up all the results.

Divide the result by number 11 and the reminder of the result is check digit "K".
Encoding Table of Code 11:
The width encoding is represented as number 0. It means a narrow bar or space. While the number 1 represents a wide bar or space.

Numeric data: 0 Width encoding as: 00001 Barcode encoding as: 101011
Numeric data: 1 Width encoding as: 10001 Barcode encoding as: 1101011
Numeric data: 2 Width encoding as: 01001 Barcode encoding as: 1001011
Numeric data: 3 Width encoding as: 11000 Barcode encoding as: 1100101
Numeric data: 4 Width encoding as: 00101 Barcode encoding as: 1011011
Numeric data: 5 Width encoding as: 10100 Barcode encoding as: 1101101
Numeric data: 6 Width encoding as: 01100 Barcode encoding as: 1001101
Numeric data: 7 Width encoding as: 00011 Barcode encoding as: 1010011
Numeric data: 8 Width encoding as: 10010 Barcode encoding as: 1101001
Numeric data: 9 Width encoding as: 10000 Barcode encoding as: 110101
Character: - (Dash) Width encoding as: 00100 Barcode encoding as: 101101
Start/Stop Width encoding as: 00110 Barcode encoding as: 1011001