Invisible Character Remover
Paste text to strip zero-width spaces, hidden bidi controls and unusual spaces that break code, search and formatting — all in your browser.
Updated
How to use Invisible Character Remover
The Invisible Character Remover strips hidden, zero-width and unusual Unicode characters from text, instantly in your browser. Paste content copied from a PDF, chat app, AI assistant or website and the tool removes zero-width spaces, the byte-order mark, soft hyphens, bidirectional controls and other non-printing characters, while optionally normalizing exotic spaces into ordinary ones. These invisible characters are a frequent and frustrating cause of broken code, failed searches, mismatched comparisons and odd formatting — cleaning them up makes your text behave predictably again, all without uploading anything.
- Copy the text that is misbehaving from its source.
- Choose whether to normalize unusual spaces and remove bidi controls.
- Paste the text into the input area.
- Review the cleaned text and the count of removed characters.
- Copy the cleaned text back into your editor or document.
Your data never leaves your device — 100% private processing.
What counts as an invisible character?
Several categories of Unicode characters produce no visible glyph yet still occupy a position in a string. Zero-width characters such as the zero-width space (U+200B), zero-width joiner and non-joiner, and the word joiner are used legitimately in some scripts and emoji sequences but often leak into ordinary text where they cause confusion. The byte-order mark (U+FEFF) frequently appears at the start of files and copied strings. The soft hyphen (U+00AD) marks optional break points but is invisible when not at a line end. Bidirectional control characters reorder how text is displayed and have even been used in security exploits. This tool targets all of these, removing them so what you see is what you actually have.
| Character | Code point | Problem it causes |
|---|---|---|
| Zero-width space | U+200B | Breaks search and word boundaries |
| Byte-order mark | U+FEFF | Stray character at start of strings |
| Soft hyphen | U+00AD | Invisible character inside words |
| Non-breaking space | U+00A0 | Looks like a space but is not |
| LTR/RTL overrides | U+202A–E | Reorder displayed text |
Why normalizing spaces matters
Beyond truly invisible characters, Unicode defines many space characters that look identical to an ordinary space but are different code points — the non-breaking space, the narrow no-break space, the em and en spaces, the ideographic space, and others. These commonly arrive when copying from word processors, web pages or PDFs. Because they are not the regular space (U+0020), they can break code that splits on spaces, cause string comparisons to fail, defeat search-and-replace, and produce inconsistent indentation. The optional space-normalization step converts all of these look-alike spaces into a plain space, so your text is uniform. You can disable it if you intentionally rely on non-breaking spaces, for example to keep a number and its unit together in display text.
Worked examples
Strip a zero-width space
Inputs: hello
Result: hello · removed 1 hidden character
Normalize a non-breaking space
Inputs: a b
Result: a b · normalized 1 space
Glossary
- Zero-width space
- A Unicode character (U+200B) that occupies no visible width but still affects search, splitting and comparison.
- Byte-order mark (BOM)
- The character U+FEFF, often added to the start of files, which can appear as a stray invisible character when copied.
- Bidirectional control
- A Unicode character that changes the display order of surrounding text, sometimes abused to disguise content.
- Non-breaking space
- A space character (U+00A0) that prevents a line break and looks like a normal space but is a different code point.
- Soft hyphen
- An invisible character (U+00AD) that marks an optional hyphenation point inside a word.
Related reading
Frequently Asked Questions
Get weekly tool tips & updates
New tools, power-user tips, and productivity hacks — delivered free every Friday.
No spam, ever. Unsubscribe with one click.
Why use Invisible Character Remover?
- Remove zero-width spaces, joiners and the byte-order mark that break code and search
- Strip hidden bidirectional control characters that can reorder displayed text
- Normalize non-breaking and exotic spaces into a regular space
- See a count of exactly how many hidden characters were removed
- Runs entirely in your browser, so pasted content stays private
Common use cases
- Clean code snippets copied from a PDF or blog that refuse to compile
- Fix search and de-duplication that fail because of invisible characters
- Sanitize text pasted from a chat app or AI assistant before reuse
- Remove a byte-order mark that appears at the start of a copied string
- Strip bidi controls that can disguise the real order of code or text
Related Text Tools
Remove Extra Spaces
Remove extra spaces, tabs, and blank lines from text. Trim, collapse double spaces, and clean up messy formatting. Free and private.
Remove Duplicate Lines
Remove duplicate lines from text online. Case-sensitive or insensitive matching. Preserves order or sorts alphabetically. Free online tool.
Case Converter
Convert text to camelCase, PascalCase, snake_case, kebab-case, UPPERCASE, lowercase, Title Case, and Sentence case instantly.
Word Counter
Count words, characters, sentences, and paragraphs, and estimate reading time. Free, instant, and private — ideal for essays, articles, and posts.
Dictionary — Word Definitions, Meanings & Pronunciation
Look up the definition, meaning, pronunciation, synonyms, and examples of any English word. Free, fast dictionary powered by the Free Dictionary API.
Profanity Filter & Text Cleaner
Filter, censor, and detect profanity in any text. Paste your text to mask swear words and check whether it contains profanity. Free, fast, no sign-up.
Explore all Text Tools.