문자 90바이트, 한글은 몇 글자까지 들어갈까

「문자는 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바이트, 글자 수는 이렇게 다릅니다

90바이트 안에 들어가는 글자 수영문·숫자만: 90자; 한글만 (EUC-KR): 45자; 한글만 (UTF-8): 30자020406080영문·숫자만90자한글만 (EUC-KR)45자한글만 (UTF-8)30자
90바이트 안에 들어가는 글자 수 — 한글만 쓰면 45자, 영문·숫자만 쓰면 90자. UTF-8 기준이면 한글은 30자

한글 45자 = 90바이트(EUC-KR)이고, 46자가 되면 92바이트라 장문으로 넘어갑니다. 영문·숫자만으로 90자를 채우면 딱 90바이트입니다. 같은 90바이트라도 쓰는 글자에 따라 30자에서 90자까지 차이가 납니다. 그래서 「45자까지」라고만 외우면 숫자가 섞인 실제 문구에서 계산이 틀어집니다.

실제 문구로 계산해 보기

글자수닷컴 계산 함수로 돌린 값입니다.

문구글자 수EUC-KR 근사UTF-8종류
[배송] 주문하신 상품이 오늘 출고되었습니다. 운송장 123456789040자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바이트입니다.

단문과 장문, 어떻게 가르나

문구를 보내기 전 확인 순서문구 작성 → EUC-KR 바이트 세기; EUC-KR 바이트 세기 → 90바이트 이하?; 90바이트 이하? → 단문(SMS) (예); 90바이트 이하? → 2,000바이트 이하? (아니오); 2,000바이트 이하? → 장문(LMS) (예); 2,000바이트 이하? → 문구 줄이기 (아니오); 문구 줄이기 → EUC-KR 바이트 세기예아니오예아니오문구 작성EUC-KR 바이트 세기90바이트 이하?단문(SMS)2,000바이트 이하?장문(LMS)문구 줄이기
문구를 보내기 전 확인 순서 — EUC-KR 근사 바이트를 먼저 세고, 90을 넘으면 줄일지 장문으로 보낼지 정한다

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');

줄일 때 확인할 것

문구를 붙여 넣고 90바이트에 맞춰 자르려면 바이트 계산기를, 공백 포함·제외 글자수와 원고지 매수까지 한 번에 보려면 글자수 세기를 쓰세요.

기준: KS X 1001(EUC-KR) 한글 2바이트 규격, RFC 3629 UTF-8 한글 3바이트, 글자수닷컴 바이트 계산기 기준(단문 90·장문 2, 000바이트). 출처 확인일 2026-10-20. 글의 바이트 값은 글자수닷컴 도구와 같은 방식으로 낸 값이며, 실제 문자 발송 서비스는 통신사·발송 업체의 기준에 따라 다를 수 있습니다.

이 글과 이어지는 도구