Is my text watermarked?
This tool finds hidden characters in text — zero-width characters, unusual spaces, and letters from other alphabets that look like Latin ones. It runs entirely in your browser; nothing is uploaded. It cannot tell you whether text carries Claude's watermark, because that mark is a statistical pattern in word choice rather than an added character. Only Anthropic can check for it, through a detection API that has been in private preview since 1 September 2026 for organisations that EU law obliges to verify marking[1]. No public tool can tell you that either[1].
Check an image for Content Credentials
Claude attaches signed C2PA provenance metadata to the .svg,
.png and .jpg files it generates[1][10]. This
checks whether a file carries such a manifest. The file is read locally and not
uploaded.
What the scanner looks for
| Codepoint | Name | Notes |
|---|---|---|
U+200B | Zero-width space | Invisible. A genuine hiding place for markers. |
U+200C | Zero-width non-joiner | Invisible. Legitimate in Persian, Arabic and Indic scripts. |
U+200D | Zero-width joiner | Invisible. Legitimate inside emoji sequences. |
U+FEFF | Zero-width no-break space / BOM | Invisible. Often a file-encoding artefact. |
U+00AD | Soft hyphen | Invisible unless the line wraps. |
U+2060 | Word joiner | Invisible. |
U+180E | Mongolian vowel separator | Invisible. Almost never legitimate in English. |
U+00A0 | Non-breaking space | Looks like a space. Common from word processors. |
U+2007 | Figure space | Looks like a space. |
U+2008 | Punctuation space | Looks like a space. |
U+2009 | Thin space | Looks like a narrow space. |
U+202F | Narrow no-break space | Looks like a narrow space. |
U+2028 | Line separator | Invisible line break. |
U+2029 | Paragraph separator | Invisible paragraph break. |
Plus Cyrillic and Greek letters that render identically to Latin ones — а, е, о, р, с and their capitals. These are how some systems hide markers in plain sight. They are also completely normal in genuinely multilingual text, so a hit is a question rather than a verdict.
How to read a clean result
A clean result means no hidden characters. It does not mean the text was written by a human, and it does not mean the text is unmarked. Claude's watermark lives in the word choices themselves[1], and Google's SynthID Text works the same way, by adjusting token probability scores[3]. Neither leaves a character you can find, and only Google has published a working detector[4].
If you are here because you were accused of something, the page on false accusations will help more than this tool will.
Sources
- How Claude marks AI-generated content primary
- SynthID primary
- google-deepmind/synthid-text primary
- How Claude's text watermark works primary
Last verified against primary sources: