Remove Invisible Characters
Strip zero-width spaces, byte-order marks, and other hidden Unicode characters from pasted text, instantly inside your browser.
What are invisible characters?
Invisible characters are Unicode code points that take up no visible space — things like the zero-width space, zero-width joiner, byte-order mark, and bidirectional text control characters. They're often picked up invisibly when copying text from a website, PDF, or messaging app, and can cause strange bugs: broken string comparisons, unexpected line wrapping, or text that looks empty but isn't.
This tool scans pasted text for a wide range of these hidden characters, removes them, and tells you exactly how many were found.
GuideHow to use it
How the cleanup works
The text is scanned against a set of known invisible Unicode ranges — including zero-width spaces and joiners, the byte-order mark, soft hyphens, and bidirectional text formatting characters — and every match is stripped out, while every visible character is left untouched.
Why it helpsFeatures & benefits
Why this runs entirely in your browser
The scan and cleanup run in JavaScript locally in the tab, which means it keeps working offline once the page has loaded and nothing typed or pasted here is ever sent to a server.
Common uses
Cleaning up text copied from a website before pasting it into code, fixing a string comparison bug caused by a hidden zero-width space, removing a byte-order mark left at the start of a file's content, or sanitizing user-submitted text.
Frequently asked questions
A few things people usually want to know before trusting the numbers.
It's a character that takes up no visible width but still counts as a character — it can silently break string equality checks, search functions, or word counts without any visual sign it's there.
A special invisible character sometimes placed at the very start of a text file to indicate its encoding. It can cause issues if a program doesn't expect it, such as showing up as stray characters or breaking JSON parsing.
No. Only genuinely invisible Unicode characters are removed — normal spaces, tabs, and line breaks are left untouched.
That's a strong sign it contains invisible characters — paste it here to find and remove them.
No. All scanning and cleanup happens locally in your browser. Nothing typed or pasted here is sent to a server, stored, or shared.