How to use it
- Paste the text into Text. The list and the cleaned copy update as you type.
- Read Characters found and Positions: each row gives the position, the code point and the Unicode name.
- Choose what happens to Space-like characters: a normal space, or removed.
- Copy the Cleaned text from its box, or download it as a text file.
Which characters are listed
- Zero-width characters: the zero-width space (U+200B), zero-width non-joiner (U+200C), zero-width joiner (U+200D) and word joiner (U+2060) take no space on the screen and change how text joins or breaks.
- Directional marks, embeddings, overrides and isolates: U+200E and U+200F, U+202A to U+202E, and U+2066 to U+2069 change the direction in which text is displayed.
- Byte order mark and soft hyphen: U+FEFF is used mainly as a byte order mark; the soft hyphen (U+00AD) is invisible unless a line breaks at it.
- Space-like characters: the no-break space (U+00A0), the figure space (U+2007) and the narrow no-break space (U+202F) look like a space but are not the ordinary one (U+0020).
What the tool does not list
The invisible operators U+2061 to U+2064 are not listed, because none of the pages used for this tool gives them. Ordinary spaces, tabs and line breaks are kept. Letters from other alphabets that look like Latin ones are not detected either: this tool finds invisible and space-like characters only.
Keep or remove the no-break spaces
A no-break space is identical to a normal space, except that a line may not be broken at it (Wikipedia, Whitespace character). It is useful in a text that must keep a number and its unit together. Choose Remove only when the text must contain plain spaces, for example before it goes into a form that does not accept them.
Worked example: Invisible text here.
The default text has three listed characters. A zero-width space sits after Invisible (position 10), a no-break space after text (position 16) and a byte order mark before the full stop (position 21). With the space option Replace, the cleaned text reads Invisible text here. With Remove, the words join: Invisible texthere.
| Position | Code point | Unicode name | What happens |
|---|---|---|---|
| 10 | U+200B | ZERO WIDTH SPACE | Removed |
| 16 | U+00A0 | NO-BREAK SPACE | Replaced with a normal space |
| 21 | U+FEFF | ZERO WIDTH NO-BREAK SPACE | Removed |
Frequently asked questions
Why does the text look the same before and after cleaning?
Invisible characters take no room on the screen, so the visible text does not change. The position and the code point show where each hidden character sits.
What is the difference between a no-break space and a normal space?
A no-break space is identical to a normal space, but a line may not be broken at it. Its code point is U+00A0, not U+0020, so a search or a filter can treat the two differently.
Will removing the joiners break an emoji?
Yes. A family or a profession emoji is built with zero-width joiners, and removing them splits the sequence into separate emoji. Keep the text as it is when such emoji matter.
Why are the invisible operators U+2061 to U+2064 not listed?
None of the pages used for this tool gives their names or their use, so the tool does not claim to find them. Only the code points the pages name are listed.
Is my text sent anywhere?
No. The search and the cleaning run in your browser. The text is not stored and is not sent to the site.
Sources
- Wikipedia (English): Zero-width space, U+200B and related characters
- Wikipedia (English): Zero-width joiner, U+200D
- Wikipedia (English): Soft hyphen, U+00AD
- Wikipedia (English): Word joiner, U+2060
- Wikipedia (English): Bidirectional text, the bidi controls with their Unicode names
- Wikipedia (English): Whitespace character, the no-break and figure spaces and U+FEFF
Figures and text last checked on Tuesday, November 10, 2026.