Text utility

Invisible Character Detector

Paste text to inspect supported invisible and spacing characters. Choose which characters to remove or replace, then check a separate preview before copying.

0 / 4,000 units

Counts use UTF-16 code units. Most letters use one; 👩🏽‍💻 uses 7.

Try a sample

Inline findings

Paste text to inspect it.

Each marker shows a zero-based UTF-16 offset in the source.

Findings

Choose what to change. Everything starts at Keep.

Paste your text or try a sample to see the findings here.

Not generated
Your source stays unchanged.

How to use the detector

  1. Paste or type up to 4,000 UTF-16 code units. Longer input stays visible and can still be copied as the original.
  2. Review the inline markers and the findings list. Every action starts at Keep.
  3. Choose Remove, or Replace with normal space for a non-ASCII space separator. Each choice applies to every occurrence of that code point.
  4. Choose Make preview to inspect a separate result. The source stays unchanged.

What it can flag

The detector checks these groups of code points:

  • Default-ignorable Unicode format characters.
  • Non-ASCII space separators.
  • Line and paragraph separators.
  • Control characters other than tab, line feed and carriage return.
  • Five named blank/filler code points:
    • U+115F HANGUL CHOSEONG FILLER
    • U+1160 HANGUL JUNGSEONG FILLER
    • U+2800 BRAILLE PATTERN BLANK
    • U+3164 HANGUL FILLER
    • U+FFA0 HALFWIDTH HANGUL FILLER

This list is not exhaustive. Some supported characters are needed for writing, text direction or emoji, so review each choice in context.

Examples

  1. Replace a special space and remove a zero-width space

    Input (code points shown in brackets): Paste[U+00A0 NO-BREAK SPACE]link:[U+200B ZERO WIDTH SPACE]https://example.com

    Choices: Replace U+00A0 with U+0020 SPACE and remove U+200B.

    Preview: Paste link:https://example.com

  2. Keep joiners by default

    Input (code points shown in brackets): می[U+200C ZERO WIDTH NON-JOINER]روم 👩🏽[U+200D ZERO WIDTH JOINER]💻

    Choices: Choose no actions. The preview is unchanged.

    Preview: می‌روم 👩🏽‍💻

  3. Remove bidi controls only when selected

    Input (code points shown in brackets): Report[U+202E RIGHT-TO-LEFT OVERRIDE]cod.exe[U+202C POP DIRECTIONAL FORMATTING].pdf

    Displays as: Report‮cod.exe‬.pdf

    Choices: Remove U+202E and U+202C.

    Preview: Reportcod.exe.pdf

Privacy

Processing runs in your browser. The text you enter is not sent to Gate2Home's servers.

Limits

This version supports up to 4,000 UTF-16 code units and does not read files. Above the limit, the source stays available but inspection and transformed previews are unavailable until you shorten it.

The counter uses UTF-16 code units. Most letters use one; the emoji sequence 👩🏽‍💻 uses 7.

Questions

Does it change text automatically?

No. Every code point starts at Keep. The source stays unchanged throughout; you choose actions, make a preview and decide whether to copy it.

Are these characters always unwanted?

No. Joiners, direction marks and other characters can be important in languages and emoji. Review each choice in context. This page is not a security filter or filename sanitizer.

Can I upload a file?

No. The detector works with text you paste or type; it does not read files.