SMS Segment Calculator - Character Counter & Encoding Detector

Calculate how many SMS segments your message will use based on encoding (GSM-7, Latin-1, or UCS-2). See exactly where messages split and which characters affect your costs.

Encoding:

Character Analysis

Type a message to see character analysis

Segment Breakdown

Segments will appear here

SMS Encoding Reference

Encoding Single SMS Multi-part SMS Use Case
GSM-7 160 characters 153 chars/segment English, most European languages
Latin-1 140 characters 134 chars/segment Extended European (accented chars)
UCS-2 70 characters 67 chars/segment Emoji, Chinese, Arabic, Hebrew, etc.

GSM-7 Extended Characters

These characters are part of GSM-7 but count as 2 characters because they require an escape sequence:

^ { } \ [ ~ ] |

Tips to Reduce Segment Count

  • Avoid emoji — A single emoji forces UCS-2, cutting your character limit in half
  • Watch extended chars — Characters like { } [ ] count as 2
  • Use standard quotes — Replace curly quotes (“ ”) with straight quotes (" ")
  • Avoid smart punctuation — En-dash (–) and em-dash (—) force UCS-2
  • Link shorteners — Use short URLs to save characters

Why Segments Matter

SMS carriers charge per segment, not per message. A 161-character GSM-7 message costs the same as a 306-character message (both are 2 segments). Understanding segments helps you:

  • Optimize costs by staying within segment boundaries
  • Predict delivery behavior for long messages
  • Avoid unexpected charges from emoji or special characters

Multi-Part Message Overhead

When a message exceeds a single segment, each segment includes a User Data Header (UDH) that takes 6-7 bytes. This header tells the receiving device how to reassemble the parts. That's why multi-part segments hold fewer characters:

  • GSM-7: 160 → 153 (7 chars for UDH)
  • Latin-1: 140 → 134 (6 chars for UDH)
  • UCS-2: 70 → 67 (3 chars for UDH)

SMS API for Developers

Send SMS programmatically with delivery insights. Integrate with your existing systems.