바코드 생성기 (EAN-13)

숫자 12자리를 넣으면 체크 디지트를 계산해 바코드를 그리고, 13자리를 넣으면 이미 붙은 체크 디지트가 맞는지 검증합니다.

입력 자릿수: 12
체크 디지트: -
전체 코드(13자리): -
접두어 해석: -

체크 디지트 계산 과정 보기
자리숫자가중치곱

ⓘ 이 도구로 만든 바코드는 학습·사내 관리·테스트 용도로만 사용하세요. 실제 상품 유통에 쓰는 바코드는 GS1 등 정식 발급 기관에서 국가·업체 코드를 부여받아야 하며, 임의로 만든 숫자로는 실제 유통망에 등록할 수 없습니다.

EAN-13 바코드는 어떤 구조인가요?

EAN-13은 13자리 숫자를 흑백 막대 패턴으로 옮긴 코드입니다. 숫자 하나는 폭이 같은 7개의 칸(모듈)으로 표현되고, 각 칸은 검정(1) 또는 흰색(0)입니다. 맨 앞 숫자 한 자리는 막대로 직접 그려지지 않고,왼쪽 6자리를 어떤 패턴(L형·G형)으로 그릴지를 정하는 데 쓰입니다. 그래서 바코드 그림에서 왼쪽 끝에 홀로 떨어져 인쇄된 숫자가 바로 이 첫 자리입니다.

전체 모듈 수는 95칸입니다. 시작 보호선 3칸, 왼쪽 6자리 42칸, 가운데 보호선 5칸, 오른쪽 6자리 42칸, 끝 보호선 3칸을 더한 값(3 + 42 + 5 + 42 + 3 = 95)이며, 양쪽에 여백(quiet zone)이 별도로 필요합니다. 이 도구는 막대 1칸을 선택한 픽셀 수(기본 3px)로 그리므로, 기본 크기에서 이미지 폭은 95 × 3 + 좌우 여백 54 = 339px 입니다.

앞 3자리 접두어는 무엇을 뜻하나요?

앞쪽 2~3자리는 GS1 회원기구(국가 단위 발급 기관)에 배정된 접두어입니다. 중요한 점은원산지가 아니라 "코드를 발급해 준 기관의 소재지"라는 것입니다. 해외에서 만든 제품도 국내 업체가 880 코드를 받아 붙이면 880으로 시작할 수 있습니다. 아래 표는 흔히 보게 되는 대역입니다.

앞자리 범위의미비고
000~019미국 (GS1 US, UPC 계열)12자리 UPC-A 앞에 0을 붙인 형태. 이 대역에는 다른 나라 업체가 쓰는 번호도 섞여 있을 수 있음
200~299매장 내부용(제한 유통)정육·청과 등 매장이 자체 부여하는 대역
300~379프랑스·모나코
400~440독일
450~459, 490~499일본
690~699중국
880대한민국국내 상품에서 가장 흔한 앞자리
977연속간행물(ISSN)잡지·정기간행물
978, 979도서(ISBN, Bookland)ISBN-13이 그대로 EAN-13이 됨

표에 없는 대역도 많으며 배정은 GS1이 관리합니다. 정확한 최신 배정은 GS1 공식 안내를 확인하세요. 나머지 자릿수는 보통 업체 코드, 상품 코드, 체크 디지트로 나뉘는데, 업체 코드의 길이는 회원 등급과 발급 시기에 따라 달라 "몇 번째 자리까지가 업체 코드"라고 고정해서 말할 수 없습니다.

체크 디지트는 어떻게 계산되나요?

왼쪽에서부터 홀수 번째 자리에는 1을, 짝수 번째 자리에는 3을 곱해 12개를 모두 더합니다. 그 합을 10으로 나눈 나머지를 10에서 빼면 체크 디지트입니다. 나머지가 0이면 10이 아니라 0이 됩니다. 식으로 쓰면체크 = (10 − (합 mod 10)) mod 10 입니다.

계산 예시 1 — 880123456789

자리숫자가중치곱
18×18
28×324
30×10
41×33
52×12
63×39
74×14
85×315
96×16
107×321
118×18
129×327
합계127

합계 127을 10으로 나눈 나머지는 7, 따라서 체크 디지트는 10 − 7 = 3, 완성된 코드는 8801234567893 입니다.

계산 예시 2 — 도서 코드 978030640615

978로 시작하는 EAN-13은 도서(ISBN-13)입니다. 앞 12자리 978030640615의 가중 합은 93이고,93 mod 10 = 3이므로 체크 디지트는 10 − 3 = 7, 완성 코드는9780306406157 입니다. 이 값은 ISBN-13 체크 방식과 같아 도서 뒷면의 바코드 숫자와 직접 대조할 수 있습니다.

체크 디지트가 잡아내는 것과 놓치는 것

가중치가 1과 3으로 번갈아 붙기 때문에 숫자 한 자리를 잘못 입력하면 항상 검출됩니다. 인접한 두 자리를 바꿔 쓴 실수도 대부분 검출되지만, 두 숫자의 차이가 정확히 5인 경우는 놓칩니다. 예를 들어 400638133393의 체크 디지트는 1인데, 5번째와 6번째 숫자 3과 8을 맞바꾼 400683133393도 체크 디지트가 1로 같습니다. 반면 0과 6을 맞바꾼 400368133393은 체크 디지트가 7로 달라져 검출됩니다. 체크 디지트는 "완벽한 오류 방지"가 아니라 "흔한 실수를 걸러내는 장치"라는 뜻입니다.

이 도구 사용법

흔한 실수와 한계

이런 곳에 쓰세요

재고 관리 시스템 시험 입력, 사내 자산·비품 라벨, 교육용 시연, POS 프로그램 개발 중 테스트 데이터처럼 외부 유통과 무관한 경우에 적합합니다. 사내 코드라면 200~299 대역(매장 내부 사용)이나 임의의 숫자를 쓰되, 외부로 나가는 상품에는 쓰지 않는다는 원칙을 정해 두면 충돌 사고를 막을 수 있습니다. 링크나 문장 자체를 스캔 가능한 그림으로 만들고 싶다면 바코드가 아니라 QR 코드 생성기가 맞고, 연락처를 QR로 공유하려면 연락처 QR(vCard) 생성기를 쓰세요. 임의의 식별자가 필요하면 UUID 생성기도 대안입니다.

인쇄할 때 알아 둘 점

EAN-13의 표준 크기(배율 100%)는 좌우 여백을 포함한 가로 약 37.3mm, 막대 높이 약 22.8mm 수준(GS1 일반 규격의 공칭값 기준)이며 막대 한 칸의 폭이 약 0.33mm입니다. 규격은 80%~200% 사이의 배율을 허용하는데, 80% 미만으로 줄이면 일반 스캐너가 읽기 어려워집니다. 따라서 라벨 크기가 작다면 이미지를 줄이기보다 바코드 자체의 공간을 확보하는 설계가 먼저입니다. 이 도구의 PNG는 "작게 2px / 보통 3px / 크게 4px / 아주 크게 6px" 중 고를 수 있으며, 인쇄용이라면 큰 크기로 받아 문서에서 원하는 실제 크기에 맞춰 넣되 가로세로 비율은 유지하세요. 흰 바탕에 검정 막대가 가장 안정적이고, 연한 색이나 반전(검정 바탕 흰 막대)은 대부분의 스캐너에서 인식이 떨어집니다.

또 하나, 막대 아래에 같이 인쇄되는 사람이 읽는 숫자(HRI)는 스캔이 실패했을 때 수동 입력용입니다. 이 숫자가 막대와 다르면 현장에서 혼란이 생기므로 항상 같은 도구에서 같이 만든 이미지를 쓰고, 숫자만 따로 고쳐 붙이는 일은 피하세요.

자주 묻는 질문

실제 상품 포장에 인쇄해서 유통해도 되나요?

권장하지 않습니다. 실제 유통용 바코드는 GS1 코리아 같은 기관에서 업체 코드를 정식으로 발급받아야 하며, 임의로 만든 숫자는 다른 상품과 코드가 중복되거나 매장 시스템에서 인식되지 않을 수 있습니다.

12자리를 다 채우지 않으면 어떻게 되나요?

12자리 미만이면 바코드를 만들지 않고 자릿수 부족 안내를 보여 줍니다. 부족한 자리를 임의로 0으로 채우면 의도하지 않은 코드가 만들어지기 때문입니다.

13자리를 넣었는데 체크 디지트가 다르다고 나옵니다.

입력한 마지막 숫자가 앞 12자리로 계산한 값과 다르다는 뜻입니다. 옮겨 적다 생긴 오타일 가능성이 큽니다. 원본 코드를 다시 확인하세요. 도구는 계산된 올바른 값으로 바코드를 그려 줍니다.

880으로 시작하면 한국에서 만든 제품인가요?

꼭 그렇지는 않습니다. 접두어는 코드를 발급한 GS1 회원기구를 나타내며 제조 국가를 보증하지 않습니다. 원산지는 제품 표시사항으로 확인해야 합니다.

스캐너가 읽지 못합니다.

가장 흔한 원인은 낮은 해상도, 좌우 여백 부족, 명암 대비 부족입니다. 크기를 키우고, 흰 바탕에 검정으로 인쇄하며, 인쇄 배율을 100%로 유지해 보세요.

입력한 숫자가 서버로 전송되나요?

아닙니다. 계산과 그리기는 모두 브라우저 안에서 이루어지며 어떤 데이터도 외부로 보내지 않습니다.