SMS Character & Segment Counter
Count SMS characters and segments, GSM-7 (160 chars) vs UCS-2 (70 chars) with emoji detection.
- • SMS billing is per segment, not per message
- • One emoji flips your encoding from GSM-7 (160 chars) to UCS-2 (70 chars)
- • A 70-char message with emoji = 1 segment; without emoji = also 1 segment but you have ~90 chars headroom
- • At Twilio's ~$0.0079/segment in the US, a 4-segment message costs 4× a 1-segment
- • Avoid: smart quotes, em-dashes, € symbol (Extended GSM, count as 2 chars each)
About this tool
SMS billing is per segment, not per message. Add one emoji and your 160-char GSM-7 message becomes a 70-char UCS-2 message, quadrupling your send cost. This tool counts both, detects the encoding, and warns when emoji or special chars trigger UCS-2.
Smart quote gotcha
The most common reason for accidental UCS-2 encoding isn't emoji — it's smart quotes (' " — …) auto-inserted by most word processors. Paste from Word or Google Docs and your message silently flips encoding. Always retype or use straight quotes/dashes for SMS.
Frequently asked questions
Why does my SMS cost more than expected? +
SMS is billed per 'segment', not per message. Standard GSM-7 messages get 160 chars per segment. UCS-2 messages (any emoji, special char, smart quote) get 70 chars per segment. One emoji can quadruple your send cost.
Which characters trigger UCS-2 encoding? +
Any character outside basic GSM-7: all emojis, smart quotes (' ' " "), em-dashes (—), curly apostrophes, most non-ASCII punctuation, and characters from non-Latin scripts. Even one of these flips the entire message to UCS-2.
Why do extended GSM-7 chars count as 2? +
Characters like {, }, [, ], |, €, ^, \ and ~ are GSM-7 'extended set' and use 2 character slots each. They keep you in 160-char segments but cost double per character. Use plain ASCII whenever you can.
What's the practical limit before splitting segments? +
GSM-7: 153 chars per segment when concatenated (7 chars are used for the multi-segment header). UCS-2: 67 chars per segment when concatenated. So aim for under 153 for cleanest single-segment sends.
More free tools
See all tools →Validate your Catch.com.au marketplace feed for GTIN, category mapping and required Australian fields.
Validate your Westwing curated home marketplace feed (DACH + Italy + Iberia) for dimensions, materials and care.
Bulk-validate phone numbers for country-code presence and length per country.
Validate your product feed against the Google / Shopify Universal Commerce Protocol spec.
Why wait? Try it free today.
Stop managing feeds manually. Start optimising with AI in 30 seconds.
- 100% free forever, no credit card required
- 1 brand, 1 feed, 100,000 products per feed
- Full AI Product Optimisation, Rule Engine, and 200+ channel exports
- Pay only for AI credits when you need them