Designed for English text Runs locally · no text uploaded

Detect AI text: Check AI Text for Hidden Characters

Paste text from ChatGPT, Claude, Gemini, Word, Google Docs or the web. This free tool finds invisible Unicode, non-breaking spaces, smart quotes, em dashes and Markdown leftovers, shows you exactly what it found and where, and gives you clean, paste-ready text. Your words are never rewritten, and emoji always survive. Think of it as an AI text check for what's literally inside the characters, not a guess about who wrote them.

Private by designRuns 100% in your browser. Zero network requests. Nothing is uploaded, logged or stored.
Full audit trailEvery change is itemised with its code point, class and exact line:column position.
Emoji & language safeSequences like 👩🏽‍💻 are protected, and non-Latin scripts are treated conservatively.

Searching for a “Claude watermark remover”? Read what actually works, and what no tool can do.

Paste text to inspect hidden Unicode and formatting characters.
Characters 0
Words 0
Issues found 0
Changes applied 0
Ready to inspect text
Paste text to inspect hidden characters, unusual spaces and formatting artefacts. Nothing is uploaded by this page.

Cleaning mode

Start with Safe Clean. Use Deep Clean only when you understand the formatting risks.

Deep Clean removes joiners, word joiners and bidirectional controls wherever they appear, which can change ligatures in English and spelling or rendering in languages such as Arabic, Persian, Hindi or Thai. Emoji sequences are still protected. Only use Deep Clean on text that is genuinely English.
Possible look-alike (confusable) characters detected

Some words mix Latin letters with visually identical letters from another alphabet, or are written entirely in look-alike letters imitating an English word. This can be accidental, or a sign of spoofed links or names. They are never changed automatically, check them yourself.

Non-Latin script detected

Advanced options

Show hidden characters

Invisible or unusual formatting is replaced with labelled markers in this preview only.

Cleaning report

Each row records what was found, where it appeared (line:column), and what the selected mode did with it.

Detected hidden and unusual characters with code point, description, count, positions, classification and cleaning action.
Code point Name Class Count Positions (line:col) Action
Paste text to inspect hidden characters, unusual spaces and formatting artefacts.

Why clean pasted text?

AI answers and copied web text carry more than words. Invisible Unicode, non-breaking spaces, smart punctuation and Markdown markers travel with every copy, and they break code and JSON, corrupt on-site search, snap layouts and cause "why does this look wrong" bugs that most editors can't display. This tool finds each one, shows it to you with its exact position, and fixes the ones you choose. Unlike server-side cleaners, it never sees your text: the page makes zero network requests, works offline once loaded, and remembers your settings on your own device.

What this tool checks and fixes

Hidden charactersZero-width spaces (U+200B), byte order marks (U+FEFF), soft hyphens, stray controls and smuggled tag characters, removed, with every position reported.
Format-control characters (Cf)The full Unicode “Cf” family: zero-width joiners and non-joiners (U+200C/U+200D), word joiners, bidirectional marks and isolates, and tag characters, each classified rather than blanket-stripped.
Non-breaking & exotic spacesNBSP, thin, hair and em spaces become normal spaces. Digit grouping (10 000) is recognised and kept.
Line endingsWindows CRLF, old Mac CR, NEL and Unicode separators all normalised to standard line feeds.
Smart quotesCurly “quotes” become plain ' and ", essential for code, JSON and config files.
Dashes & ellipsesEm/en dashes become hyphens and … becomes three dots for plain-text contexts.
Markdown leftovers# headings, **bold**, `backticks` and [links] from chatbot answers are flattened, text, bullets and code fences kept.
Styled & fullwidth letters𝘯𝘼𝘵𝘱 and GIDE letters are detected, and optionally folded to plain letters.
Look-alike lettersCyrillic/Greek letters imitating Latin are always flagged, and optionally converted, only inside flagged words.
Security controlsBidirectional "Trojan Source" controls trigger a warning before you paste into code or URLs.
Emoji protectionZWJ sequences, skin tones, flags and variation selectors are recognised as legitimate and never broken.
Stacked accents (Zalgo)Optional cleanup keeps up to two marks per letter; café and naïve are always safe.
Unicode normalisationNFC applied with a full audit entry whenever it changes the text, never silently.

Who is this for?

DevelopersClean AI code snippets before committing; catch invisible characters and bidi controls that break builds and reviews.
Writers & editorsGet paste-ready text for CMSs, email and documents, free of formatting quirks, with proof of what changed.
Anyone using AI toolsRun a genuine AI text check: see what's actually in a chatbot answer, and get a straight answer, including when nothing is hidden.
What are these characters? A plain-language guide
Zero-width space (ZWSP)
An invisible "you may break the line here" hint, overwhelmingly copy-paste noise in English, so it is removed in both modes. If it appears next to non-Latin letters (some languages use it as a word break), Safe Clean preserves it and warns you instead.
Zero-width joiner / non-joiner (ZWJ, ZWNJ)
Invisible characters that glue letters together or keep them apart. ZWJ is what builds combined emoji like 👨‍👩‍👧 or 👩🏽‍💻, and emoji, including skin-tone sequences, are protected in both modes. Outside emoji they are rare in English (they control ligatures) but required spelling in languages such as Persian and Hindi, so Safe Clean preserves them for review and only Deep Clean removes them.
No-break space (NBSP)
A space that stops a line breaking. In international English it is legitimately used to group digits, as in 10 000, so Safe Clean keeps those and converts all other no-break spaces to ordinary spaces.
Byte order mark (BOM, U+FEFF)
A file-encoding marker that sometimes leaks into pasted text. A BOM at the very start is removed; one in the middle carries legacy "don't break the line here" meaning, so Safe Clean keeps it for review and Deep Clean removes it.
Soft hyphen
An invisible "you may hyphenate here" hint left over from typeset documents. Removed, because it silently breaks searching and comparison in plain text.
Bidirectional controls
Characters that reorder how text is displayed. Legitimate in mixed Arabic/Hebrew and English text, but also used in "Trojan Source" attacks to disguise code and URLs. Safe Clean never deletes them silently, it flags them.
Variation selectors
Invisible style switches, for example the one that turns ❤ into ❤️. Removing them changes how characters render, so they are always kept.
Tag characters
Invisible codes only legitimately used inside a few flag emoji (🏴󠁧󠁢󠁥󠁮󠁧󠁿). Anywhere else they can hide invisible data inside text, so stray ones are removed in both modes.
Styled and fullwidth letters
Characters like 𝗯𝗼𝗹𝗱, 𝑖𝑡𝑎𝑙𝑖𝑐 or WIDE look like English letters but are different characters underneath, so they break search, spell-check, screen readers and code, and are used to slip past word filters. This tool detects them, and can optionally fold them back to plain letters.
Stacked accents (Zalgo)
Piling many combining marks on one letter (h̸̢̛e̵l̶l̷o̴) is a visual-noise trick, not English spelling. The optional cleaner keeps up to two marks per letter, so café and naïve are always safe, and removes the excess.

Claude, ChatGPT & Gemini watermarks: what a text cleaner can and can't do

There is a lot of confusion around AI text watermarks, and a lot of sites selling “Claude watermark removers”. Here are the straight answers.

Can a tool remove the Claude AI text watermark?

No. Claude's watermark, announced by Anthropic in August 2026, is a statistical pattern in which words the model chooses. Nothing is added to the text and there are no hidden characters. Because the watermark isn't made of characters, no character-level cleaner, including this one, and every site calling itself a “Claude watermark remover”, can detect or remove it. Tools claiming otherwise are removing ordinary Unicode and mislabelling it.

Are em dashes and curly quotes a sign of AI writing?

They are a stylistic hint at best, never proof, and they are not watermarks. Em dashes, curly quotes and ellipses are ordinary editorial punctuation used by publishers, word processors and plenty of human writers; chatbots simply use them often, which is why people notice them in AI drafts. Style-based signals like heavy em-dash use, very uniform section structure or exhaustive “complete guide” coverage can suggest AI involvement, but they are frequently wrong, and detectors built on them misjudge non-native English writing especially often. What this tool tells you instead is factual: exactly which of these characters are present, where they are, and what changes when you convert them. That is useful for making text paste-ready, not for judging who wrote it.

Is this an AI text detector in the usual sense?

No. AI text detectors and AI checkers try to guess whether a human or a model wrote something by analysing writing style and statistics, and they are often wrong, especially for non-native English writers. This tool answers a different question, with certainty: what characters are actually in this text? If you want to check text for AI authorship, no character-level tool, free or paid, can tell you that, and hidden characters are not how modern AI text detection works. The same logic applies to “AI text removers”: you can remove AI formatting from text (Markdown marks, smart punctuation, hidden characters), which this tool does with a full audit trail, but you cannot remove the AI from the words themselves without rewriting them. Treat any detector's verdict as a signal, not proof.

Is there a real “Claude watermark remover”?

Not in the sense those sites mean. Tools ranking for “Claude watermark remover” strip zero-width characters and em dashes, which this tool also does, with an itemised audit trail, but none of them, and no tool anywhere, can remove Claude's actual watermark, because it lives in the model's word choices rather than in any character. A quick way to judge such a tool: an honest one shows you exactly what it removed and where, tells you that statistical watermarks are not characters, and never promises “undetectable” text.

What is the Claude text watermark, exactly?

A keyed statistical bias in word selection during generation. Each individual word choice looks completely normal; across enough text, the choices form a pattern that Anthropic, which holds the detection key, can check for. It isn't visible, it isn't metadata, and it isn't hidden Unicode.

Do ChatGPT or Gemini hide watermark characters in their text?

No. Gemini uses Google's SynthID-Text, the same statistical word-choice approach, with no hidden characters. Mainstream chatbots do not embed invisible Unicode watermarks in their answers: when we inspected real output from ChatGPT, Claude, Gemini and Perplexity, the only non-keyboard characters present were normal typography such as em dashes and curly quotes.

Can I just copy the text into Notepad or retype it to strip the watermark?

No. Because the watermark lives in word choices rather than characters, it survives copy-paste, moving between apps, and even retyping the text by hand. Pasting Claude's output into the cleaner above will show you it contains no hidden characters, but the statistical pattern is untouched, that's a different layer no character tool operates on.

Do the "rewrite" and "translate" methods actually remove it?

Partially, and at a cost. Anthropic itself notes that heavy editing, paraphrasing or translation can leave too little signal to detect, and that very short passages (roughly under 150 words) may not carry a reliable signal to begin with. But rewriting through another model or a translation round-trip degrades the writing and simply swaps one model's fingerprint for another's, and no third party can actually confirm removal, because Anthropic hasn't released its detector. A full manual rewrite works, but at that point the text is genuinely your own writing. This tool does none of this: it does not rewrite your words.

Is removing an AI watermark even allowed?

It depends who you are and whose content it is. The EU AI Act specifically prohibits deployers from removing or altering provider-embedded watermarks on content shown to others, and disclosure duties (for example around AI use in academic or public-interest work) still apply regardless of any cleanup. This is general information, not legal advice. This is a Unicode hygiene tool for content you own, it removes copy-paste artefacts and is not designed or marketed as a watermark-circumvention tool.

So what can be cleaned from AI-generated text?

The real, removable artefacts: invisible Unicode picked up in copy-paste (zero-width spaces, soft hyphens, non-breaking spaces), Windows line endings, smart quotes, em/en dashes, ellipses and Markdown leftovers such as # headings and **bold** markers. This tool finds and converts all of these, with an itemised audit trail, which is what makes AI text paste-ready for code, CMSs, email and documents.

How do I check whether my text contains hidden characters?

Paste it into the cleaner at the top of this page. It inspects every character locally in your browser and reports exactly what it found, with line:column positions, including a clear “text looks clean” verdict when nothing is hidden. Nothing you paste is uploaded, so it's safe for unpublished and confidential work.

Why did watermarking start in August 2026?

The EU AI Act's transparency rules (Article 50) became enforceable on 2 August 2026, requiring providers to mark AI-generated audio, image, video and text in a machine-readable way, with fines up to 3% of global turnover. Systems already on the market have until 2 December 2026 to comply. Anthropic added marking to Claude to meet these rules; Google's Gemini already used SynthID, and other providers are following.

There are three different “watermark” layers, which does this tool handle?

It helps to separate them. (1) Invisible Unicode, zero-width, bidi and exotic-space characters that copy-paste can introduce. This tool inspects and cleans these, and you can verify the result by re-scanning. (2) The model-level statistical mark: Claude's actual watermark, embedded in word choices. No character tool can touch it; only rewriting the prose through a different model disturbs it. (3) File metadata (C2PA), signed provenance in image and document files, which is a separate job from text cleaning. This tool does Layer 1, verifiably, and is honest that it does not do Layers 2 or 3.

Can any tool make AI text undetectable or human-written?

No, and be wary of any tool that promises this. Anthropic itself notes that heavy editing, paraphrasing or translation may leave too little signal to detect, but no third party can certify removal while the detector is unreleased. Just as important: a detected mark only indicates Claude likely processed the text (even light proofreading counts); it is not proof of authorship, and detectors carry a real false-positive risk, especially for non-native English writers. Stripping characters changes none of that.

Does Claude watermark code?

Anthropic's marking covers all Claude text output, but code carries far less signal: rigid syntax and a small vocabulary leave few places to embed a statistical pattern. The clearer tells in AI code have always been style, naming, comments, structure. For code specifically, the most valuable thing this tool does is deterministic: stripping invisible characters and bidirectional “Trojan Source” controls that can hide malicious behaviour in a fluent-looking diff.

This is a formatting and Unicode inspection utility designed for English text (any region or spelling convention). Non-Latin scripts are detected and treated conservatively rather than cleaned. It does not rewrite sentence structure or claim to alter authorship, provenance or AI-detection signals.