바코드 포맷 선택 가이드 — CODE128 vs CODE39 vs EAN-13
바코드 생성기를 열면 CODE128, CODE39, EAN-13, UPC-A… 낯선 이름들이 줄지어 나옵니다. 아무거나 고르면 될 것 같지만, 포맷마다 담을 수 있는 문자와 자릿수 제한이 다르고 스캐너·업계 표준과의 호환성도 달라서 잘못 고르면 현장에서 읽히지 않는 라벨을 대량으로 출력하는 사고가 납니다. 이 글은 상황별 선택 기준을 먼저 제시하고, 그다음 포맷별 상세를 정리합니다.
30초 요약: 상황별 추천 포맷
| 상황 | 추천 포맷 | 이유 |
|---|---|---|
| 사내 재고·자산 관리, 시리얼 번호 | CODE128 | 영문·숫자·기호 모두 지원, 고밀도, 현대 스캐너 표준 |
| 마트·편의점에 납품하는 소매 상품 | EAN-13 | 국내·국제 유통 표준 (GS1 코드 발급 필수) |
| 미국 유통 채널 납품 | UPC-A | 북미 소매 표준 |
| 박스·물류 포장 단위 | ITF-14 | 골판지 인쇄에 강한 물류 표준 |
| 구형 장비와 호환이 필요한 산업 현장 | CODE39 | 가장 오래되고 널리 지원되는 포맷 |
| 스마트폰으로 스캔할 링크·정보 | QR 코드 | 1D 바코드는 일반 카메라 앱 지원이 제한적 |
범용 포맷: CODE128과 CODE39
CODE128 — 고민될 땐 이것
CODE128은 ASCII 128자(영문 대소문자, 숫자, 특수문자)를 모두 표현할 수 있는 고밀도 포맷입니다. 같은 내용을 CODE39보다 약 30% 짧은 바코드로 만들 수 있어 좁은 라벨에 유리하고, 체크섬이 내장되어 오독률도 낮습니다. 내부 관리용 코드, 택배 송장, 병원 손목 밴드 등 "우리가 정한 값을 우리 스캐너로 읽는" 모든 상황에서 사실상의 표준입니다.
CODE39 — 레거시 호환용
CODE39는 1974년에 만들어진 가장 오래된 포맷 중 하나로, 대문자·숫자·일부 기호(-, ., 공백, $, /, +, %)만 지원합니다. 밀도가 낮아 같은 내용이면 바코드가 길어지지만, 수십 년 된 스캐너까지 지원하는 호환성이 강점입니다. 미국 국방부(LOGMARS)나 자동차 업계(AIAG) 등 CODE39를 명시하는 규격에 맞춰야 하는 경우가 아니라면 CODE128을 쓰는 편이 낫습니다.
유통 표준: EAN-13, EAN-8, UPC-A
마트 계산대에서 찍는 상품 바코드가 EAN-13(한국 포함 국제)과 UPC-A(북미)입니다. 이들은 임의로 번호를 만들어 쓰는 포맷이 아닙니다. 앞자리에는 국가 코드(한국 880)와 GS1이 발급하는 업체 코드가 들어가고, 마지막 자리는 체크 디지트로 자동 계산됩니다. 정식 유통에 사용하려면 대한상공회의소 유통물류진흥원에서 업체 코드를 발급받아야 하며, 자세한 절차는 EAN-13 가이드에서 다룹니다.
- EAN-13 — 13자리 숫자. 국내외 소매 유통 표준.
- EAN-8 — 8자리 숫자. 껌·담배처럼 라벨 공간이 작은 상품용 축약형.
- UPC-A — 12자리 숫자. 미국·캐나다 표준으로, EAN-13과 호환됩니다(앞에 0을 붙이면 EAN-13이 됨).
물류·특수 포맷
- ITF-14 — 14자리 숫자로 박스 단위 물류 포장에 사용합니다. 인쇄 품질이 낮은 골판지에서도 잘 읽히도록 바가 굵게 설계되어 있고, 낱개 상품의 EAN-13에 물류 식별자를 붙여 만듭니다.
- Codabar — 숫자와 일부 기호를 지원하는 구형 포맷으로 도서관, 헌혈, 택배 분야에서 사용됐습니다. 신규 시스템에는 권장하지 않습니다.
- MSI — 숫자 전용 포맷으로 창고 선반 라벨 등 재고 관리에 쓰입니다.
- Pharmacode — 제약 포장 검수용 특수 포맷입니다. 일반 용도로는 사용하지 마세요.
1D 바코드 대신 QR 코드를 써야 하는 경우
1D 바코드는 전용 스캐너(또는 스캐너 앱)로 읽는 것을 전제로 합니다. 스마트폰 기본 카메라 앱은 QR 코드는 잘 인식하지만 1D 바코드 인식은 기종에 따라 제한적입니다. 일반 소비자가 스마트폰으로 찍게 할 목적이라면 1D 바코드가 아니라 QR 코드를 선택하세요. URL, WiFi 접속 정보, 연락처처럼 구조화된 데이터도 QR 코드만 담을 수 있습니다.
포맷 선택 후 체크리스트
- 실제 스캐너로 테스트 — 운영 환경에서 쓰는 바로 그 장비로 시험 스캔하세요. 포맷을 지원해도 설정에서 비활성화된 경우가 있습니다.
- 자릿수·문자 확인 — EAN-13은 숫자 12~13자리, ITF-14는 짝수 자리만 가능합니다. 데이터에 한글이 있다면 1D 바코드로는 표현할 수 없습니다.
- 인쇄 크기와 여백 — 바코드 좌우에는 바 굵기의 10배 이상 여백(Quiet Zone)이 필요합니다. 라벨 디자인에서 여백을 침범하지 않는지 확인하세요.
- 대비 — 어두운 바 + 밝은 배경이 원칙입니다. 빨간 계열 바는 레이저 스캐너가 읽지 못할 수 있습니다.