Find and remove hidden characters in text
Paste text and every character you can’t see appears as a small labelled box: zero-width spaces, non-breaking spaces, byte order marks, direction marks and more. Copy the text back without them, or keep the ones your emoji and language need.
- No ads
- No sign-up
- No watermark
- No daily limit
- Nothing uploaded
Why you can’t see them
We measured 21 of these characters in Inter, Arial, Times New Roman, Menlo and Helvetica Neue. Zero-width spaces, joiners, byte order marks, soft hyphens, direction marks, variation selectors and tag characters took no width and drew nothing in any of them. The Hangul filler and the blank Braille cell are the opposite trap: as wide as two to four spaces in the four proportional fonts and blank in all but one case (Times New Roman drew a mark for the filler), so they pass for ordinary spacing.
Copying text doesn’t clean it
In Chromium 153, copying text from a web page turned a non-breaking space into a normal space. All 17 other hidden characters we tried came through copy and paste unchanged, into a text box, a one-line field and a rich text editor alike.
What it keeps
Some of these characters do a job. A joiner holds a family emoji together and shapes Persian and Hindi words, a zero-width space marks word breaks in Thai, French puts a narrow space before ! and ?, and direction marks keep Hebrew and Arabic in order. Those stay while “Keep the ones that are needed” is ticked, and the view shows them with an outline instead of a solid box. Untick it to remove every one.
Messages hidden in plain sight
Tag characters are an invisible copy of the letters, digits and punctuation on a keyboard, and security researchers have used them to hide instructions for chatbots in ordinary looking text. A run of variation selectors can carry any bytes after an emoji. When a run spells out something readable, the tool shows it above the table before removing it.
Your text stays with you
The text is cleaned on your own device as you type. Nothing is uploaded, nothing is stored, and you don’t need an account. Close the tab and it’s gone.
From our tests
- Do ChatGPT answers contain hidden characters?
Counts from six OpenAI models, the o-series narrow spaces, copy and paste in Chromium, and hidden tag messages.
- Curly quotes, em dashes and ellipses: when plain text needs them gone
Garbled ’ characters, broken JSON and CSV, SMS limits, and counts from six books.