Standard SMS Limits
A standard SMS has a maximum length of 160 characters when encoded with the GSM-7 character set. However, when your message includes characters not available within GSM-7—such as emojis, accented characters, or non-Latin scripts—the message must use UCS-2 encoding, reducing the per-message character limit to 70 characters.
Multi-Segment (Concatenated) SMS
Modern mobile networks and devices support concatenated (multi-part) SMS, allowing messages longer than the standard limit. When an SMS exceeds the single-message limit, it's split into multiple segments. Each segment includes a data header to help the receiving device correctly reassemble the message, slightly reducing each part's available character count:
GSM-7 multi-segment SMS messages allow 153 characters per segment.
UCS-2 multi-segment SMS messages allow 67 characters per segment.
Example Scenario: If your GSM-encoded SMS is 161 characters long, it will split into two multi-segment messages: One segment containing 153 characters and another of 8 characters.
Special Note for Toll-Free SMS (US & Canada)
When sending multi-segment SMS via Toll-Free numbers to the US or Canada, each segment offers slightly fewer characters:
GSM-7 encoding: 152 characters per segment
UCS-2 encoding: 66 characters per segment
SMS Encoding & Cost Optimization: Due to billing per SMS segment, it's important to optimize message encoding to reduce cost.
Why Is SMS Limited to 160 Characters?
The Short Messaging Service (SMS) protocol was initially established within GSM standards in 1985. SMS messages travel on small signaling channels intended for brief service messages, limiting total message size to 1120 bits (140 bytes). GSM-7, the original character set for SMS, encodes each character with 7 bits, resulting in a 160-character limit (1120 bits ÷ 7 bits per character). Unicode or UCS-2 encoding uses 16 bits per character, cutting the SMS limit down to 70 characters.
Best Practices
Regularly test messages with SMS segment calculators or validators before sending frequently used templates.
Avoid using unnecessary special or Unicode characters where GSM-7 equivalents exist.
Check your message encoding (GSM-7 or UCS-2) using platform logs or SMS provider consoles to maintain cost-effectiveness.
By understanding SMS encoding and segmenting, you can optimize messages for efficient and cost-effective communication.