Free Tool
SMS Segment Calculator
Paste or type any message to instantly see GSM-7 or UCS-2 encoding, segment count, and remaining character capacity. Extension characters cost 2 septets. Emoji are counted correctly.
Your message
Results update live on every keystroke. No data is sent to any server.
For a full explanation of encoding rules, segment limits, and carrier behavior, read SMS character limits, encoding, and segments: the complete guide.
Concatenated SMS: operator charges per segment. Carrier delivery fees apply to each.
FAQ
Common questions about SMS encoding
What is an SMS segment?
An SMS segment is the billing unit for text messages. A single SMS is 160 characters in GSM-7 encoding (the standard Latin character set used by most business messages). If a message exceeds 160 characters, it is split into multiple segments, each carrying a maximum of 153 characters — the remaining capacity after a 7-byte header that tells the receiving device how to reassemble the parts. Carriers bill per segment, so a 165-character message costs twice as much to send as a 158-character one.
What is GSM-7 encoding?
GSM-7 is the default encoding for SMS, defined in the 3GPP TS 23.038 standard. It encodes each character in 7 bits, allowing 160 characters per single-segment message. It covers the standard Latin alphabet, digits, common punctuation, and a small set of accented characters used in Western European languages. There is also an extension table of 10 special characters — {, }, [, ], \, |, ^, ~, €, and a form-feed character — each of which costs 2 septets (an escape code plus the character). If a message contains only GSM-7 basic and extension characters, it stays in GSM-7 encoding.
What triggers UCS-2 encoding?
Any character outside the GSM-7 basic or extension set forces the entire message into UCS-2 encoding — there is no mixed-encoding mode. Common triggers include: curly quotation marks (“ ” ‘ ’), em dashes (—), accented characters outside the GSM-7 set (ñ is in GSM-7; ü is in GSM-7; but ā, ō, and ū are not), Chinese, Japanese, Korean, Arabic, Hebrew, or any other non-Latin script, and most emoji. Once a single UCS-2 character appears, all characters in the message are encoded as UCS-2, which reduces the per-segment capacity from 160 to 70 characters (67 for concatenated segments).
How are emoji counted?
Emoji are UCS-2 characters. Most emoji are single UCS-2 code units (1 character = 1 unit toward the 70-unit limit). Some emoji, particularly those outside the Basic Multilingual Plane (code points above U+FFFF), require 2 UCS-2 code units — these are called surrogate pairs. This calculator correctly counts those emoji as 2 units. Using any emoji triggers UCS-2 encoding for the entire message, reducing capacity from 160 to 70 per segment.
Do extension characters change my segment count?
Yes. Extension table characters (the 10 special characters: {, }, [, ], \, |, ^, ~, €, and form feed) each cost 2 septets instead of 1. A message with 8 extension characters uses 8 extra septets, which can push it from 1 segment to 2. This calculator tracks extension character count and adds the extra septet cost automatically. The message stays in GSM-7 encoding (green badge) as long as no non-GSM-7 characters are present.
Why does my platform show a different segment count?
Segment counts can differ based on platform-specific handling of: (1) whitespace — trailing spaces, newlines, or carriage returns may be stripped before encoding; (2) Unicode normalization — some platforms normalize composed characters (ñ as a single code point vs. n + combining tilde); (3) smart quote conversion — some platforms auto-convert curly quotes to straight quotes before encoding, keeping the message in GSM-7; (4) National Language Shift Tables — some platforms apply GSM-7 language-specific extensions for languages like Turkish or Arabic that extend the basic character set. This calculator applies the standard GSM-7 basic + extension table without smart-quote conversion or NLST support.
More Free Tools
Other EaseDial calculators
AHT Calculator
Calculate average handle time from total talk time, hold time, after-call work, and interactions handled.
Open calculator →Call Abandonment Rate Calculator
Calculate abandonment rate from offered and abandoned calls with optional short-abandon exclusion.
Open calculator →On-Hold Cost Calculator
Quantify the true cost of hold time — agent wages, abandoned calls, and lost revenue.
Open calculator →Business SMS with live segment feedback
EaseDial's messaging platform shows segment count before you send — so you control costs and stay within carrier limits.