Invisible / Zero-Width Character Detector
Paste text and the tool highlights every whitespace and invisible Unicode character: regular spaces as middle-dots, tabs as arrows, newlines as pilcrows, NBSPs in amber, zero-width characters in red, and bidi / formatting marks in fuchsia. A summary lists every invisible code point it found, and a one-click clean removes them — handy for fixing broken JSON, mangled passwords, or copy-pasted code that won't compile.
Legend
- · Regular space
- → Tab
- ¶ Newline
- ZW Zero-width character
- ␣ NBSP (U+00A0)
- FMT Other invisible / formatting char
HelloZWworld¶ This→line·has·a·tab.¶ Trailing·spaces·here.¶ ···Leading·spaces·here.¶ A␣non-breaking␣space.¶ A00ELRM·and·a02ALRE·inside.¶ ¶ A·blank·line·above.
Invisible characters found
- U+200BZero-width space×1
- U+0009Tab×1
- U+00A0NBSP (non-breaking space)×2
- U+200ELeft-to-right mark×1
- U+202ALeft-to-right embedding×1
Clean options
Helloworld This line has a tab. Trailing spaces here. Leading spaces here. A non-breaking space. ALRM and aLRE inside. A blank line above.
How to use
- Paste or type the text.
- Read the visualization — coloured dots / arrows mark whitespace, ZW marks zero-width.
- Read the 'found' list to see which Unicode points are hiding.
- Toggle clean options and copy the cleaned version.
Frequently asked questions
- What's a zero-width character?
- A Unicode code point with no width (U+200B, U+200C, U+200D, U+FEFF, …). They take up no visual space but count as characters — common culprits for 'this string is one byte longer than expected' bugs.
- What's NBSP?
- Non-breaking space (U+00A0). Looks like a normal space but doesn't break across lines. Some word processors auto-insert it after numbers and units; pasting that into JSON or code breaks things.
- What do bidi marks do?
- U+202A–U+202E (LRE / RLE / PDF / LRO / RLO) override the visual direction. They're useful for mixed-language text but a known phishing vector when sneaked into URLs or filenames.
- Is the cleaning lossless?
- Mostly — removing zero-width characters and normalizing line endings is safe for most text. Collapsing whitespace and trimming lines may change formatting you care about, so review before pasting back.
Guides on this topic
Related tools
ASCII Code Table
Browse and search the 256-row ASCII / extended-ASCII table — decimal, hex, octal, binary, and the named control characters.
Character & Word Counter
Count characters, words, sentences, lines, and bytes in real time.
Unicode Escape Converter
Encode text to \uXXXX, U+XXXX or HTML entities — and decode any of those back to text. Handles emoji and astral characters.
Unicode Character Inspector
Break a string into characters and show each codepoint, UTF-8 bytes, HTML entity, CSS escape, and Unicode block.
TXT Record Splitter (255-Byte Chunks)
Split a long SPF, DKIM or DMARC TXT record into the 255-byte chunks the DNS protocol requires — outputs BIND, generic zone file, Cloudflare or Route 53 syntax.
CSS Specificity Calculator
Paste any CSS selector to see its (ID, class, type) specificity, per-token breakdown, and head-to-head comparison with another selector.