바이트 수 계산기
입력하면 UTF-8·EUC-KR 바이트가 실시간으로 잡힙니다.
🔒 모두 브라우저 안에서 계산 · 서버 전송 없음
웹·DB 기본
레거시·문자발송
한글이 섞일수록 두 값이 벌어집니다
설명
텍스트의 글자 수와 UTF-8·EUC-KR 인코딩 기준 바이트 수를 계산합니다. DB 컬럼 길이, 문자 제한 확인에 유용합니다.
관련 도구
글자 바이트 수 계산기는 입력한 텍스트가 UTF-8 또는 EUC-KR 인코딩 기준으로 몇 바이트인지 즉시 알려주는 개발·실무 도구입니다. 데이터베이스 컬럼 길이 설계, SMS·알림톡 발송 시 바이트 초과 여부 확인, API 요청 본문 크기 검증 등 실제 개발 업무에서 자주 마주치는 상황에 바로 활용할 수 있습니다. 한글 한 글자의 바이트 수가 인코딩마다 다르기 때문에 숫자로 정확히 확인하는 것이 중요합니다.
사용 방법
텍스트 입력창에 확인할 문자열을 붙여넣거나 직접 입력합니다. 입력하는 즉시 UTF-8과 EUC-KR 두 기준의 총 바이트 수가 글자 수(문자 수)와 함께 자동으로 표시됩니다. UTF-8 기준으로 한글 1글자는 3바이트, 영문·숫자·공백은 1바이트입니다. EUC-KR은 한글 1글자가 2바이트, 영문은 1바이트입니다. 예를 들어 '안녕하세요'는 UTF-8로 15바이트, EUC-KR로 10바이트가 됩니다.
이럴 때 유용해요
MySQL의 VARCHAR(255)는 바이트가 아니라 문자 수 기준이지만, 레거시 시스템이나 일부 NoSQL에서는 바이트 단위로 컬럼 크기를 제한합니다. 이런 경우 실제 데이터 크기를 미리 파악하지 않으면 저장 시 오류가 발생합니다. 또한 카카오 알림톡은 메시지 1건당 한글 기준 최대 1,000자(약 2,000바이트), 일반 SMS는 보통 90바이트(한글 약 45자) 이내여야 단문으로 처리됩니다. HTTP API를 직접 호출할 때 Content-Length 헤더 값을 수동으로 계산해야 하는 상황에서도 이 도구가 빠른 확인 수단이 됩니다.
자주 하는 실수
len() 함수나 글자 수 카운터만 믿고 바이트를 글자 수와 같다고 착각하는 경우가 많습니다. 한글이 섞인 문자열에서 글자 수와 바이트 수는 완전히 다릅니다. 이모지(이모티콘)는 UTF-8에서 4바이트로 처리되므로 이모지가 포함된 텍스트는 예상보다 바이트 수가 크게 늘어납니다. EUC-KR에서 지원하지 않는 특수 한자나 이모지는 인코딩이 불가능하거나 깨지므로, 현대 시스템에서는 UTF-8을 기본 인코딩으로 사용하는 것이 안전합니다.
자주 묻는 질문
한글 1글자가 UTF-8에서 3바이트인 이유는 무엇인가요?
EUC-KR과 CP949는 다른 건가요?
JavaScript에서 문자열 바이트 수를 코드로 확인하려면 어떻게 하나요?
공백이나 줄바꿈도 바이트를 차지하나요?
SMS 90바이트 제한을 정확히 지키려면 어떻게 해야 하나요?
글자 수와 바이트 수는 왜 다른가요?
SMS 90바이트는 어느 기준인가요?
이모지를 넣으면 왜 EUC-KR 값이 이상한가요?
계산은 어디서 이뤄지나요?
개인정보처리방침
바이트 수 계산기 사용법
입력창에 텍스트를 붙여넣거나 타이핑하면 UTF-8과 EUC-KR 두 인코딩의 바이트 수가 실시간으로 함께 표시됩니다. 글자 수(문자 개수)만 세는 일반 글자수 세기와 달리, 이 도구는 "실제 저장·전송될 때 차지하는 바이트"를 계산합니다. 한글이 섞인 문장에서 두 값이 크게 벌어지는 이유를 눈으로 확인할 수 있어, DB 컬럼 길이나 문자 발송 한도를 맞출 때 특히 유용합니다.
UTF-8과 EUC-KR 바이트 계산 원리
같은 글자라도 인코딩 방식에 따라 차지하는 바이트가 다릅니다. 영문 알파벳·숫자·기본 기호는 두 방식 모두 1바이트지만, 한글 한 글자는 UTF-8에서 3바이트, EUC-KR(확장 규격 CP949 포함)에서 2바이트를 씁니다. 이 차이 때문에 "안녕하세요"는 UTF-8로 15바이트, EUC-KR로 10바이트가 됩니다.
| 문자 종류 | UTF-8 | EUC-KR |
|---|---|---|
| 영문·숫자·기본기호 | 1바이트 | 1바이트 |
| 한글 완성형 1글자 | 3바이트 | 2바이트 |
| 이모지(😀 등) | 4바이트 | 표현 불가 |
EUC-KR은 이모지나 일부 특수문자를 표현하지 못하므로, 이런 문자가 포함되면 실제 시스템에서는 물음표(?)로 깨지거나 오류가 납니다. 이 계산기는 그런 상황을 미리 파악하는 데 도움이 됩니다.
이럴 때 씁니다
문자메시지(SMS)는 관례적으로 90바이트를 넘으면 LMS(장문)로 전환되는데, 발송 시스템이 EUC-KR 기준인지 UTF-8 기준인지에 따라 들어가는 글자 수가 달라집니다. 한글 45자는 EUC-KR로 90바이트라 SMS에 딱 맞지만 UTF-8로는 135바이트라 초과합니다. 또 데이터베이스 VARCHAR가 바이트 단위로 길이를 제한하는 경우(예: 구형 오라클, 일부 MySQL 설정), 컬럼에 넣을 문자열이 한도를 넘는지 미리 확인할 수 있습니다. 구형 게시판·ERP 등 EUC-KR을 쓰는 레거시 시스템에 데이터를 옮길 때도 깨짐 여부를 점검하기 좋습니다.
활용 팁
입력한 텍스트의 UTF-8 바이트를 3으로 나누면 대략적인 한글 글자 수를, EUC-KR 바이트를 2로 나누면 순수 한글일 때의 글자 수를 가늠할 수 있습니다. 영문과 한글이 섞였다면 UTF-8 값에서 EUC-KR 값을 뺀 차이가 곧 "한글 글자 수"와 같아집니다(한글 1자당 UTF-8 3바이트 − EUC-KR 2바이트 = 1바이트 차이). 공백과 줄바꿈도 바이트로 계산되니, 한도에 아슬아슬할 때는 불필요한 공백부터 줄이세요.
자주 쓰신다면 Ctrl+D로 즐겨찾기에 담아두세요.