SMS Character & Segment Counter

Type or paste your SMS to see its encoding, character count, and how many message segments it sends as - with a clear warning when an emoji or special character makes it cost more. Everything runs in your browser.

0
Encoding
0
Characters
0
Segments
0
Per segment

What is an SMS segment?

A text message is not always sent as one piece. Carriers split longer messages into "segments" and bill you per segment, then the recipient's phone stitches them back together. A single plain-text SMS holds up to 160 characters; go over that and your message is sent as several segments. This tool shows exactly how many segments your message uses, so a "one text" message does not quietly become three.

GSM-7 vs Unicode encoding

SMS uses two character encodings. GSM-7 covers the basic Latin alphabet, digits, and common punctuation, and fits 160 characters per segment. The moment your message contains a single character outside that set - an emoji, a curly quote, an accented letter like ñ in some forms, or symbols like { } [ ] - the whole message switches to Unicode (UCS-2), and the limit collapses to just 70 characters per segment. This tool detects which encoding your message uses and counts accordingly.

Why emojis and accents cost more

Because one non-GSM character forces the entire message into Unicode, a single emoji can more than double your cost. A 150-character message that fit in one GSM-7 segment suddenly needs three Unicode segments once you add a 😀 - you pay for three texts instead of one. This is the mistake most basic character counters hide. Our counter flags the exact character that triggered Unicode so you can decide whether to keep it or swap it for a plain-text alternative.

How SMS segment billing works

SMS providers charge per segment, not per message. When a message spans multiple segments, each segment also loses a few characters to a hidden header used to reassemble the parts - so multi-part GSM-7 messages allow 153 characters per segment (not 160), and multi-part Unicode messages allow 67 (not 70). That is why a message just over the limit can use more segments than you would expect. The segment count here is the number you are actually billed for.

How to use this tool

Type or paste your message into the box. The stats above update instantly: the encoding, your character count, how many segments the message sends as, and the per-segment limit. If a special character forces Unicode, a warning appears naming the exact character. Use Copy to grab your text or Clear to start over. Everything runs locally in your browser, so your message is never sent anywhere and it works offline.

Frequently asked questions

Is this tool free, and does it send my message anywhere? +

It is completely free with no signup, and nothing is sent anywhere. All counting happens in your browser - your message never leaves your device.

Why did one emoji triple my SMS count? +

A single emoji (or any non-GSM character) forces the whole message into Unicode encoding, which only fits 70 characters per segment instead of 160. So a message that was one segment in plain text can jump to two or three segments the moment you add an emoji.

What is the character limit for one SMS? +

For plain GSM-7 text, one segment holds 160 characters. If your message uses Unicode (because of an emoji or special character), one segment holds only 70 characters. Beyond a single segment, the per-segment limit drops slightly (153 for GSM-7, 67 for Unicode) due to a reassembly header.

Why is my message split into multiple texts? +

Your message is longer than one segment allows. Carriers split it into multiple segments and bill you for each one; the recipient's phone joins them back into one message. This tool shows the exact segment count so there are no surprises on your bill.

Does it work offline? +

Once the page has loaded, yes. The counter runs entirely in your browser, so it keeps working without an internet connection.