A single SMS holds 160 characters when every character belongs to the GSM 7-bit alphabet (GSM-7), and 70 characters when even one does not, because the whole message is then sent as Unicode (UCS-2). A longer text is sent as several linked parts, each holding 153 GSM-7 characters or 67 Unicode characters. Those four numbers come from the SMS standard. How many parts you can send, and what they cost, is decided by your provider and the carriers in between.

To see where a specific message lands, paste it into the SMS Character Counter. It shows the encoding, the units used and where the text divides into parts.

The four numbers

GSM-7 Unicode (UCS-2)
One message 160 70
Each part of a split message 153 67

Strictly, these are units rather than characters. A GSM-7 unit is a septet (7 bits) and a UCS-2 unit is 16 bits. Most characters use one unit, but ten GSM-7 characters use two, and most emoji use two or more. "160 characters" is exact only when every character is a one-unit character.

Providers usually call the parts segments. The standard calls the whole thing a concatenated short message. They are the same idea.

Where 160 and 70 come from

The text of one short message has 140 octets (bytes) to live in, which is 1,120 bits.

  • The GSM 7-bit default alphabet has 128 positions, so each character needs 7 bits rather than 8. 1,120 ÷ 7 = 160.
  • UCS-2 uses 16 bits per unit. 1,120 ÷ 16 = 70.

The standard states both results directly. 3GPP TS 23.038 says a GSM-7 message "can consist of up to 160 characters" and a UCS-2 message "up to 140 octets, i.e. up to 70 UCS2 characters".

The encoding is chosen for the message as a whole, not character by character. If one character anywhere in the text is outside GSM-7, all of it is sent as UCS-2 and the limit drops from 160 to 70. That single rule explains most surprises about SMS length.

Why split messages hold 153 or 67

A long text travels as separate short messages that the receiving phone joins back together. To make that possible, every part starts with a 6-octet header that carries a reference number shared by all the parts, the total number of parts, and the position of this part. Those 6 octets come out of the same 140.

  • GSM-7: 6 octets are 48 bits. The text has to start on a 7-bit boundary, so the header takes up 49 bits, which is 7 septets. 160 − 7 = 153.
  • UCS-2: (140 − 6) ÷ 2 = 67.

3GPP TS 23.040 gives the same subtraction: "153 (160-7) characters" and "67 ((140-6)/2) characters".

The smaller size applies to every part, including the first, as soon as the text no longer fits in one message. So 160 GSM-7 characters are one message, but 161 are two parts of 153 and 8, not 160 and 1.

Parts GSM-7 units UCS-2 units
1 up to 160 up to 70
2 161 to 306 71 to 134
3 307 to 459 135 to 201
4 460 to 612 202 to 268
5 613 to 765 269 to 335
6 766 to 918 336 to 402

Treat the upper end of each row as a best case. A two-unit character cannot be divided between two parts, so a part sometimes ends one unit short. Why some SMS characters count twice works through an example where that adds a whole extra part.

What switches a message to Unicode

GSM-7 covers the unaccented Latin letters, the digits, common punctuation, a small set of accented letters such as é and ñ, and ten Greek capitals. Everything else forces UCS-2, including:

  • every emoji
  • curly quotes and apostrophes (“ ” ‘ ’), the en dash, the em dash and the single-character ellipsis (…)
  • many accented letters, among them á, í, ó, ú, â, ê and lower-case ç
  • the backtick and the tab character
  • every script other than Latin, apart from those ten Greek capitals

The full table is in What is GSM-7?, and the emoji case, where the emoji also costs extra units of its own, is covered in why one emoji can change the length of an SMS.

The same sentence, two results

This reminder is 126 characters long:

Hi Sam, your table for four is booked for 7:30pm on Friday. We can't hold it past 7:45, so please call if you're running late.

Typed with straight apostrophes (', U+0027) it is pure GSM-7. Many word processors replace straight quotes with curly ones as you type, so the same sentence pasted from a document may carry ’ (U+2019) instead. A reader would hardly notice the difference. The network does:

Version Encoding Units Parts
Straight apostrophes GSM-7 126 of 160 1
Curly apostrophes UCS-2 126 2 (67 + 59)

One curly apostrophe is enough; the second makes no further difference. The SMS Character Counter lists every character that forces Unicode and offers a GSM-7 replacement where a close one exists. It never changes your text on its own.

Characters that use two units

Ten GSM-7 characters live in an extension table and are sent as an escape code plus a second code, so each uses two of the 160 units: ^, {, }, [, ], ~, \, |, € and the form feed control character. Price: €5 [approx] is 18 characters but 21 units. These characters do not switch the message to Unicode; they just cost double.

In a UCS-2 message the two-unit characters are the ones outside Unicode's Basic Multilingual Plane, which includes most emoji. A thumbs-up with a skin tone uses 4 units and a four-person family emoji uses 11.

How many parts a message can have

The header stores the number of parts in a single octet, so the standard allows up to 255 parts. It works out the ceiling as 39,015 GSM-7 characters (255 × 153) or 17,085 UCS-2 characters (255 × 67).

No provider we checked accepts anything close to that. These are the caps each one states in its own documentation, as read on 7 October 2026:

Provider Stated maximum
Twilio 1,600 characters, with 700 listed for UCS-2. The same page recommends keeping SMS messages under 320 characters.
Vonage Accepts up to 3,200 characters "but not all carriers do", and calls six parts or fewer best practice.
Sinch 2,000 characters in a request body.
AWS End User Messaging SMS 1,530 GSM characters or 630 non-GSM characters.
Telnyx 10 segments per message.
Bird 12 segments per message.

The caps are expressed in different units and they change, so check the current page for the provider you use.

Why your provider's count can differ

The standard describes the common case. Real routes add their own rules, and each of these is documented by the provider named:

  • A longer header. The standard also defines a concatenation header with a 16-bit reference number. It is one octet longer, which leaves 152 GSM-7 or 66 UCS-2 units per part. Twilio's documentation says toll-free multi-part messages to the US or Canada use those sizes.
  • Carriers without concatenation. Twilio's Help Center says US Cellular does not support concatenated SMS and limits a single GSM-encoded message to 150 characters. Long messages to that network are sent as separate numbered texts ("1/3", "2/3") of up to 142 characters each.
  • Character replacement. Some providers can swap look-alike Unicode punctuation for GSM-7 characters before sending. Telnyx describes a smart encoding option that replaces characters such as curly quotes and em dashes. Where a feature like this is on, the message that is sent is not the one you typed, and its length is counted after the swap.
  • Symbol restrictions. AWS notes that "certain symbols may be restricted on a case to case basis" depending on the recipient's carrier and its regulations.
  • National language tables. The standard has optional tables for languages such as Turkish and Portuguese. Networks and handsets are not required to support them, and using one changes the capacity again.

On cost, Twilio states that it "bills SMS per message segment sent", and Vonage's page carries the note "You are charged for each SMS part in a concatenated SMS." Our counter follows the standard rules only. It cannot know your provider's replacement settings, caps, routes or prices, so treat its result as an estimate of length and not as a statement of what you will be charged. Vonage's own advice for anyone who needs certainty is to send one test message and read the part count from the API response.

Which number to plan around

  • Plain Latin text with straight punctuation: 160 for one message, 153 per part after that.
  • Anything with an emoji, a curly quote or a non-Latin letter: 70 for one message, 67 per part.
  • Count units, not characters. Brackets, braces, € and the other extension characters use two GSM-7 units; most emoji use two or more UCS-2 units.
  • Count the text that is really sent. Names, order numbers and links filled in from a template change the length of each message, and one recipient's name with an accent the alphabet lacks can switch that message to Unicode.
  • Leave room near a boundary. At 160 units, one more character turns one message into two parts. If the count matters, test the final text with your provider.