Clean AI Text — Remove Hidden Characters and Messy Formatting
Not just invisible characters. Also the doubled spacing, stray blank lines and mixed whitespace that come with copy-paste.
Hidden character report
Paste text to scan
What clean means on this page
Two separate jobs, done in one pass. The first is invisible characters — the zero-width and directional code points that leave no visible trace. The second is visible-but-wrong formatting: three blank lines where you wanted one, a paragraph indented with a mixture of tabs and spaces, line endings from two different operating systems in the same document.
Both come from the same root cause. Copying rendered text through several applications means carrying several applications' idea of what whitespace is. Cleaning is the process of settling on one.
Formatting problems that survive copy-paste
Non-breaking spaces are the worst offenders, because they look exactly like spaces and behave nothing like them. A line that will not wrap, a table column that refuses to align, a search that misses a phrase you can see — all three are commonly a single non-breaking space.
Then there are the line endings. Windows uses two characters per break, most other systems use one. Paste one into the other and the leftover renders as an extra blank line, which is why text copied from a document often arrives double-spaced.
A repeatable cleanup routine
Paste into the left box and press Clean. Read the report before you copy — it tells you which category of problem you had. Zero-width characters in bulk mean the text came straight from a rendered answer. A handful of non-breaking spaces mean it went through a word processor.
Then copy the result and paste it into its destination. If the destination is a web form that strips formatting anyway, you lose nothing. If it is an editor, you have removed the layer that editors handle worst.
Before you hit publish
Run the headline and any subheadings through separately. Invisible characters in a title cause layout problems that are hard to attribute, and a title is short enough to check in seconds.
For long pieces, clean the whole draft in one pass and use the report as a signal about your own workflow. If every draft reports the same character types in the same proportions, the fix belongs upstream — in how you copy, or in what you copy through.
Characters this tool looks for
25 invisible characters and formatting controls, with the action taken on each one.
| Character | Code point | Action | What it does |
|---|---|---|---|
| Zero-width characters | |||
| Zero Width Space | U+200B | Removed | Invisible separator with no width. Commonly left behind when text is copied out of a chat window. |
| Zero Width Non-Joiner | U+200C | Removed | Invisible character that blocks two letters from joining in scripts such as Arabic or Devanagari. |
| Zero Width Joiner | U+200D | Removed | Invisible character used to glue emoji sequences together. Stray copies can break word wrapping. |
| Zero Width No-Break Space (BOM) | U+FEFF | Removed | Byte order mark. Harmless at the start of a file, invisible noise anywhere else. |
| Word Joiner | U+2060 | Removed | Tells a text engine not to break a line here. Invisible, and easy to carry along by accident. |
| Mongolian Vowel Separator | U+180E | Removed | A legacy invisible separator from Mongolian script that now renders as nothing at all. |
| Bidirectional controls | |||
| Left-to-Right Mark | U+200E | Removed | Directional hint for mixed-script lines. Invisible on screen but present in the character stream. |
| Right-to-Left Mark | U+200F | Removed | Mirror of the left-to-right mark, used to steer the order of mixed-direction text. |
| Arabic Letter Mark | U+061C | Removed | Invisible directional marker for Arabic text. Rarely intentional outside its original document. |
| Left-to-Right Embedding | U+202A | Removed | Opens an embedded left-to-right run. Unpaired copies can scramble the order of a sentence. |
| Right-to-Left Embedding | U+202B | Removed | Opens an embedded right-to-left run. Left behind after copy-paste, it can flip nearby punctuation. |
| Pop Directional Formatting | U+202C | Removed | Closes an embedded directional run. Without its partner it is pure invisible noise. |
| Left-to-Right Override | U+202D | Removed | Forces following characters to display left-to-right regardless of their own direction. |
| Right-to-Left Override | U+202E | Removed | Forces following characters to display right-to-left. A common cause of text that looks reversed. |
| Left-to-Right Isolate | U+2066 | Removed | Modern replacement for the embedding controls. Still invisible, still travels with copied text. |
| Right-to-Left Isolate | U+2067 | Removed | Isolates a right-to-left run from the surrounding paragraph direction. |
| First Strong Isolate | U+2068 | Removed | Isolates a run whose direction is decided by its first strong character. |
| Pop Directional Isolate | U+2069 | Removed | Closes an isolate opened by one of the isolate controls above. |
| Formatting controls | |||
| Soft Hyphen | U+00AD | Removed | A hyphen the reader only sees if the word happens to break at the end of a line. |
| Carriage Return (CR) | U+000D | Removed | Half of a Windows line ending. Kept on its own it produces doubled spacing in most editors. |
| Markdown Asterisk Marker | U+002A | Removed | Bold or italic marker such as ** left behind when text is copied in its raw form. Turn this group off to keep Markdown styling marks. |
| Markdown Backtick Marker | U+0060 | Removed | Inline-code backtick left behind after copying raw assistant output. Turn this group off to keep inline code marks. |
| Invisible spaces | |||
| No-Break Space | U+00A0 | → space | Looks exactly like a space but stops a line from breaking there. A frequent copy-paste leftover. |
| Figure Space | U+2007 | → space | A space as wide as a digit, used to align numbers in tables. Replaced with a normal space. |
| Narrow No-Break Space | U+202F | → space | A thin, non-breaking space from French typography. Replaced with a normal space. |
Frequently Asked Questions
▸Does cleaning remove bold, italics or links?
Formatting is not part of what you paste. When you copy from a rendered page, the browser puts plain characters on the clipboard, so there is no bold or italic state left to remove. Links are lost at the copy step, not here.
▸Will it fix double blank lines?
Yes. Runs of three or more consecutive line breaks are reduced to two, and stray carriage returns are removed first so that Windows line endings stop producing a phantom extra break. The report counts each of those changes separately.
▸Can I clean text I wrote myself?
Of course. Nothing about the tool is specific to generated text — it matches characters, not authors. Text pasted from a PDF, a slide deck, a spreadsheet or an email client tends to carry exactly the same kind of residue.