Check your caption before posting
Paste the whole caption, including hashtags, line breaks and links. Keep whitespace included when checking the complete text. The caption example includes a joined emoji and Tamil hashtag so you can compare the different counting measures. Enter a limit from your destination’s current guidance; this tool does not assume one limit fits every service.
A fitting copy is a separate download; your original caption stays editable. Links are counted literally here. Some platforms shorten or weight URLs, normalize text, or apply special emoji rules, so these raw Unicode measures do not reproduce every platform’s counter. Review the platform’s final composer before publishing. X documents weighted counting and URL handling (reviewed 12 October 2026).
Format and review hashtags before adding them to your caption.
Check a character limit
- Paste text and choose the measure your destination uses.
- Enter an optional limit and decide whether to exclude Unicode whitespace.
- Counts update after a 450 ms pause. Turn live counting off for manual control, or select Count characters immediately.
- Review the fitting boundary. Select the first omitted character to edit it, or save a separate fitting copy without changing your original.
The limit is your input, not a verified social network, SMS, form or database rule. Destinations can have additional byte, normalization, URL, emoji or encoding rules. Check their current specification; a count here cannot guarantee acceptance.
Why the measures differ
Grapheme clusters approximate user-perceived characters: a family emoji may be one, and a Tamil combining sign stays with its letter. Unicode code points count scalar values, UTF-16 units count JavaScript storage units, and UTF-8 bytes count encoded text bytes with no byte-order mark. A composed accent and a decomposed accent can look the same while using different code-point or byte counts. This tool does not normalize your text.
Whitespace exclusion removes characters with the Unicode White_Space property for the counting view, including spaces, tabs and line breaks. It does not remove zero-width joiners, zero-width spaces or every invisible formatting character. Combining marks can join across removed whitespace, so filtered grapheme counts reflect the resulting counting view. The original download always preserves the original valid Unicode text, including its whitespace; summary describes the chosen counting view.
Fitting copies and original text
A fitting copy is the longest prefix that stays within your selected limit while keeping native grapheme groups whole. A byte or code-point budget may leave unused capacity because the next full emoji or combining sequence cannot fit. The tool never skips that character to include later text. If whitespace exclusion is selected, the fitting copy comes from that whitespace-filtered view; the original TXT still includes whitespace. The preview is bounded; character groups longer than 256 UTF-16 units use a labelled placeholder. The fitting download still contains the complete fitting prefix.
Import, paste and undo
TXT import validates UTF-8 before replacing text, removes an initial BOM and converts CRLF/CR to LF. Invalid files preserve current text and results; editing cancels unfinished reads. Large pastes of at least 10,000 UTF-16 units use one validated replacement. Import, large paste, example and Clear text have one undo step; typing or changing counting settings discards that replacement undo. Clear text retains your settings. Input-method composition pauses live counting until committed.
Private, bounded counting
A local worker counts at most 100,000 UTF-16 units with a ten-second timeout. Cancel terminates it until another edit or manual retry; Clear removes input and results with one-step undo. No upload, saved draft or external service. Unpaired surrogates reject to prevent lossy UTF-8 export. Browsers without Intl.Segmenter show an error rather than a fallback. Native Unicode grapheme data can vary with the browser; counts are not Tamil syllable, display-width or font-glyph counts. Downloaded files remain under your control.
Unicode segmentation reference. For word-like segments and language selection, use the word counter.