Character & Word Counter
Lines: 0
Platform character limits
Click a limit below to pin it above as your primary counter.
* SMS limits assume plain GSM-7 text (~160 characters per segment). Using emoji or non-Latin scripts (Hindi, Tamil, etc.) switches SMS to Unicode encoding, which cuts the real per-segment limit to about 70 characters (67 for a multi-part message) — this counter always shows the character count, but check your SMS gateway's encoding if your message contains emoji or Indian-language text.
Results and any AI-generated content from this tool are provided free, "as is", for general informational purposes only and may be inaccurate, incomplete, or out of date. Always verify the output yourself before relying on it — you use this tool and its results at your own risk.
By using this tool you agree to our Terms & Conditions and Privacy Policy.
Put this on your free business page
Create a BizGo digital business page — your services, gallery, WhatsApp button, and Google review link, all in one shareable page. Free to start.
Why a Unicode-aware character counter matters
Most character counters count raw JavaScript string length, which is
wrong for anything outside plain English. A single emoji like 👍 is stored
internally as two UTF-16 "code units" (a surrogate pair), so a naive
counter reports it as 2 characters when every human — and every platform's
own limit — treats it as 1. This tool counts using Intl.Segmenter
(grapheme clusters, the same technique modern browsers use to decide where
a cursor can land in text) where your browser supports it, and falls back
to code-point counting otherwise — so emoji, and combining characters in
Hindi, Tamil, and other Indian scripts, are all counted the way a person
would actually count them, not the way raw string length does.
Type or paste any text above to see live counts for total characters, characters without spaces, words, sentences, and lines — updated on every keystroke, entirely in your browser. Nothing you type is ever uploaded.
Platform character limits, at a glance
Below the counters is a bar of common platform limits — Google Business Profile description (750), meta title tag (60), meta description tag (160), Instagram bio (150), SMS (160, GSM-7), and an X (Twitter) post (280). Each shows exactly how many characters you've used and how many remain, turning red the moment you go over. Click any limit to pin it as the large counter above — handy when you're writing specifically for one platform and want a single number to watch.
A note on SMS length
The SMS preset assumes plain GSM-7 encoding, which allows roughly 160 characters per message segment. The moment your text includes an emoji or characters outside the GSM-7 alphabet — including Hindi, Tamil, and most other Indian-language text — SMS gateways silently switch to Unicode (UCS-2) encoding, which cuts the real limit to about 70 characters per segment (67 if the message needs to be split across multiple parts). This counter always shows the character count; check your SMS provider's dashboard if your message mixes scripts or emoji, since it may cost more segments than this counter's 160-character preset implies.
Once your copy fits, put it to work on a free BizGo business page — see the box above to get started, or browse all free tools for more.
Frequently Asked Questions
This tool counts an emoji as 1 character, matching how platforms actually enforce their limits — even though raw JavaScript string length would report most emoji as 2 (a UTF-16 surrogate pair).
It shows your current character count against six common platform limits (Google Business Profile description, meta title, meta description, Instagram bio, SMS, and X posts), turning red the moment you exceed a limit. Click any limit to pin it as the large primary counter above.
No — every count is calculated in your browser using JavaScript. Your text never leaves your device.
The 160-character SMS limit assumes plain GSM-7 text. Adding an emoji or Hindi/Tamil/other non-Latin text switches SMS encoding to Unicode, which lowers the real per-segment limit to about 70 characters (67 for multi-part messages) — check your SMS gateway if your message mixes scripts.
Yes — it uses grapheme-cluster counting (via Intl.Segmenter where supported) so combining characters in Indian scripts are counted as whole visible characters, not split into multiple counted code units.