Message length

A standard SMS length is 160 characters using GSM-7 encoding, but this reduces to 70 characters if the message includes any non-GSM characters, such as emojis or characters from other alphabets.

SMS messages need to fall within a specific number of characters because of the way they’re transmitted.  The limit makes sure messages are delivered quickly and without taking up too much bandwidth, helping the network run smoothly for everyone.

Encoding

Message encoding is the process of converting human-readable text into a format that’s suitable for transmission over cellular networks. There are mainly two types of SMS encoding.

  • 7-bit encoding, which is standard for English and other Latin-based languages
  • Unicode encoding, used for a broader range of characters and languages

7-bit


7-bit encoding, or GSM-7, is the default encoding format for SMS, supporting the GSM 03.38 character set. This encoding allows up to 160 characters in a single message.

Some 7-bit characters are not in the standard set but are part of the GSM 03.38 Extension Table. These need to be prefixed with an escape character (ESC, 0x1B).

\         |         ^         €         {         }         [         ]         ~

Characters from the extension table don’t reduce the text message character limit, but they do each count as two characters because of the prepended escape character. This ensures compatibility while managing message length efficiently.

Unicode

If your messages contain characters beyond the GSM 03.38 alphabet, such as emojis or non-Latin scripts, Unicode (USC-2 or UTF-16) encoding takes over.

UCS-2 supports a much wider range of characters and languages than the very limited 7-bit encoding. But alas, it also requires more data size per character. This reduces the already compact SMS length from 160 to 70 characters. So you’ll have to put some extra thought into your SMS body to avoid unnecessary segmentation.


Multipart messages

When a text message exceeds the 160-character limit (or the 70-character limit, in the case of UCS-2 encoding), it’s automatically broken into pieces. It is now a multipart message, aka multisegment message.

The different parts of the same message are sent to the handset, and charged separately, too. For instance, an SMS split into three segments will be charged the same as three SMS messages. So, it’s important that you use our SMS length calculator to make sure you don’t exceed the limit and pay more than you planned.

If your message is unavoidably long, there’s a process in place for seamless concatenation, which keeps your message coherent across multiple parts and ensures that the segments are delivered and received in the right order.

An extra bit of info called the User Data Header is added before each segment. A UDH states the order and message each part belongs to, like an identifier. While this is not visible on the recievers handset, the UDH itself also occupies space within the message, the overall length of each 7-bit segment is shortened to 153 characters (67 characters for UCS-2) for multipart SMS messages.

  Regular SMS Multipart SMS
7-bit 160 chars 153 chars
Unicode 70 chars 67 chars