Visible characters count grapheme clusters; code points and UTF-16 units are separate measures.How to use this character counter
- Write or paste a headline, caption or other copy into the text field.
- Review the visible-character count, words, non-whitespace characters, code points and UTF-16 units.
- Set an optional personal goal, edit your copy and use Copy text when ready. Verify destination-specific limits separately.
Worked example
The text Hi 👋 contains four visible characters including its space, four Unicode code points and five UTF-16 code units. The waving-hand emoji uses two UTF-16 units. A family emoji joined into one visible symbol can contain several code points. The counters label these differences instead of implying one count applies everywhere.
Count characters with and without whitespace
The headline counts visible grapheme clusters when Unicode segmentation is available. Whitespace contributes to that total; the separate non-whitespace card excludes segments consisting entirely of spaces, tabs or line breaks. Line endings and combining marks can behave differently from ordinary letters, so the code-point and UTF-16 cards remain visible.
A practical word counter for copy editing
Word counts use word-like Unicode segments with an English locale. Numbers can count as words, while punctuation-only segments do not. Segmentation is more useful than counting spaces when copy includes repeated spacing, emoji or languages that do not separate every word with a space. It is not a grammar or readability analysis.
Use a custom goal without assuming a platform limit
The goal tracks the same visible-character definition as the headline. It is your own drafting constraint, not an assertion that a social network or ad platform uses that counting method. A destination may weight characters, restrict individual fields or truncate text visually. Check the final placement preview and current field rules before publishing.
Reference: MDN: locale-aware Unicode segmentation.
Common questions
Why do emoji produce different character counts?
A visible symbol can contain multiple Unicode code points, and some code points require two UTF-16 units. Joined emoji and combining marks make the difference more noticeable. This tool reports each definition explicitly instead of treating them as interchangeable.
Does the counter include spaces and line breaks?
The headline includes whitespace. A separate counter excludes whitespace-only segments, and the line count treats a CRLF pair as one line ending. Empty text has zero lines. Your source text is not trimmed before counting or copying.
Will this validate Google, Meta or TikTok ad limits?
No. The custom goal uses the visible-character measure shown here, while platforms can use different rules and limits for different fields. Use this for drafting and compare final copy with the destination’s current editor and preview.
How much text can I count?
The field accepts up to 100,000 UTF-16 units to bound browser work. Counts update locally without a text-processing API request. A browser without Intl.Segmenter uses a labelled code-point fallback and a simpler word-count rule.
