Last updated:
SMS Character Limits: How Text Message Length and Pricing Work
SMS is still used heavily for business communication even as chat apps have taken over personal messaging, and the reason is reach: it works on any phone with a phone number, requiring no app installation and no internet connection. Understanding character limits is crucial because exceeding them splits your message into multiple parts, each billed separately.
The History of 140 Bytes - Why 160 Characters?
SMS was conceived in 1984 by Friedhelm Hillebrand and Bernard Ghillebaert, both involved in GSM standardization. The idea was to let short pieces of text ride along in the gaps of the control signalling that already flows to set up voice calls. That avoided building a dedicated channel, but it also meant the text had to fit whatever the existing signalling format allowed. Hillebrand has described writing out postcard and telex messages and concluding that 160 characters were generally enough to get a point across.
Translated into a specification, that judgement becomes a 140-byte (1,120-bit) envelope. SMS data travels on the SS7 (Signaling System No. 7) signalling path, and its payload is capped at 140 bytes. Because GSM-7 encoding represents each character in 7 bits, exactly 160 characters fit (1,120 ÷ 7 = 160). In other words, the 160-character limit and the 70-character limit for scripts such as Japanese are not two separately chosen numbers - they are the same 140 bytes expressed two ways. The SMS limit is fundamentally a byte count rather than a character count, and that is the starting point for everything else.
GSM-7 vs. UCS-2 - How SMS Encoding Works
SMS encoding switches automatically based on the characters in your message. Understanding this mechanism is the first step to effective character management.
GSM-7 is a 7-bit encoding that covers Latin letters, digits, and basic symbols. It's defined by the GSM 03.38 standard with a basic character set of 128 characters and an extended set using escape sequences. Extended characters (e.g., {, }, [, ], |, ~, ^, \, €) consume 2 character slots (14 bits) each.
Messages containing characters outside the GSM-7 set - such as emoji, CJK characters, or Arabic script - trigger a switch to UCS-2 encoding at 16 bits per character. This reduces the limit to 70 characters (1,120 ÷ 16 = 70). The critical point is that even a single UCS-2 character forces the entire message into UCS-2 encoding, as explained in our character vs. byte guide.
| Encoding | Bits/Char | Single SMS Limit | Concatenated Limit/Segment | Supported Characters |
|---|---|---|---|---|
| GSM-7 | 7 bits | 160 characters | 153 characters | Latin letters, digits, basic symbols |
| GSM-7 Extended | 14 bits | (consumes 2 slots) | - | { } [ ] | ~ ^ \ € |
| UCS-2 | 16 bits | 70 characters | 67 characters | Emoji, CJK, Arabic, all Unicode |
Concatenated SMS - Technical Specifications
Messages that exceed a single segment are sent as concatenated SMS, split across multiple segments. Each segment includes a 6-byte User Data Header (UDH) containing a reference number, total segment count, and current segment number. This 6-byte (48-bit) overhead reduces the usable payload: GSM-7 drops from 160 to 153 characters per segment ((1,120 - 48) ÷ 7 = 153), and UCS-2 drops from 70 to 67 characters ((1,120 - 48) ÷ 16 = 67).
Carrier Limits - What Is Common and What You Must Verify
What carriers have in common is the technical part: the per-segment limit is derived from the same 140-byte payload, and concatenated messages are billed segment by segment, so the price rises in steps as the segment count grows. What differs between carriers is the amount charged per step, the maximum number of segments that can be concatenated, and how bundled allowances or discounts apply. Some of those details are not published on carrier websites at all (as of August 2026), so check the rate page for the line you actually send from.
As an example of a carrier that does publish concrete figures, NTT DOCOMO caps domestic concatenated SMS at 670 full-width characters, or 1,530 characters for ASCII-only text, which is exactly ten segments of 67 characters (153 ASCII characters). The same carrier also documents route-specific exceptions: messages sent over its satellite connection cannot use concatenated SMS and are limited to 70 full-width characters. The useful instinct here is that the ceiling is set by which route a message travels, not by the subscriber's plan.
For international SMS, handling depends on the destination country and on the operators along the way. The number of segments that can be concatenated, the treatment of messages containing emoji, and the way the sender number is displayed are all influenced by settings on the receiving side, so the same text will not necessarily arrive intact. Before sending across borders, run a test message through the same route you will use in production and confirm how it renders on a real handset.
SMS Pricing Structure
Each SMS segment is billed individually. A 161-character GSM-7 message becomes two segments, doubling the cost. For business SMS campaigns, this has significant budget implications - a single character over the limit can double your per-message cost across thousands of recipients.
Why SMS Gets Read - and How the Character Limit Helps
SMS keeps its place in business communication because a phone number is all you need: the message lands in the handset's built-in messaging app, with no app install, friend request, or account setup beforehand. It arrives as a notification, and the opening words of the body appear directly on the notification screen. That property - being read on the lock screen rather than inside an app - is the practical strength of the channel.
This is where the character limit starts working in your favor. A 160-character envelope (70 characters once the text switches to UCS-2) leaves room for the point and the next action - open this link, call this number - and little else. Splitting a long message into segments cuts the other way: on handsets that do not support concatenation the parts show up as separate messages, and they can even arrive out of order. The message you most need to land is the one you should keep to a single segment.
Business SMS and A2P Messaging
Business SMS is categorized as A2P (Application-to-Person) messaging. Common use cases include appointment reminders, delivery notifications, authentication codes, and marketing messages.
For A2P SMS delivery, the sender ID type significantly affects deliverability. Using carrier-approved short codes or local numbers reduces the risk of being caught by spam filters. Messages sent from international numbers face higher blocking rates from carrier-level filtering.
As a working target, marketing SMS tends to sit comfortably at roughly 100–140 characters (GSM-7): a greeting (15–20 chars), the core message (50–70 chars), a CTA (20–30 chars), and opt-out instructions (15–20 chars), which adds up to 100–140 characters and stays inside a single segment. Treat the split as an editorial guideline rather than a rule. Two habits keep it from breaking in production: leave headroom instead of writing right up to the 160-character ceiling, and check the longest possible value of any merge field (a long customer name or store name) before you finalize the wording.
Emoji and SMS - The Encoding Switch Pitfall
The biggest risk with emoji in SMS is the automatic encoding switch. Adding a single emoji to an otherwise GSM-7 message forces the entire message into UCS-2, slashing the limit from 160 to 70 characters.
As detailed in our emoji Unicode counting guide, emoji character consumption varies widely. A basic emoji such as 😀 consumes 2 UCS-2 character slots. Add a skin tone modifier and 👍🏽 becomes 4 slots (the hand plus the tone). A ZWJ sequence goes much further: 👨👩👧👦 is four people at 2 slots each plus three zero-width joiners, for 11 slots out of the 70 available. For business SMS, avoiding emoji entirely is the safest approach.
Other hidden triggers for UCS-2 encoding are easy to miss because they look ordinary on screen. The typographic apostrophe ’ (U+2019), the ellipsis … (U+2026), the ideographic space (U+3000), and the wave dash 〜 (U+301C) all sit outside GSM-7, and a single one of them drops the limit to 70 characters. The plain ASCII apostrophe (U+0027) and hyphen (U+002D) do not: both are in the GSM-7 basic set, so straight quotes and ordinary hyphens are safe. Currency symbols are asymmetric - ¥ and £ are in the basic set and cost one slot, while € is in the extended set and costs two. Text pasted from word processors or email clients routinely carries these invisible Unicode characters, which is why validating before you send matters.
SMS Authentication Code (OTP) Design
SMS-based one-time passwords (OTPs) for two-factor authentication require careful character budgeting. An OTP message must include the code itself, a brief description, and a security warning - all within the character limit.
Code length balances security against usability. A 4-digit code offers only 10,000 combinations, making it vulnerable to brute-force attacks; 6 digits gives 1,000,000. NIST SP 800-63B (revision 4) states that authentication secrets sent out of band SHALL be at least six decimal digits (or the equivalent) in length, and that if the secret has less than 64 bits of entropy the verifier SHALL also rate-limit attempts. In other words, digit count alone is not the whole control: 6 digits without throttling is still guessable. Going beyond 8 digits increases input errors without adding much practical resistance.
Example OTP message (42 characters): "Your code is 123456. Expires in 5 min. Do not share." This fits comfortably within a single GSM-7 segment, keeping costs at one message per authentication.
RCS vs. SMS - Next-Generation Messaging
| Feature | SMS | RCS |
|---|---|---|
| Character Limit | 160 (GSM-7) / 70 (UCS-2) | Far longer than SMS (varies by service) |
| Media | Text only | Images, video, audio, files |
| Interactivity | None | Buttons, carousels, quick replies |
| Read Receipts | No | Yes |
| Transport | SS7 signaling | IP-based (data connection) |
| Conditions for Delivery | Reaches the handset's built-in app with nothing but a phone number | Both the sending and receiving devices and operators must support it |
RCS is far ahead of SMS on features, but whether it can actually be used depends on the recipient's handset and operator. In Japan, the RCS-compliant service is "+Message", offered jointly by NTT DOCOMO, KDDI, and SoftBank since 2018 (as of August 2026). The awkward part for senders is that you cannot check in advance whether a given recipient is in a position to receive RCS. So the safe way to draft is to write a body that fits inside the 70-character SMS envelope first and treat rich formatting as a bonus when it happens to be available. For anything that has to arrive, the baseline is still SMS.
Pro SMS Techniques
- Pre-send encoding validation - Before launching a campaign, run your message through a GSM-7 validator to catch hidden Unicode characters. A single curly apostrophe or ellipsis can silently switch encoding and double your segment count.
- Character budget design - For marketing SMS, allocate characters by section: greeting (15–20), core message (50–70), CTA (20–30), opt-out (15–20). Keeping the total under 153 characters ensures a single segment even with concatenation headers.
- Personalization token sizing - Dynamic fields like
{first_name}vary in length. Budget for the longest possible name (15 characters) to prevent unexpected multi-part messages for recipients with longer names. - Send time - Because SMS arrives as a notification, the time you send is part of the message. Avoid late-night and early-morning sends, aim for hours when the recipient can actually act on the content (a link they can open, a number they can call), and if your list spans time zones, split the send by region instead of firing everything at one absolute time.
- Smart URL shortening - Long URLs consume valuable character space. URL shorteners can compress links to 20–25 characters, freeing space for your message. However, some carriers flag generic short URLs as spam, so branded short domains are preferred.
Conclusion
SMS character limits trace back to the 140-byte envelope settled at the design stage in 1984, and they still operate today as two encoding-dependent ceilings: 160 characters for GSM-7 and 70 for UCS-2. Automatic encoding switches, concatenation header overhead, emoji-induced character inflation, and pricing that steps up with every segment are all pitfalls that go beyond simple character counting - and all of them derive from the same 140 bytes. Use Character Counter to verify your message length before sending, and apply the encoding validation and character budgeting techniques above to optimize both cost and deliverability.
Frequently Asked Questions
- What is the character limit for SMS?
- A single SMS segment supports 160 characters (7-bit encoding). Longer messages are split into multiple segments, increasing cost.
- How much does an SMS cost?
- A single segment (up to 160 characters) typically costs a few cents. Longer messages split into multiple segments, each charged separately.