aitextcleaner.top

ChatGPT Watermark Detector — Scan Text for Hidden Characters

A read-only scan. See what invisible characters are in your text without changing a single one of them.

Scanning never changes your text.

Hidden character report

Paste text to scan

What the scan reports

The scan reads your text and produces a list. Each row is one character type that was found: its name, its Unicode code point, and how many times it appears. The total at the bottom is the sum of those counts, which is the number of characters that would change if you ran the cleaner over the same text.

Nothing is removed, replaced or reordered. The text you pasted stays exactly as it was, in the box, for as long as the page is open.

How to read the report

A row for a zero-width character means the character is present and invisible. A row for a non-breaking space means it is present and looks like a space but will not break at a line ending. Two rows with similar names are two different characters — the code point column is what distinguishes them.

If the report says no hidden characters were found, the scan looked for every entry in the published table and matched none of them. That is a complete answer for the characters this tool knows about, and it is worth knowing before you spend time debugging a layout problem elsewhere.

Why a scan-only view exists

Sometimes you do not want the text changed. If you are checking a quotation, auditing a document someone sent you, or trying to work out which step of a pipeline is adding noise, a clean copy is not the useful output — the report is.

It is also the honest way to show what the cleaner does. Scan a paragraph, note the counts, then run the cleaner on the same text and compare. The numbers match, because both views call the same engine.

What a character-level scan cannot tell you

This scan knows about characters, and nothing else. It cannot tell you who wrote a piece of text, what model produced it, whether it was edited, or how any system will treat it. Those are different questions with different evidence, and a character table is not evidence for any of them.

It also cannot see anything outside the character stream: file metadata, authorship fields, revision history and platform logs are all outside its reach. What it covers, it covers exactly — a scan for the specific invisible characters listed in the table on this page.

Characters this tool looks for

25 invisible characters and formatting controls, with the action taken on each one.

CharacterCode pointActionWhat it does
Zero-width characters
Zero Width SpaceU+200BRemovedInvisible separator with no width. Commonly left behind when text is copied out of a chat window.
Zero Width Non-JoinerU+200CRemovedInvisible character that blocks two letters from joining in scripts such as Arabic or Devanagari.
Zero Width JoinerU+200DRemovedInvisible character used to glue emoji sequences together. Stray copies can break word wrapping.
Zero Width No-Break Space (BOM)U+FEFFRemovedByte order mark. Harmless at the start of a file, invisible noise anywhere else.
Word JoinerU+2060RemovedTells a text engine not to break a line here. Invisible, and easy to carry along by accident.
Mongolian Vowel SeparatorU+180ERemovedA legacy invisible separator from Mongolian script that now renders as nothing at all.
Bidirectional controls
Left-to-Right MarkU+200ERemovedDirectional hint for mixed-script lines. Invisible on screen but present in the character stream.
Right-to-Left MarkU+200FRemovedMirror of the left-to-right mark, used to steer the order of mixed-direction text.
Arabic Letter MarkU+061CRemovedInvisible directional marker for Arabic text. Rarely intentional outside its original document.
Left-to-Right EmbeddingU+202ARemovedOpens an embedded left-to-right run. Unpaired copies can scramble the order of a sentence.
Right-to-Left EmbeddingU+202BRemovedOpens an embedded right-to-left run. Left behind after copy-paste, it can flip nearby punctuation.
Pop Directional FormattingU+202CRemovedCloses an embedded directional run. Without its partner it is pure invisible noise.
Left-to-Right OverrideU+202DRemovedForces following characters to display left-to-right regardless of their own direction.
Right-to-Left OverrideU+202ERemovedForces following characters to display right-to-left. A common cause of text that looks reversed.
Left-to-Right IsolateU+2066RemovedModern replacement for the embedding controls. Still invisible, still travels with copied text.
Right-to-Left IsolateU+2067RemovedIsolates a right-to-left run from the surrounding paragraph direction.
First Strong IsolateU+2068RemovedIsolates a run whose direction is decided by its first strong character.
Pop Directional IsolateU+2069RemovedCloses an isolate opened by one of the isolate controls above.
Formatting controls
Soft HyphenU+00ADRemovedA hyphen the reader only sees if the word happens to break at the end of a line.
Carriage Return (CR)U+000DRemovedHalf of a Windows line ending. Kept on its own it produces doubled spacing in most editors.
Markdown Asterisk MarkerU+002ARemovedBold 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 MarkerU+0060RemovedInline-code backtick left behind after copying raw assistant output. Turn this group off to keep inline code marks.
Invisible spaces
No-Break SpaceU+00A0→ spaceLooks exactly like a space but stops a line from breaking there. A frequent copy-paste leftover.
Figure SpaceU+2007→ spaceA space as wide as a digit, used to align numbers in tables. Replaced with a normal space.
Narrow No-Break SpaceU+202F→ spaceA thin, non-breaking space from French typography. Replaced with a normal space.

Frequently Asked Questions

Does the scan change my text?

No. The scanner never writes to the input box. It calls the same engine the cleaner uses and reads only the report half of the result, discarding the cleaned output. Your text stays byte-for-byte identical until you choose to copy it somewhere else.

What does 'no hidden characters found' mean?

It means every character in your text was compared against the published table and none of them matched. Your text is free of the invisible characters this tool looks for. It is not a statement about anything else in the text.

Can this tell me whether text was written by an AI?

No, and no character-level scan can. This tool reads invisible formatting characters. Authorship is a different question that a table of Unicode code points has nothing to say about. Anyone claiming otherwise is selling you something this page does not do.