「문자는 90바이트까지 단문」이라는 말은 많이 들어도, 그 90바이트가 한글 몇 글자인지는 막상 계산해 보면 헷갈립니다. 한글은 45자인데 영문·숫자·공백은 1바이트라 섞이면 훨씬 더 들어가고, 이모지가 하나만 끼어도 계산이 달라집니다. 글자수닷컴 바이트 계산기가 쓰는 기준 그대로, 세는 방법과 직접 돌려 본 값을 정리했습니다.
90바이트를 세는 방법
바이트 수는 글자를 어떤 문자 코드로 저장하느냐에 따라 달라집니다. 국내 문자 메시지 기준으로 흔히 쓰는 방식은 EUC-KR이고, 웹에서 쓰는 UTF-8과 비교하면 한글 한 글자의 크기가 다릅니다.
| 글자 종류 | EUC-KR 근사 | UTF-8 |
|---|---|---|
| 영문·숫자·공백·기본 기호 | 1바이트 | 1바이트 |
| 한글 한 글자 | 2바이트 | 3바이트 |
| 한자·가나·이모지 등 | 2바이트(근사) | 글자마다 다름(이모지 4바이트 안팎) |
글자수닷컴은 영문·숫자를 1바이트, 그 밖의 글자를 2바이트로 센 값을 「EUC-KR 근사」로 보여 주고, 이 값이 90 이하면 단문, 2,000 이하면 장문으로 구분합니다. 이모지처럼 EUC-KR로 표현할 수 없는 글자도 2바이트로 셉니다. 근사값이므로 통신사나 문자 발송 업체가 실제로 적용하는 기준은 발송 서비스 안내를 한 번 더 확인해야 합니다.
같은 90바이트, 글자 수는 이렇게 다릅니다
한글 45자 = 90바이트(EUC-KR)이고, 46자가 되면 92바이트라 장문으로 넘어갑니다. 영문·숫자만으로 90자를 채우면 딱 90바이트입니다. 같은 90바이트라도 쓰는 글자에 따라 30자에서 90자까지 차이가 납니다. 그래서 「45자까지」라고만 외우면 숫자가 섞인 실제 문구에서 계산이 틀어집니다.
실제 문구로 계산해 보기
글자수닷컴 계산 함수로 돌린 값입니다.
| 문구 | 글자 수 | EUC-KR 근사 | UTF-8 | 종류 |
|---|---|---|---|---|
| [배송] 주문하신 상품이 오늘 출고되었습니다. 운송장 1234567890 | 40자 | 61바이트 | 82바이트 | 단문 |
| Your verification code is 482915. Valid for 3 minutes. | 54자 | 54바이트 | 54바이트 | 단문 |
| [글자수닷컴] 안녕하세요, 예약하신 상담이 내일 오후 3시로 확정되었습니다. 방문 전 연락 부탁드립니다. | 58자 | 99바이트 | 140바이트 | 장문 |
세 번째 안내 문구는 58자밖에 안 되지만 99바이트라 9바이트 모자라 장문이 됩니다. 이 문구를 90바이트로 자르면 「…방문 전 연락 부탁」까지 53자가 남습니다. 글자 중간에서 자르지 않는 방식으로 계산한 결과입니다. 이모지 하나만 붙어도 다릅니다. 「안녕하세요 😀」는 7자인데 EUC-KR 근사로 13바이트입니다.
단문과 장문, 어떻게 가르나
91바이트부터는 장문이 되고, 도구는 2,000바이트까지를 장문으로 봅니다. 한글만이라면 1,000자 안팎입니다. 단문과 장문은 발송 요금이 다른 서비스가 많으므로, 문구를 조금만 줄여 90바이트에 맞출 수 있는지 먼저 보는 편이 좋습니다.
직접 확인하는 코드
브라우저 콘솔에 붙여 넣으면 문구의 바이트와 종류를 바로 볼 수 있습니다. 글자수닷컴 바이트 계산기와 같은 근사 규칙입니다.
// EUC-KR 근사: 아스키 1바이트, 그 외 2바이트
function smsBytes(text) {
let eucKr = 0;
for (const ch of text) eucKr += ch.codePointAt(0) < 0x80 ? 1 : 2;
const utf8 = new TextEncoder().encode(text).length;
return { eucKr, utf8, kind: eucKr <= 90 ? '단문' : eucKr <= 2000 ? '장문' : '초과' };
}
smsBytes('[배송] 주문하신 상품이 오늘 출고되었습니다. 운송장 1234567890');
줄일 때 확인할 것
- 공백과 줄바꿈도 바이트입니다. 줄바꿈 하나가 1바이트로 잡히므로, 줄을 많이 나눈 문구는 생각보다 빨리 찹니다.
- 괄호·대괄호·마침표는 1바이트지만 전각 기호(「」, ※ 등)는 2바이트로 셉니다.
- 발송 서비스의 자동 삽입 문구(광고 표기, 수신 거부 안내)는 별도로 더해질 수 있어, 90바이트에 딱 맞추면 넘칠 수 있습니다. 여유를 몇 바이트 두세요.
- 이모지는 가능하면 피하세요. 근사 계산에서도 2바이트이고, 실제 발송 규격에서는 단말과 서비스에 따라 처리가 달라질 수 있습니다.
문구를 붙여 넣고 90바이트에 맞춰 자르려면 바이트 계산기를, 공백 포함·제외 글자수와 원고지 매수까지 한 번에 보려면 글자수 세기를 쓰세요.