SMS Length Calculation

SMS Length Calculation

  • SMS uses two main encodings: GSM‑7 (basic Latin characters) and Unicode (UCS‑2) (non‑Latin scripts, emojis, special symbols).
  • GSM‑7: 1 segment = 160 characters; concatenated segments = 153 characters/segment.
  • Unicode (UCS‑2): 1 segment = 70 characters; concatenated segments = 67 characters/segment.
  • Each SMS part is billed separately, so keeping messages within a single segment saves cost.

Question

How is SMS length calculated and why does a longer message sometimes send as multiple SMS parts?

Why this matters

Every extra SMS segment increases cost and may affect delivery (delays, failed concatenation on some handsets). Knowing encoding and segmentation lets you write messages that are cheaper and more reliable.


Encodings — the rules

1. GSM‑7 (default for most Latin characters)

  • Characters allowed: basic English letters, digits, common punctuation and a small set of special characters.
  • Single-segment limit: 160 characters.
  • Concatenated segments: when the message is longer, a header is added so segments can be reassembled. That header reduces available characters to 153 per segment.
    • 1–160 chars → 1 SMS
    • 161–306 chars → 2 SMS (153 × 2)
    • 307–459 chars → 3 SMS (153 × 3)
Tip: Some characters (like the caret ^, {, }, \, [, ], ~, |, and the euro sign) use an escape in GSM‑7 and count as 2 characters. These can unexpectedly push you into the next segment.

2. Unicode / UCS‑2 (for non‑Latin scripts, emojis, special symbols)

  • Used automatically when the message contains characters not representable in GSM‑7 (e.g., Hindi, Tamil, Chinese, Arabic, or emojis).
  • Single-segment limit: 70 characters.
  • Concatenated segments: 67 characters per segment.
    • 1–70 chars → 1 SMS
    • 71–134 chars → 2 SMS (67 × 2)
    • 135–201 chars → 3 SMS (67 × 3)
Tip: A single emoji counts as a Unicode character; a string of emoji or mixed Unicode/GSM content will switch the whole message to Unicode, reducing your per-segment capacity.

Quick reference table

Encoding

Single segment

Concatenated segment size

2 segments max

3 segments max

GSM‑7

160 chars

153 / segment

306 chars

459 chars

Unicode (UCS‑2)

70 chars

67 / segment

134 chars

201 chars


How segmentation is calculated (practical examples)

  • Example 1 (GSM‑7): "Your OTP is 123456" → uses GSM‑7, length < 160 → 1 SMS.
  • Example 2 (GSM‑7 with escape chars): Hello {user} → if { or } are in the GSM escape table they may count as 2 characters and can push you over 160.
  • Example 3 (Unicode): नमस्ते (Hindi) → switches to Unicode; if length ≤ 70 → 1 SMS; if longer, uses 67 char segments.
  • Example 4 (Emoji): Party 🎉 at 7pm! → emoji triggers Unicode → per-segment capacity falls from 160→70.

Costs & delivery impact

  • Billing: carriers bill per segment. A 320‑character GSM‑7 message (3 segments) is charged as 3 SMS.
  • Delivery issues: long, concatenated messages rely on recombination at the handset; some older phones or networks may fail to reassemble segments correctly.

Best practices to optimize SMS length

  1. Prefer GSM‑7 characters: stick to standard Latin letters, numbers and basic punctuation.
  2. Avoid emojis and special symbols unless necessary.
  3. Keep messages short — aim for ≤160 chars (or ≤70 if you use Unicode).
  4. Preview before sending: use an SMS length calculator (MyOperator’s tool or third-party calculators like TextMagic, Messente, Link Mobility).
  5. Use links wisely: shorten URLs (bit.ly) but be aware that shortened links still add characters.
  6. Test with real recipients: confirm how concatenation looks on target devices and carriers.

Tools & resources

  • MyOperator SMS length calculator (internal tool)
  • Third-party calculators: TextMagic, Messente, Link Mobility, Lifewire articles and Twilio docs for reference.

Troubleshooting (common surprises)

  • I’m under 160 but being billed for multiple segments: check for invisible characters, escape characters, or mixed-language content that switched the message to Unicode.
  • Emoji unexpectedly increased parts: remove the emoji or replace it with plain text.
  • Special characters (€, [, ], ^) increase count: these often map to escape sequences in GSM‑7 — remove or replace them.

Accessibility & content suggestions for the help article

  • Include 2 annotated screenshots:
    1. SMS composer highlighting character counter and encoding indicator.
    2. SMS length calculator output showing segment split.
  • GIF (6–10s): type message with/without emoji and show how the segment counter changes.
  • Alt text examples:
    • "SMS composer showing 142/160 characters (GSM‑7)"
    • "SMS length calculator: Unicode selected — 1 of 3 segments used"

    • Related Articles

    • SMS Length Calculation

      The length of the SMS is calculated as per the table below: GSM 7 Bit Alphabet No. of Characters in SMS Content No. of SMS Considered 160 Characters (Standard SMS) 1 SMS 306 Characters (Multi-part SMS) (2 *153 characters) 2 SMS 453 Characters ...
    • SMS Length Calculation

      The length of the SMS is calculated as per the table below: GSM 7 Bit Alphabet No. of Characters in SMS Content No. of SMS Considered 160 Characters (Standard SMS) 1 SMS 306 Characters (Multi-part SMS) (2 *153 characters) 2 SMS 453 Characters ...
    • SMS Length Calculation

      SMS billing depends on encoded character count, not just visible words. GSM‑7 (English/basic symbols): 160 chars in 1 SMS; 153 per part when split. Unicode (regional scripts/emoji): 70 chars in 1 SMS; 67 per part when split. Using emoji, regional ...
    • After call SMS billing

      MyOperator Lite editions Type of SMS Details Charge One way SMS After call SMS notification either to caller or to user INR 200 per channel line per month Two way SMS After call SMS notification to both caller and user simultaneously INR 400 per ...
    • What is MyOperator’s After-Call SMS feature and how do I configure, price, and troubleshoot it end-to-end?

      ⚡Quick answer - After-Call SMS is an automation that fires one or two transactional text messages immediately after a call ends (Connected, Missed, or Voicemail). • Caller-end notification → thanks or next-steps to the customer. • User-end ...