Skip to content

SMS Character Limit: GSM-7 vs Unicode Explained

The SMS character limit explained: 160 GSM-7 or 70 Unicode characters, what triggers Unicode, extension characters and how long messages are counted.

Updated 20 October 2026

The SMS character limit is 160 characters in GSM-7 encoding or 70 characters in Unicode (UCS-2) for a single message. Longer messages are split into segments of 153 GSM-7 or 67 Unicode characters, and each segment is billed as one SMS. One character outside the GSM-7 alphabet, such as an emoji or a curly quote, switches the whole message to Unicode.

Why the limits are 160 and 70

The payload of one SMS is 140 bytes (1,120 bits). The encoding decides how many characters fit:

EncodingBits per characterSingle SMSPer segment in a long SMS
GSM-7 (default alphabet)7160153
8-bit data8140 bytes134 bytes
UCS-2 (Unicode)167067

In a long message each segment carries a 6-byte header (UDH) that tells the phone how to reassemble the parts, which is why the per-segment limits are lower. How that works is covered in long (concatenated) SMS explained.

What is in the GSM-7 alphabet

GSM-7 covers basic Latin letters, digits, common punctuation and some accented letters used in Western European languages, such as é, è, ü, ñ and à. It does not include many other accented letters (for example á, í, ó, ú, ê or õ), nor Cyrillic, Arabic, Chinese, or any emoji. Some Greek capital letters are included, a legacy of the original standard.

A few characters belong to the extension table and take two characters of space each, because they are sent with an escape code:

  • ^ { } \ [ ] ~ | and the euro sign

A message with five euro signs therefore has 155 characters of room, not 160.

What triggers Unicode

If even one character is not in GSM-7, the whole message is sent as UCS-2 and the limit drops from 160 to 70. Common accidental triggers:

  • Curly quotes and apostrophes copied from word processors (use straight ' and ")
  • Long dashes and ellipsis characters (use a hyphen and three dots)
  • Non-breaking spaces and zero-width characters from web forms
  • Emoji, which in UCS-2 often take two character slots each
  • Letters outside the alphabet, such as Polish ł or Turkish ş

A 150-character English message with one curly apostrophe becomes three segments instead of one. On large campaigns that triples the cost. Pricing per segment is explained in how A2P SMS pricing works.

Languages that need Unicode

Arabic, Russian, Hindi, Chinese, Thai and many other scripts always need UCS-2, so 70 and 67 are the real limits there. Some networks support national language shift tables (defined for Turkish, Spanish, Portuguese and several Indian languages) that keep 7-bit encoding with a different character set, but support depends on the route and handsets, so do not rely on it without testing.

How to set encoding over SMPP and HTTP

  • SMPP: the data_coding field says how the message is encoded. 0 means the SMSC default alphabet (often GSM-7, but some platforms treat it as Latin-1), 8 means UCS-2. Ask your supplier which default they use, because a mismatch garbles characters. See SMPP vs HTTP API.
  • HTTP APIs: you usually send UTF-8 text and the platform chooses the encoding. Check how it counts segments before launch.

Rejections such as invalid data coding or invalid message length are listed in common SMPP error codes.

Practical tips

  1. Run outgoing text through a sanitiser that replaces curly quotes, dashes and invisible characters.
  2. Count segments in your system before sending and log them, so you can reconcile invoices.
  3. Keep OTP and alerts in a single GSM-7 segment. See OTP SMS best practices.
  4. Test special characters on real handsets in each country before a campaign.

VoIPMatcher sources A2P SMS routes that support both GSM-7 and Unicode traffic. Request an SMS route and tell us the languages you send in.

Free SMS character counter

Encoding
GSM-7
Characters
0
Billed SMS
0
Characters left in this SMS
160

Frequently asked questions

What is the SMS character limit for Unicode?

A single Unicode (UCS-2) SMS holds 70 characters. When the message is longer, it is split into segments of 67 characters each, because every segment carries a header. Arabic, Cyrillic, Chinese, Hindi and many other scripts always use Unicode, and a single emoji or curly quote also switches an English message to it.

Do emojis count as two characters in SMS?

Many do. An emoji forces the whole message into Unicode, which drops the limit from 160 to 70 characters, and most emoji use two UCS-2 character slots. A short message with one emoji can therefore turn into two or more segments. Leave emoji out of OTP and alert messages to keep them in one segment.

Do spaces count in the SMS character limit?

Yes. Spaces, line breaks and punctuation all count as characters, and in GSM-7 each takes one. Invisible characters copied from web forms, such as non-breaking or zero-width spaces, are not in GSM-7 and switch the message to Unicode, so clean the text before sending it.

How do I count SMS characters before sending?

Check every character against the GSM-7 alphabet: count basic characters as one and extension characters such as the euro sign or square brackets as two. If any character is outside GSM-7, count the message in Unicode instead. Then divide by 153 or 67 to get the segments. Many platforms run this count for you.

Need a route?

Send the destination, route type and target rate. We reply with what we can deliver.

More guides

All guides
A2P SMS SMPP Error Codes: Full List and What They Mean SMPP error codes explained: common SMPP 3.4 command_status values such as 0x0B, 0x45 and 0x58, their causes, and which to retry or treat as permanent. A2P SMS 10DLC Registration and Toll-Free SMS: US Rules 2026 How 10DLC registration works in the US as of 2026: brand and campaign steps, costs, throughput, toll-free verification and which sender option to choose. A2P SMS HLR vs VLR: What Is the Difference in GSM? HLR vs VLR explained: what each mobile network register stores, how they work together for calls, SMS and roaming, and what replaced them in 4G and 5G. A2P SMS SMS Pricing Explained: What Sets the Cost per SMS How SMS pricing works: what sets the A2P cost per SMS, route type, traffic type, volume, per submitted vs per delivered billing and hidden costs. A2P SMS Concatenated SMS: How Long Messages Are Split How concatenated SMS works: long messages split into 153 or 67 character segments, UDH and SMPP options, maximum length, billing and delivery reports. A2P SMS Flash Call Verification: How It Works vs SMS How flash call verification works, how it compares with SMS OTP, and the operator, fraud and platform risks to weigh before using it. A2P SMS International SMS Gateway: How Global A2P SMS Works How an international SMS gateway delivers A2P messages worldwide, what changes by country, how to pick a global provider and why cheap routes fail. A2P SMS SMS Delivery Report (DLR): Statuses and Codes What an SMS delivery report (DLR) shows: DELIVRD, UNDELIV, EXPIRED, REJECTD and other statuses, the DLR format, error codes and how to read them.