gptcleanuppro.com / gemini-invisible-character-detector
Ready · server0w
codepoints in the scan
14
checks per 24 hours
5
character ceiling
12,000

Gemini character detector

What this Gemini invisible character detector reports

Paste a passage taken from Gemini, or from a Google Doc or Gmail draft it contributed to, and this route reports the zero-width and non-printing Unicode present in it. The text is read, not rewritten, and the output is a description of observable signals rather than a verdict about anything.

The operational facts, since they constrain what the page can honestly claim: this is a server route. Text is posted to our AI server, the allowance is 5 runs per rolling 24 hours, and input is bounded at 1 to 12,000 characters. None of that is a browser operation, so nothing on this page claims local processing.

The category error

Gemini's text watermark and invisible characters are different layers

Most of the confusion around this query is a layer confusion. Google's published approach to text watermarking operates on token selection: as the model generates, candidate tokens are scored against context-derived keys, producing a statistical pattern detectable across a passage. The carrier is the word sequence.

An invisible character is a carrier at the byte level. The two do not overlap. A character detector has no visibility into token-selection statistics, and a character remover changes nothing about them, because deleting a zero-width space does not alter which words were chosen. Any page that advertises character stripping as Gemini watermark removal has collapsed two layers into one, and the resulting claim is false regardless of how well the stripper works.

The procedure

How to check Gemini text for invisible characters in three steps

Short procedure, with the reason for each step stated, because the reasons are where the errors are.

Step 1
Paste as plain text where the option exists. Pasting rich text wraps the content in formatting and changes what you are actually examining.
Step 2
Run the check and read the findings as evidence about a copy path, not about authorship. The distinction matters for what you conclude next.
Step 3
Treat removal as a separate decision. This route reports. The deterministic cleaner on this network's watermark routes removes, and it runs in the browser rather than on a server.

Stated coverage

The fourteen codepoints covered, and the ones that are not

Coverage is a finite, checkable list, so it is published rather than implied.

Zero-width and joiners
U+200B, U+200C, U+200D, U+2060, U+FEFF. Width zero, non-empty in a byte comparison, which is precisely why equality checks fail on strings that render identically.
Space lookalikes
U+00A0, U+202F, U+200A. Distinct codepoints that render close enough to U+0020 that visual inspection cannot separate them. Cleaning substitutes an ordinary space.
Soft hyphen
U+00AD. Conditionally rendered: invisible until a line break falls inside the word, then a hyphen appears that was never authored.
Directional controls
U+202A, U+202B, U+202C, U+202D, U+202E. Embeddings, overrides and the terminating pop. An unbalanced one changes display order without changing the underlying sequence.
Explicitly not covered
U+200E, U+200F, U+061C, U+2028, U+2029, U+034F, U+FE00 to U+FE0F, U+2061 to U+2064, U+2066 to U+2069. Competing pages list these. The engine here does not implement them, so a clean result says nothing about them.

Mechanism

Why the characters appear in Gemini output at all

The deliberate-watermark hypothesis is the popular explanation and the weaker one. A marking scheme that survives a copy-paste would also have to survive a text editor's save, which these characters routinely do not, and it would be a strange design to hide a watermark in a carrier that any cleaner strips in one pass. The likelier account is that the training distribution contains them. A model has no keyboard, so no physical constraint filters out characters a person would never produce.

The second source is the rendering path, and it is empirically separable from the first. Chat interfaces emit HTML, and a copy operation from HTML carries whatever the layout used, commonly a no-break space or a hair space adjacent to punctuation. Google Docs and Gmail behave the same way. The diagnostic is repetition: the same character in the same position across every paste from one source indicates the path, not the model.

Consequences

What invisible characters in Gemini text actually break

Everything that depends on byte equality while the human depends on appearance. Phrase search misses, find-and-replace skips rows, version control reports a diff on a line that looks unchanged, slug generation produces a URL containing a character no editor can select. The cost is not the bug, it is the time spent looking at two identical-seeming strings.

The security case is narrower and more serious. A zero-width carrier can hold arbitrary content inside a sentence that reads normally, which has been used to conceal payloads and to embed instructions intended for a model that later processes the document. Where untrusted text enters a system that acts on it, inspection is a control rather than a nicety.

Straight answer

Does a detected character prove Gemini authorship?

No, and the inference fails in both directions. The presence of U+00A0 establishes that the text passed through a rendered surface, which describes Gemini, a news site, a PDF reader and a word processor equally well. Absence establishes even less, since a clean paste is trivially achievable. Treat the finding as evidence about transport, not about origin.

Nor does removal move a passage past a detector. Detection operates on lexical and structural statistics, which is the same layer the token-selection watermark occupies and a different layer from the one this page inspects. This route reports observable signals, makes no authorship claim, and predicts no third-party verdict.

Who uses it

Who runs an invisible character check on Gemini text

Three usage patterns, distinguished by what failure they are trying to avoid.

Editorial and publishing
Inspecting a draft assembled from mixed sources before it reaches a CMS, where a hidden character becomes a permanent slug defect.
Engineering
Diagnosing a failed equality check or a rejected config value before rewriting the parser that was behaving correctly all along.
Intake and submission
Portals that reject input without diagnostics. A stray control character is a frequent cause and an invisible one.
FAQ

Questions about detecting invisible characters in Gemini text

All answered in full, nothing to click open.

How do I detect invisible characters in Gemini text?

Paste the passage above and run the check. The output describes what is present without altering the text.

Is this invisible character detector free?

Yes, within an allowance of 5 runs per rolling 24 hours, with no account required.

Is my text sent to a server?

Yes. This is a server route, so the text is posted to our AI server to be read.

What is the input limit?

Between 1 and 12,000 characters per run. Longer documents are checked in sections.

How many codepoints does the scan cover?

Fourteen, published in full on this page: five zero-width and joiner characters, three space lookalikes, the soft hyphen and five directional controls.

Which codepoints are excluded?

U+200E, U+200F, U+061C, U+2028, U+2029, U+034F, the variation selectors, the invisible operators and the directional isolates.

Why publish the exclusions?

Because a coverage claim that cannot be checked is worthless. A clean result means clean against fourteen codepoints, not against Unicode.

Does Gemini watermark its text?

Google's approach biases token selection during generation, producing a statistical pattern in the word sequence rather than a hidden character.

Can a character detector see that watermark?

No. It operates on a different layer. Byte-level inspection has no view of token-selection statistics.

Can stripping characters remove it?

No. Deleting a zero-width space changes no word choice, and the word choices are the carrier.

Does this route remove what it finds?

No. It reports. The deterministic cleaner on this network's watermark routes performs removal, in the browser.

Will removal change the rendered text?

Only where a no-break space is replaced by an ordinary space, which can change where a line wraps.

Does it work on Google Docs and Gmail content?

Yes. Any text that can be pasted can be inspected, regardless of which Google surface produced it.

Does it work on output from other models?

Yes. The codepoints are model-independent.

Does a finding prove AI authorship?

No. It establishes that the text crossed a rendered surface, which is true of a great deal of human writing as well.

Will cleaning help text pass an AI detector?

No, and no verdict from any third-party checker is predicted here. Detection reads lexical and structural statistics.

Why do these characters break code?

Because equality is evaluated over bytes while review is performed by eye. Two strings that render identically are unequal if one carries a hidden codepoint.

Can invisible characters carry hidden content?

Yes. Zero-width carriers can hold arbitrary content inside an ordinary sentence, including instructions aimed at a model processing the document later.

Does it work on mobile?

Yes. The paste box and the check run in a mobile browser.

Is there an API or batch mode?

No. One paste per run, within the stated allowance.

Is this affiliated with Google?

No. This is an independent page, not made by, endorsed by or connected to Google or Gemini.

Inspect the bytes, not the rendering.

Paste a passage above for a report against fourteen published codepoints, with the exclusions and the server limits stated rather than implied.

Check the text