How the check works
Updated 2026-11-03
Remove AI Traces (removeaitraces.com) is a browser-based scanner and remover of hidden AI traces in text and documents. This page explains exactly what it counts and what it doesn’t.
The rule: only what is really there
Every number on screen comes from characters or fragments that exist in your text. A clean text gets “No AI traces found” and no offer. The scanner never estimates who wrote the text and never reports a probability.
What counts as a trace
| Group | What is found | Free or Pro removal |
|---|---|---|
| Invisible characters | Script-assembly traces, AI clipboard markers, machine spacing matrix, direction marks, hidden Unicode tags, variation selectors, hidden layout commands, hidden line breaks | Free |
| Shadow watermarks | Zero-width characters: U+200B, U+2060, U+180E | Pro |
| Markdown | Bold markers, # headings, code fences, table rules | Free in text, Pro in documents |
| Link tracking tags | utm_source= with chatgpt.com, openai, perplexity, copilot, gemini, claude and similar values | Pro |
| Citation artifacts | oaicite references, 【…†source】 markers, cite markers from Unicode private use, data-start/data-end attributes | Pro |
| Typography | LLM syntax signature (em dashes), training-dataset artifacts (other dashes), regional token conflict (quotes and apostrophes), compressed monolithic tokens (the ellipsis character) — judged by the language’s norms | Pro |
| Unicode spoofing and glyph swaps | Cyrillic or Greek letters inside a Latin word | Pro |
| Document metadata | Authors, software, edit history, description fields, AI tool marks in .docx properties | Pro |
Characters that are left alone
Some invisible characters are correct and needed, so they are not findings:
- joiners inside emoji sequences, flag tags and keycaps;
- zero-width non-joiners in Persian, Arabic and Indic scripts;
- direction marks in right-to-left text (overrides are still reported);
- a narrow no-break space before
; : ! ?and inside « » in French; - no-break spaces between digits as a thousands separator;
- ideographic spaces in Chinese and Japanese text.
Language norms
Typography is judged by the rules of the text’s language, detected automatically or chosen by you.
| Language | Em dash | Quotes |
|---|---|---|
| English | A dash between words without spaces is a finding; you choose comma, spaced en dash, hyphen or keep | “ ” are correct |
| Russian, Ukrainian | The dash is standard; only spacing around it is fixed | « » |
| French | The dash is standard; only spacing is fixed | « » with no-break spaces |
| German, Polish, Italian | Replaced with a spaced en dash by default | „ “ for German, „ ” for Polish, « » for Italian |
| Spanish | The attached raya is standard and not reported | « » |
Trace level
The level depends on how many traces there are per 1,000 characters (texts shorter than 200 characters count as 200):
- Low — under 2 per 1,000 characters;
- Medium — from 2 per 1,000 characters;
- High — from 6 per 1,000 characters, 25 traces or more, or any hidden Unicode tags.
After every fix
The result is scanned again with the same rules, and the screen shows the new count. Documents are rebuilt and the rebuilt file is the one that is checked.
What the scanner cannot detect
- Statistical watermarks, such as Google SynthID Text, which live in word choice rather than characters.
- Writing style. The scanner does not rewrite text and does not promise any AI-detector score.
- Official content credentials that providers may attach outside the text itself. Remove AI Traces is not designed to remove provenance labels required by law.
Privacy of the check
The text and files are processed in your browser. The server receives only the number of characters removed for free, to apply the daily limit. Details are in the privacy policy.