Zero Width Stego
Free online zero width stego tool, no installation required
About Zero-Width Steganography
Hides a secret message inside ordinary-looking text by encoding it as invisible zero-width Unicode characters. Each bit of the UTF-8-encoded secret becomes either a Zero Width Space (U+200B) for 0 or a Zero Width Non-Joiner (U+200C) for 1, and a Zero Width Joiner (U+200D) separates bytes. The hidden payload is inserted right after the first character of the carrier text.
How to Use
1. Switch between the Hide and Reveal tabs. 2. In Hide mode, type your secret message and your carrier text (the visible cover message). The default carrier is a pangram; you can edit it. 3. Click Hide; the result looks identical to the carrier but contains the invisible payload. Copy it and paste it anywhere text is preserved. 4. In Reveal mode, paste the text that contains the hidden payload and click Reveal. The decoded secret is shown, or a toast warns you if nothing was found.
Encoding Format
The message is UTF-8 encoded into bytes; each byte becomes 8 bits; each 0 bit is U+200B (zero width space) and each 1 bit is U+200C (zero width non-joiner); a U+200D (zero width joiner) is appended after each byte as a separator. The decoder walks every character of the input, accumulates bits for the two zero-width bit characters, and flushes a byte whenever it hits a joiner or after 8 bits accumulate. The carrier text is split at index 1 and the payload is spliced in between, so the first visible character remains unchanged.
▶Will the hidden text survive copy and paste?
▶How is this different from the image steganography tool?
▶Why does reveal say "no hidden message found"?
▶Is the hidden message encrypted?
If this tool has been helpful to you, consider buying me a coffee.
Buy me a coffee