SMS character & segment counter

An SMS is 160 characters only if every character is in the GSM-7 alphabet. One emoji, curly quote or Korean letter switches the whole message to UCS-2, which allows only 70. Longer messages split into parts of 153 (GSM-7) or 67 (UCS-2), and you're usually billed per part.

Your text never leaves your browser
SMS encoding & segments
0
0Characters
0No spaces
0Words
0Lines
0Paragraphs
0UTF-8 bytes
Technical details — what was counted
Graphemes — visible characters0
Unicode code points — Python len()0
UTF-16 code units — JavaScript .length0
UTF-8 bytes — web, DB, payloads0
Korean SMS (EUC-KR-style) bytes, approx.0
Whitespace (spaces, line breaks, tabs)0
Hangul syllables0
Reading time (230 wpm)0
Reading time, Korean (500 syllables/min)0

Rules

EncodingSinglePer part (concatenated)
GSM-7160153
UCS-27067

Extension characters ^ { } \ [ ] ~ | € are GSM-7 but cost 2. Curly quotes (’ “ ”) are not GSM-7 — a common accidental switch to UCS-2.

Some carriers/gateways use national language shift tables or transliterate characters; real billing may differ slightly.

Korean SMS

Korean carriers count bytes instead (SMS 90 bytes, LMS 2,000). → 문자 바이트 계산기

FAQ

Why is my SMS limited to 70 characters?

It contains at least one non-GSM character (emoji, curly quote, accented letter outside GSM, CJK), so it's sent as UCS-2. The tool lists which characters caused it.

Why 153 instead of 160?

Multi-part messages reserve space for a header that tells phones how to reassemble them.

Do emoji count as 2?

In UCS-2, most emoji are 2 UTF-16 units, so yes.

More counters

Character counterCharacter limits by platformTwitter (X) character counterInstagram caption character counterYouTube title character counterLinkedIn post character counterMeta description length checkerTitle tag length checkerUTF-8 byte counterWord counterLine counterReading time calculatorHow many characters is an emoji?