Count the Characters People See—and the Units Systems Store
Measure visible characters, code points, UTF-16 units, UTF-8 bytes, letters, digits, and lines without uploading your text.
Open the Character Counter →Character Counter
Your text is processed in this browser tab. It is not uploaded or saved.
“Visible characters” uses grapheme segmentation when supported. Code points, UTF-16 units, and UTF-8 bytes expose common technical counting differences.
Free Character Counter and Letter Counter
A character counter measures how many text elements appear in a passage. This free character counter reports visible characters, characters without whitespace, Unicode code points, UTF-16 code units, UTF-8 bytes, letters, digits, and lines.Your text is processed in your browser. It is not uploaded or saved by the counter, and no account is required. Enter an optional character limit when you need to prepare text for a form, database field, message, caption, code interface, or publishing system.
To get a character count, paste or type the text and read the live **Visible
characters** total. Check the separate “without whitespace,” Unicode, and byte
totals when the destination specifies a particular counting rule.
Count Characters Online
- Paste text, emoji, numbers, or multilingual content into the box.
- Read the live totals for each character measurement.
- Enter an optional limit to see how many visible characters remain.
- Copy the text when finished, or clear it to reset every count.
The counter updates in the current tab as you type. A limit changes only the progress display; it does not truncate or alter the text.
Why One Character Can Have Several Counts
“Character” can mean different things to a reader, a programming language, an encoding, or a platform. A single emoji may look like one symbol while being represented by multiple Unicode code points and multiple UTF-16 code units. An accented letter can be stored as one precomposed code point or as a base letter followed by a combining mark.
The Unicode Text Segmentation specification describes grapheme clusters as user-perceived characters. The counter uses the browser's Intl.Segmenter with grapheme granularity when available. The ECMAScript Internationalization specification defines that browser interface.
For byte measurement, the tool uses UTF-8 encoding. The WHATWG Encoding Standard defines TextEncoder output as UTF-8. These standards explain why visible-character, code-point, UTF-16, and byte totals can legitimately differ.
What Each Character Total Means
| Measurement | What is counted | Useful when |
|---|---|---|
| Visible characters | Extended grapheme-like segments when supported | Estimating what a reader perceives as one character |
| Without whitespace | Visible segments after spaces, tabs, and line breaks are removed | A rule explicitly excludes whitespace |
| Unicode code points | Values returned by Unicode-aware string iteration | Inspecting the logical Unicode sequence |
| UTF-16 units | JavaScript string length | A system documents limits in UTF-16 code units |
| UTF-8 bytes | Encoded byte length | Estimating storage or request size in UTF-8 |
| Letters | Unicode characters with the Letter property | Counting letters across supported scripts |
| Digits | Unicode characters with the Number property | Separating numeric characters from other content |
| Lines | Text blocks separated by line-break characters | Code, addresses, captions, lists, and pasted records |
Do not assume a destination uses the first total shown. Check its documentation or test its own counter with representative text.
Character Counter vs Letter Counter
A character counter includes letters, digits, punctuation, symbols, emoji, and usually whitespace. A letter counter includes only Unicode letters. For example, the text Plan 2! contains letters, a space, a digit, and punctuation; its character total is larger than its letter total.
This page owns both intents because live search results for character counter and letter counter are dominated by the same dedicated utilities. The interface still reports separate totals so “letters” does not silently become a synonym for every character.
Character Count With and Without Spaces
Some briefs say “characters including spaces,” while others say “characters without spaces.” This tool shows both visible totals:
- Visible characters includes spaces, tabs, and line breaks.
- Without whitespace removes Unicode whitespace before grapheme counting.
Whitespace is broader than the ordinary space bar. Tabs and line breaks also count as whitespace. A platform may apply its own normalization, collapse repeated spaces, or change line endings before enforcing a limit, so its final result can differ.
Grapheme Clusters, Emoji, and Combining Marks
A grapheme cluster is a sequence that users commonly perceive as one character. Examples can include:
- an emoji modified by a skin-tone character;
- a family emoji joined from several emoji;
- a flag made from regional indicator symbols;
- a letter followed by a combining accent;
- script-specific sequences whose display depends on shaping.
The visible-character result is designed for this human-facing interpretation. The code-point and UTF-16 totals reveal the underlying representation. The result can still vary by browser implementation, Unicode version, locale tailoring, or platform-specific counting rules.
When a strict external limit matters, paste the final text into that destination before publishing. This is especially important when the passage contains emoji, combining marks, or less common scripts.
UTF-8 Bytes vs UTF-16 Units
UTF-8 bytes and UTF-16 units are technical measurements, not alternate visual counts.
ASCII letters commonly require one UTF-8 byte and one UTF-16 unit. Other characters may require multiple bytes. A Unicode code point outside the Basic Multilingual Plane uses a surrogate pair in UTF-16, so JavaScript string length can increase by two even when the symbol appears once.
Use UTF-8 bytes when an API, file format, or database limit is explicitly byte-based. Use UTF-16 units only when the system documents that convention. If the documentation merely says “characters,” do not guess—test representative input or ask the system owner.
Use a Character Limit Without Losing Meaning
A strict limit is a boundary, not a writing-quality score. If the text is too long:
- Preserve names, numbers, links, required terms, and factual qualifications.
- Remove repeated setup or duplicated conclusions.
- Replace long phrases only when a shorter version keeps the same meaning.
- Check whether a link, emoji, or formatting marker consumes unexpected units.
- Recount in the destination that will enforce the final limit.
Avoid deleting words mechanically from legal, medical, financial, academic, or technical text. A short qualifier such as “may,” “estimated,” or “in this sample” can materially change a claim.
Character Counts for Common Workflows
Forms and database fields
Confirm whether the maximum is measured in visible characters, code points, UTF-16 units, or bytes. Validate the same rule on both the client and server so accepted text is not rejected later.
Social posts and captions
Platform rules can change and may treat links, emoji, or special symbols differently. Use this counter for drafting, then rely on the platform's current composer for the final limit.
SMS and messaging
Message billing and segmentation can depend on the encoding repertoire, not just the number of visible characters. This page does not calculate SMS segments or carrier charges.
Code and API payloads
UTF-8 byte length can help estimate payload size, but headers, JSON syntax, escaping, compression, and transport framing add bytes outside the pasted text.
Multilingual writing
Unicode letter matching recognizes many scripts, while grapheme segmentation aims to respect user-perceived boundaries. A language-specific editor may still apply tailored rules that differ from the browser.
Privacy and Limitations
Counting happens locally after the page loads. The character-counter script does not send the pasted text to a server. Copy uses the browser clipboard when permission is available, with a local selection fallback.
Browser-only processing does not protect text from the device itself. Avoid sensitive material on a shared computer, in an untrusted browser extension, or during screen sharing. Clear the box and close the tab when finished.
The counter does not:
- determine a third-party platform's proprietary limit;
- calculate SMS encoding segments;
- validate database storage;
- inspect grammar, tone, originality, or factual accuracy;
- rewrite or shorten text automatically;
- guarantee that every browser or editor will report the same total.
When Character Counting Is Not Enough
Use the word counter when the requirement is expressed in words, sentences, paragraphs, reading time, or speaking time. Use the sentence rewriter or paragraph rewriter only when the wording itself needs revision.
Humanizer PRO rewrites supplied text rather than counting it. A free account supports up to 300 words per request. Compare every revision with the source and restore any changed fact, citation, name, number, quotation, or required term.
Frequently Asked Questions
Is this character counter free?
Yes. The character counter is free, requires no account, and processes text in the current browser tab.
Does the character counter save my text?
No. The counting script does not upload or save the text. Clear the box when finished, especially on a shared device.
Are spaces included in the character count?
The tool shows both visible characters including whitespace and visible characters after whitespace is removed.
Why does an emoji count as more than one code point?
Some emoji are sequences containing modifiers, joiners, or multiple component symbols. They may display as one grapheme cluster while using several code points and UTF-16 units.
What is the difference between characters and letters?
Characters can include letters, digits, spaces, punctuation, symbols, and emoji. The letter total includes only Unicode characters classified as letters.
Why does another platform show a different count?
The platform may count UTF-16 units, code points, bytes, or proprietary text elements. It may also normalize whitespace, links, emoji, or line endings. Use its own final counter when its limit is authoritative.
Can I set a character limit?
Yes. Enter a positive limit to see characters remaining, the percentage used, or how far the text exceeds the limit.
Can this tool shorten my text?
No. It measures text without changing it. If you choose to rewrite a passage, use the Humanizer PRO editor and review the result against the original.
Count the Representation That Actually Matters
Start with visible characters for a human-facing estimate, then use code points, UTF-16 units, or UTF-8 bytes only when the destination explicitly requires that measurement. Always verify a strict final limit in the system that will enforce it.
Is this character counter free?
Yes. The character counter is free, requires no account, and processes text in the current browser tab.
Does the character counter save my text?
No. The counting script does not upload or save the text. Clear the box when finished, especially on a shared device.
Are spaces included in the character count?
The tool shows both visible characters including whitespace and visible characters after whitespace is removed.
Why does an emoji count as more than one code point?
Some emoji are sequences containing modifiers, joiners, or multiple component symbols. They may display as one grapheme cluster while using several code points and UTF-16 units.
What is the difference between characters and letters?
Characters can include letters, digits, spaces, punctuation, symbols, and emoji. The letter total includes only Unicode characters classified as letters.
Why does another platform show a different count?
The platform may count UTF-16 units, code points, bytes, or proprietary text elements. It may also normalize whitespace, links, emoji, or line endings. Use its own final counter when its limit is authoritative.
Can I set a character limit?
Yes. Enter a positive limit to see characters remaining, the percentage used, or how far the text exceeds the limit.
Can this tool shorten my text?
No. It measures text without changing it. If you choose to rewrite a passage, use the Humanizer PRO editor and review the result against the original.
Need to Refine the Text You Counted?
Humanize or rewrite up to 300 words per request, then compare the editable result with your source.
Humanize 300 Words Free →