Text watermark checker

Invisible character detector and Unicode cleaner

An invisible character detector scans pasted text for supported Unicode code points that may not appear on screen. Watermark Tidy reports each type, count, and position before creating a cleaned copy from character types you explicitly select. The check is free, requires no account, and runs in your browser.

Open the private text checker

What the detector finds

The checker reads Unicode code points rather than guessing from how text looks. It reports exact matches and their positions so you can review them before removal.

CategoryExamplesWhy it may be present
Zero-width charactersU+200B, U+2060Line breaking, copy residue, or hidden markers
Joiners and direction controlsU+200C, U+200D, bidi controlsLegitimate scripts, emoji, or text direction
Unicode tag charactersU+E0000–U+E007FMachine-readable tags or intentional encoding
Variation selectorsU+FE00–U+FE0F and supplementary selectorsGlyph variants or encoded byte payloads
Unusual spacesNon-breaking and thin spacesTypography, formatting, or copied documents
Mixed-script lookalikesGreek or Cyrillic letters inside a Latin tokenNames, multilingual text, or deceptive substitutions

How to find and remove invisible characters

  1. Paste the text. The original remains in the input field and is not uploaded.
  2. Run the check. Review character names, Unicode code points, counts, and positions.
  3. Select supported matches. Nothing is selected by default; choose only character types you have reviewed.
  4. Create a cleaned copy. The tool changes only the selected supported matches and checks the copy again.
  5. Copy or download. Keep the original available until you confirm the cleaned text still reads correctly.

Hidden Unicode is not the same as a statistical AI watermark

A Unicode checker can prove that a particular code point is present. It cannot prove that ChatGPT, Claude, Gemini, or another model added it. Editors, websites, messaging apps, and document converters can insert the same characters.

Statistical systems such as SynthID-Text operate through patterns in token selection, not a fixed invisible character. A provider verdict requires its matching detector profile and calibration. Removing Unicode characters alone does not remove or disprove a statistical watermark. This checker runs a separate local SynthID Text reference analysis while keeping Claude attribution unavailable until Anthropic publishes compatible parameters.

Read the guide to ChatGPT hidden characters and text watermarks.

Read what a Claude watermark remover can and cannot check.

Invisible character detector FAQ

What is an invisible character detector?

It scans text code point by code point and reports supported Unicode characters that may not render visibly. This tool shows their names, hexadecimal code points, counts, and positions.

Can hidden Unicode prove that text came from ChatGPT?

No. The same characters can come from formatting, editors, websites, languages, or manual input. A match cannot establish origin or authorship.

Will cleaning change visible text?

It can. Joiners, variation selectors, direction controls, and spaces may affect appearance or meaning. The tool keeps the original, shows findings first, and creates a separate cleaned copy.

Does it remove em dashes or rewrite wording?

No. Visible punctuation and wording are not hidden Unicode watermarks. The cleaner does not paraphrase, humanize, or rewrite text.

Is pasted text sent to a server?

No. The application disables form submission, browser spellcheck, storage, and analytics. Text scanning runs locally; same-origin C2PA verifier assets are loaded only when an embedded image credential is checked.

Sources: Unicode Standard, Chapter 23 and Google DeepMind SynthID. Last reviewed August 13, 2026.