SMS character counter
Check how many characters your message has and estimate how many SMS messages it will be divided into.
Count SMS Characters
ENCODING
PARTS
Detailed character breakdown
Unicode code point (hex)
Legend
GSM-7 Basic character set
GSM-7 Extension character set (counts as two characters)
Emoji examples (partial list)
Unicode character examples
Unicode characters include special symbols, Cyrillic, Arabic, Chinese alphabet and more.
Quick guide to using the SMS calculator
This tool lets you preview how your text will be delivered over mobile networks before sending: how many characters it consumes, whether it fits GSM-7 or switches to UCS-2, how many SMS segments it will be split into, and an estimated sending cost based on length.
How it works (3 simple steps)
- Enter your message: paste or type your text into the box above.
- Check the analysis: you’ll see if anything increases message “weight”:
- Emojis and special symbols often force Unicode.
- Some characters belong to GSM extended and count as two.
- Any non-GSM character can change the encoding.
- Optimize if needed: replace “problem” characters with GSM-friendly alternatives (e.g., curly quotes → straight quotes). You can also use a Unicode → GSM converter to automatically substitute compatible characters when possible.
Why some characters “cost” more
With SMS, it’s not only what you see—it’s how it’s encoded. The most common standard, GSM 03.38, includes:
- A basic set (7-bit encoding) with the most common characters.
- An extended set with a few extra symbols.
Extended characters are sent using an escape prefix, so they consume the equivalent of two characters in GSM-7. That’s why a message that looks short can sometimes count higher than expected.
GSM-7 vs UCS-2: what changes the limit
SMS messages typically use one of these encodings:
1) GSM-7
The most efficient option. Supports common Latin letters, numbers, and standard symbols.
→ More characters per SMS segment.→ More characters per SMS segment.
2) UCS-2 (Unicode)
Used when your text includes international characters not supported by GSM-7, or emojis.
→ Fewer characters per SMS segment.
Character limits per SMS (by encoding)
| Example | Result | Encoding | Limit in 1 segment |
|---|---|---|---|
| Hello world | Standard text | GSM-7 | 160 |
| 你好 | Unicode | UCS-2 | 70 |
Segments: why longer messages can cost more
Carriers don’t send an “unlimited” SMS. If your text exceeds the maximum, it’s split into segments (parts).
Even though phones display it as one message, multiple SMS segments were actually sent, and billing is typically per segment.
- If it fits in one segment:
- GSM-7: up to 160
- UCS-2: up to 70
- If it becomes a concatenated message (multiple segments), each part reserves space for technical info that helps the phone rebuild the full text (UDH). That’s why usable space per segment drops to:
- 153 characters in GSM-7
- 67 characters in UCS-2
Maximum capacity by number of segments
| Segments | GSM-7 (per segment) | GSM-7 (total) | UCS-2 (per segment) | UCS-2 (total) |
|---|---|---|---|---|
| 1 | 160 | 160 | 70 | 70 |
| 2 | 153 | 306 | 67 | 134 |
| 3 | 153 | 459 | 67 | 201 |
| 4 | 153 | 612 | 67 | 268 |
| 5 | 153 | 765 | 67 | 335 |
| 6 | 153 | 918 | 67 | 402 |
| 7 | 153 | 1071 | 67 | 469 |
| 8 | 153 | 1224 | 67 | 536 |
| 9 | 153 | 1377 | 67 | 603 |
| 10 | 153 | 1530 | 67 | 670 |
Which encoding will my message use?
A practical rule of thumb:
- If your message contains only GSM-7 characters, it will be sent as GSM-7 (higher capacity per segment).
- If it includes even one character outside GSM-7 (emoji, certain symbols, unsupported letters), it switches to UCS-2, limiting each segment to 70 characters (or 67 for concatenated messages).
