Invisible character generator

Some characters take no visible space at all and some look like a blank. Copy one with a click, or choose a character and a count to make a longer run, and see the kind of character each one is and whether JavaScript's trim() removes it.

  • U+200BZERO WIDTH SPACE

    Zero width, invisible. Allows a line break at its position. The most common choice for hidden separators.

    Unicode category: Cf · Removed by trim(): no

  • U+200CZERO WIDTH NON-JOINER

    Zero width. Stops two letters from joining; needed in the spelling of some Persian and Indic words.

    Unicode category: Cf · Removed by trim(): no

  • U+200DZERO WIDTH JOINER

    Zero width. Joins neighbouring characters; holds emoji sequences like family or profession emoji together.

    Unicode category: Cf · Removed by trim(): no

  • U+2060WORD JOINER

    Zero width, invisible. Stops a line break at its position.

    Unicode category: Cf · Removed by trim(): no

  • U+3164HANGUL FILLER

    Looks like an empty, wide blank. It is classed as a letter, not as white space.

    Unicode category: Lo · Removed by trim(): no

  • U+2800BRAILLE PATTERN BLANK

    A Braille cell with no dots. Looks like a blank; classed as a symbol, not as white space.

    Unicode category: So · Removed by trim(): no

  • U+00A0NO-BREAK SPACE

    Looks like a normal space but never breaks the line. The white space trimmed by most programs.

    Unicode category: Zs · Removed by trim(): yes

  • U+180EMONGOLIAN VOWEL SEPARATORDeprecated

    Once classed as a space, now a format character. Not a safe blank on current systems.

    Unicode category: Cf · Removed by trim(): no

Characters generated: 10. Paste them where you need them; they will look empty.

Runs in your browser: nothing you enter is sent anywhere.

How to use it

  1. Press Copy character on the card for the character you want.
  2. For a run of them, choose the character, enter how many and press Copy.
  3. Paste where you need it. The result looks empty, so keep this page open if you need to tell which one you used.

How it works

Each card shows the code point, the Unicode name, the character’s general category and whether JavaScript’s trim() removes it. The last two are worked out in your browser by testing the character itself, not typed in by hand. Generated text is the chosen character repeated, from 1 up to 1,000 times.

Worked example

Choose U+200B and enter 5. The generated text has five zero-width spaces and a length of 5, yet nothing visible. Paste it into a text field with a character counter and the counter shows 5.

Tips

To find and remove hidden characters from text you received, use the text cleaner. If two texts look the same but do not match, a hidden character is a likely reason; the Unicode lookup tool can name it.

Frequently asked questions

Which invisible character should I use?

For a truly empty-looking result with no width, use U+200B or U+2060. For a blank that has width and is not white space, try U+3164 or U+2800. For a blank that behaves like a space, use U+00A0. Websites treat each one differently, so test it in the place you need it.

Why do some sites reject these characters?

Many forms trim white space, which removes the no-break space but not the others, and many filters reject Unicode format characters (category Cf), which covers U+200B, U+200C, U+200D, U+2060 and U+180E. Letters and symbols such as U+3164 and U+2800 pass those checks, so some sites add specific rules against them. Rules vary and change, and this page does not list sites.

Why is U+180E marked as deprecated?

The Mongolian vowel separator was a space character until Unicode 6.3, which changed it to a format character, and its use as a blank is discouraged. Software that follows the current standard does not treat it as white space, so it may show up as a box or be stripped.

Can invisible characters be detected?

Yes. A text cleaner or a Unicode lookup tool will show them, and the character counter counts them. Hidden characters can also cause bugs, such as an e-mail address that looks right but fails.

Is it a good idea to use invisible characters in names?

Take care. Many services forbid blank or look-alike names, and a blank name makes it hard for others to know who you are. Use them only where it is allowed and harmless.

More in Text

All tools in this category: Text ·Updated November 3, 2026

Privacy choices

Google Analytics shows us which tools are used and whether they work. It may set cookies. Your choice is kept in this browser.