Back to Tools

Zero Width Text Generator

Hide secret messages inside normal-looking text using invisible zero-width characters

Conceal a message inside normal-looking text

Text steganography hides one message inside another. This generator attaches your secret to a visible sentence using characters that display as nothing. The result looks identical to the cover text you typed, but it carries a hidden payload that the Zero Width Text Decoder can read back.

Creating hidden text

  1. Type the sentence that people will see in Visible Text (The Cover). If you leave it empty, the tool uses the words Hidden Message.
  2. Enter the message you want to conceal in Secret Message (To be hidden). Nothing is generated if this box is empty.
  3. Click Generate Hidden Text.
  4. Press Copy Hidden Text and paste it wherever you want to place it.

Changing either box hides the previous output so you do not copy an outdated version.

How the encoding works

Each character of the secret is converted to its numeric code and written as binary, padded to at least eight digits. A zero bit becomes a zero width space, a one bit becomes a zero width non-joiner, and a zero width joiner separates one letter from the next. The whole invisible string is placed after the end of the cover text. Every hidden letter therefore costs roughly nine invisible characters, so a long secret produces a long, though still invisible, tail.

Where it fits

  • Adding a hidden marker to your own text so you can later tell whether a copy came from you.
  • Puzzle hunts, escape rooms and classroom demonstrations of steganography.
  • Embedding a short note in a caption or bio as a playful easter egg for friends who know how to decode it.
  • Testing how a form or app deals with invisible Unicode.

What to expect

  • The hidden data is fragile. Many platforms remove zero-width characters when you post, copy or sanitize text, and the secret disappears with them.
  • It is obscured, not encrypted. Anyone who knows the scheme, or uses a decoder, can read it. Do not hide passwords or private information this way.
  • Text editors that show invisible characters, or a character counter, will reveal that something extra is present because the length grows.
  • Non-Latin letters and emoji have larger character codes and produce longer hidden strings.
  • Do not use it to deceive people or evade rules on a site.

Generation runs entirely in JavaScript inside the page.

Related Articles


Related Tools





Re



Frequently Asked Questions

Can other people see the hidden message?
Not by simply reading the text, since the characters are invisible. But it is not encrypted: a decoder such as the Zero Width Text Decoder, or a text editor showing hidden characters, can expose it to anyone who has the text.
Where is the secret placed?
It is appended to the end of the visible cover text. The output is the cover text followed by the string of invisible characters, so keep the whole copied string and do not trim the end.
Why did the message vanish after I posted it?
Many services strip or normalize zero-width characters. If the platform removed them, the hidden data is lost. Test by pasting the posted text back into the decoder before relying on it.
How long can the secret be?
The tool sets no limit, but each secret character becomes about nine invisible characters, so long secrets make long output. Platforms with character limits count these invisible characters, which can block posting.
Does the cover text change?
No, the visible words stay exactly as typed. Only an invisible string is added after them. If the cover box is empty, the tool uses the text Hidden Message as the cover.
Support Chat
We typically reply within minutes

Hello! 👋 Before we start, please tell us your name.