Important Notice - SMS Text Message Length What's happening? We have been alerted that long SMS messages may be rejected by major mobile carriers such as AT&T, T-Mobile & Verizon. Best practice is to keep messages under 160 characters for standard characters (GSM-7) or 70 characters for nonstandard & emojis (UCS-2) Why Does This Matter? When a SMS message is sent using characters not included in the GSM-7 character set, the message will be encoded using the UCS-2 character set. UCS-2 reduces the number of characters that can sent per message segment from 160 to 70 characters. If the SMS message is longer than these thresholds, it raises the potential for a rejected SMS message. What is GSM-7 SMS Characters? GSM-7 is a character set used in SMS messages that includes many common characters of the English alphabet, numbers, and a few special characters. It is a standard that allows for 160 characters per SMS message. This is because GSM-7 encodes each character using 7 bits of data. Examples of GSM-7 Characters:
What is UCS-2 SMS Characters? UCS-2 is another character set that allows for a wider range of characters, including those from non-Latin alphabets (such as Cyrillic, Chinese, Arabic, etc.). It uses 16 bits to represent each character, which means fewer characters can be sent in a single SMS message - typically 70 characters per message. Examples of UCS-2 Characters:
Please contact our Technical Support team for any additional questions. Help Center: help.evolveip.net P: 877.459.4347, Option 2 |
We recommend avoiding sending long messages as SMS We recommend avoiding sending long messages as SMS to avoid potential blocking and because they may not be concatenated correctly, due to the differences in encoding and variances in what is supported by destination handsets. For more information about SMS limits and concatenation best practices, check out these support articles: What do I need to do? Alternatively, if your message contains three or more segments, consider sending it as MMS using a text file as an attachment. |
How the math works
SMS messages are sent in 140 bytes
1 byte = 8 bits
In GSM encoding, 1 character = 7 bits
In Unicode, 1 character = 16 bits
UDH = 6 bytes
| Message Type | Calculation | Max Characters per Segment |
| GSM Single Segment | (140 bytes x 8 bits) / 7 bits | 160 characters |
| GSM Multi-Segment | ((140 bytes - 6 bytes) x 8 bits) / 7 bits | 153 characters |
| Unicode Single Segment | (140 bytes x 8 bits) / 16 bits | 70 characters |
| Unicode Multi-Segment | ((140 bytes - 6 bytes) x 8 bits) / 16 bits | 67 characters |
Characters used in a message | Total number of characters | Encoding | Message Segments | Calculation |
| Text Only | 160 | GSM-7 | 1 | No UDH is required, all 160 characters are available |
| Text Only | 240 | GSM-7 | 2 | 153+87=240 characters |
| Text and emojis | 150 | UCS-2 | 3 | 67+67+16=150 characters |
Here's the maximum number of characters that can be sent to carriers in a single SMS segment:
| Message | Type | Characters used in the message | Encoding | Max characters/ message(without UDH) |
| Hello - good morning | Text | GSM Standard | GSM-7 | 160 |
| Emoji | Unicode | UCS-2 | 70 | |
| Unicode | Unicode | UCS-2 | 70 |
Error code (4)751 identified in the Bandwidth notice, this is at the developer level, screenshot below for reference

140 Characters
|
Basic Character Set Extension
| 0x00 | 0x10 | 0x20 | 0x30 | 0x40 | 0x50 | 0x60 | 0x70 | |
|---|---|---|---|---|---|---|---|---|
| 0x00 | | | |||||||
| 0x01 | ||||||||
| 0x02 | ||||||||
| 0x03 | ||||||||
| 0x04 | ^ | |||||||
| 0x05 | € | |||||||
| 0x06 | ||||||||
| 0x07 | ||||||||
| 0x08 | { | |||||||
| 0x09 | } | |||||||
| 0x0A | FF | |||||||
| 0x0B | SS2 | |||||||
| 0x0C | [ | |||||||
| 0x0D | CR2 | ~ | ||||||
| 0x0E | ] | |||||||
| 0x0F | \ |
Not show as UC-2 (UCS-2) represents a possible maximum of 65,506 characters, or in hexadecimals from 0000h - FFFFh (2 bytes). The characters in UCS-2 are synchronized to the Basic Multilingual Plane in Unicode.