Набори кодів A, B і C
Code 128 перемикається між трьома наборами кодів, щоб ефективно вміщати різні види даних. Набір A охоплює великі літери, цифри та керувальні символи; набір B охоплює великі й малі літери, цифри та розділові знаки; набір C пакує по дві цифри в кожен символ коду, що робить довгі числа дуже компактними.
Кожен символ коду має завширшки 11 модулів і складається з 3 смужок і 3 проміжків, а стоповий шаблон має 13 модулів. Кодувальник може перемикати набори посеред штрихкоду, щоб тримати його якомога коротшим.
Контрольний символ
Кожен штрихкод Code 128 закінчується обов'язковим контрольним символом. Його обчислюють, додаючи значення стартового символу до суми значень кожного символу даних, помножених на їхню позицію, а потім беруть остачу від ділення на 103. Контрольний символ не показують у тексті для людини.
GS1-128 у логістиці
GS1-128 це Code 128 із символом FNC1 після старту, який позначає вміст як ідентифікатори застосування GS1. Це стандартний лінійний штрихкод на транспортних і палетних етикетках, де він часто несе SSCC (ідентифікатор застосування 00) разом із GTIN, номерами партій і датами.
Code 128 визначає ISO/IEC 15417, і його широко використовують для відправлень, складів і внутрішніх етикеток.