SMS Character Counter & Credit Calculator
Type or paste your message below. The calculator shows the encoding, character count, number of billing segments and estimated cost — live, as you type. No signup, no limits.
How SMS billing works
Your carrier bills per segment, not per message. A short message fits in one segment. A longer message is split into multiple segments — each billed separately.
| GSM-7 (standard) | Unicode (emoji, Hindi, etc.) | |
|---|---|---|
| Single segment | Up to 160 characters | Up to 70 characters |
| Multipart segment | 153 characters each | 67 characters each |
| Why fewer in multipart? | Each segment carries a 6–7 byte header (UDH) so the recipient's phone can reassemble them in order. | |
What triggers Unicode?
A single non-GSM-7 character anywhere in your message switches the entire message to Unicode — cutting your per-segment capacity from 160 to 70. Common triggers:
- Emoji — even one 😊 switches to Unicode
- Hindi, Arabic, Chinese or any non-Latin script
- Smart quotes — " " (curly) instead of " " (straight). Word processors and phones often auto-replace these.
- Special dashes — – (en-dash) and — (em-dash) instead of - (hyphen)
Extended GSM-7 characters
These characters are part of GSM-7 but count as two characters each because they require an escape prefix:
\ | ^ € { } [ ] ~If your message is exactly 160 characters and contains a € symbol, it will actually use 161 encoded characters and spill into two segments.
Estimated cost for India
The calculator uses these indicative per-segment rates for India:
| Provider | Coverage | Per segment |
|---|---|---|
| Fast2SMS (DLT-native) | India | ~₹0.30 – ₹0.35 |
| Plivo | Global | ~₹0.42 – ₹0.50 |
Actual rates depend on your provider, volume tier, and message category. These estimates give you a ballpark before you commit. Full compliance details are in the DLT registration guide.
Tips to keep your SMS short and cheap
- Avoid emoji. One smiley face switches the entire message to Unicode — your 160-character budget drops to 70. Use words instead.
- Paste from a plain-text editor. Word processors insert smart quotes (" " instead of " "), en-dashes and other invisible Unicode characters. Paste from Notepad or a code editor to stay in GSM-7.
- Watch the € symbol. It is GSM-7 but counts as two characters. Use "EUR" or "Rs" if you are close to a segment boundary.
- Stay under 160. One segment = one billing unit. A 161-character GSM-7 message costs exactly double because it splits into two 153-character segments.
- For Hindi or multilingual messages, stay under 67 characters per segment (not 70 — multipart kicks in at 70). Or keep the entire message under 70 for a single segment.
- Use DLT template variables —
{#var#}placeholders keep the template short; the actual values (customer name, order number) are injected at send time.
Send DLT-compliant SMS from LigiComms
Connect your Fast2SMS or Plivo account, manage templates, and send — with delivery tracking and automatic refunds on failure.