קבוצות הקוד 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 ונפוץ מאוד במשלוחים, במחסנים ובתוויות פנימיות.