Home › Text Tools › Hidden Message Encoder

Hidden Message Encoder

Hide a secret note inside an ordinary sentence. The message is turned into invisible zero-width characters, so the text looks exactly the same, yet anyone who pastes it here can reveal it. Add a passphrase to encrypt the hidden part. Everything runs in your browser.

Last updated:

Zero-width characters survive copy & paste in most chat apps, email and documents, but some sites and SMS strip them. Without a passphrase the message is hidden, not encrypted.

Advertisement
Advertisement

How to use the Hidden Message Encoder

  1. Type the cover text: the normal sentence everyone will see.
  2. Type your secret message and, if you like, a passphrase that the reader will need.
  3. Press Hide message, then copy the result. It looks identical to the cover text.
  4. Send or post the text anywhere that keeps Unicode characters, such as most chat apps, email and documents.
  5. To read it, open Reveal, paste the text, enter the passphrase if one was used and press Reveal message.

How zero-width text steganography works

Steganography hides the fact that a message exists at all, while encryption hides what it says. This encoder uses four Unicode characters that take up no space and draw nothing on screen:

CharacterCode pointBit pair
Zero-width spaceU+200B00
Zero-width non-joinerU+200C01
Zero-width joinerU+200D10
Word joinerU+206011

Your message is converted to UTF-8 bytes. Each byte is split into four 2-bit pairs, and each pair becomes one invisible character, so one byte costs four characters. A small header (marker byte, flags and length) and a Fletcher-16 checksum are added, which lets the decoder find the message reliably and detect damage. The invisible block is then inserted after the first word, spread between words, or appended at the end of the cover text.

Hidden vs. encrypted

  • Without a passphrase the message is only concealed. Anyone who pastes the text into a zero-width decoder can read it.
  • With a passphrase the hidden bytes are encrypted with AES-256-GCM before they are turned into invisible characters. The key is derived with PBKDF2-SHA256 (150,000 iterations) and a random 16-byte salt; a random 12-byte IV is used each time. A wrong passphrase or any change to the data is detected.
  • Encryption adds 44 bytes (salt, IV and authentication tag), which is 176 extra invisible characters.

Tips for reliable hidden messages

  • Test the platform first: send the text to yourself, copy it back and paste it into the Reveal tab.
  • Ask the reader to copy the whole text. With Spread between words, copying only part of the sentence loses part of the message.
  • Keep secrets short. Length limits (for example in social media bios or SMS) count invisible characters too.
  • Use the Reveal tab's Remove hidden characters button to clean text you received before reusing it, for example in code, file names or forms where invisible characters cause errors.

Frequently asked questions

How can a message be hidden in plain text?

Unicode contains characters that have no width and draw nothing, such as the zero-width space (U+200B), zero-width non-joiner (U+200C), zero-width joiner (U+200D) and word joiner (U+2060). This tool converts your message to bytes and writes each byte as four of these invisible characters (two bits each), then inserts them into the cover text. The text looks the same but carries extra data.

Is the hidden message secure?

Without a passphrase it is only hidden, not encrypted: anyone who suspects it and uses a zero-width decoder can read it. With a passphrase the hidden bytes are encrypted with AES-256-GCM using a key derived from the passphrase with PBKDF2-SHA256 (150,000 iterations), so only someone with the passphrase can read it.

Where does the hidden message survive?

It survives copy and paste in most places that keep Unicode text exactly, for example many chat apps, email, word processors, notes apps and plain .txt files. Some websites, social networks, SMS gateways and text cleaners strip zero-width characters or limit length, which destroys the message. Test with the Reveal tab before relying on a platform.

Why does the text show more characters than I can see?

Each byte of the secret becomes four invisible characters, so a 40-character message adds about 170 invisible characters (plus about 180 more when a passphrase is used). Character counters and length limits count them, even though nothing is shown.

Can I find hidden characters in a text I received?

Yes. Paste it into the Reveal tab. The tool decodes messages made with this encoder and also reports any other invisible characters it finds, such as zero-width spaces, joiners or byte order marks, and can remove them all.

Is my text sent anywhere?

No. Encoding, encryption and decoding run entirely in your browser with standard JavaScript and the WebCrypto API. Nothing is uploaded or stored.

Why do emoji sometimes contain zero-width joiners?

Many emoji, such as family or profession emoji, are built from several emoji glued together with U+200D zero-width joiners. The decoder ignores these single joiners, so emoji in the cover text do not break the hidden message.

Are all the tools on FreeToolCabin tested for quality and accuracy?

Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.

Related tools

Invisible CharacterCopy blank and invisible characters (ㅤ U+3164, U+2800, zero width space) for names and messages.Text Encryption ToolEncrypt and decrypt text with a password using AES-256-GCM, entirely in your browser.Unicode Character LookupFind Unicode characters by name or code point and copy them with UTF-8, HTML and code escapes.Character CounterCount characters with and without spaces, words, lines and bytes, with live limit bars.Word CounterCount words and characters and clean up text.Online Word ProcessorFree browser word processor with headings, lists, tables and images. Autosaves; export DOCX or PDF.Grammar CheckerCheck grammar, spelling and punctuation with clickable suggestions and one-click fixes.Word Count to PagesHow many pages is 1,000 words? Estimate pages by font, size, spacing and margins.Remove Line BreaksStrip line breaks and extra spaces, keep paragraphs if you want.Sort Lines AlphabeticallySort a list A-Z, Z-A, numerically, naturally or by length, or shuffle it.Case ConverterConvert text to UPPERCASE, lowercase, Title Case, camelCase and more.Citation GeneratorCreate APA, MLA and Chicago citations for books, websites and articles.MLA Format GeneratorBuild an MLA 9 heading, title page layout and Works Cited entries.Bibliography GeneratorBuild an alphabetized bibliography in APA 7, MLA 9, Chicago or Harvard style.Essay Length & Reading TimeWords to reading time, speaking time and handwritten or typed pages.Lorem Ipsum GeneratorGenerate placeholder text as paragraphs, words or lists, with HTML.Instagram Caption FormatterKeep line breaks and spacing in Instagram captions and bios.Instagram Bio GeneratorCreate Instagram bios with templates, fancy fonts and emojis.X Post Character CounterCount X (Twitter) post characters and split long text into a thread.TikTok Caption CounterCount TikTok caption characters and hashtags against the 2,200 limit.Speech Length CalculatorPaste a speech to see how long it takes to say at any speaking speed.Text to SpeechTurn text into natural-sounding speech.Fancy Text GeneratorTurn text into cool Unicode fonts for bios.Reverse Text GeneratorWrite text backwards, reverse words or lines, mirror or flip it upside down.Upside Down Text GeneratorFlip text upside down with Unicode characters, or turn it back to normal.Text RepeaterRepeat any text or emoji up to 100,000 times with custom separators.YouTube Title Length CheckerCheck YouTube title length, preview truncation and score it for clicks.YouTube Description & Chapters GeneratorBuild a YouTube description with chapters, links and hashtags from templates.Text CompareFind the differences between two texts.AI Prompt GeneratorBuild better prompts for ChatGPT, Midjourney and more.Email Signature GeneratorBuild HTML email signatures for Gmail and Outlook.Flashcard MakerMake flashcard decks and study them with flip cards and spaced repetition, saved in your browser.Find and Replace TextFind and replace words or regex patterns in any text, with match highlighting and undo.YouTube Tag GeneratorGenerate YouTube tag ideas from your title and keywords and fit them in the 500-character limit.Quiz MakerMake a multiple-choice quiz, take it with instant scoring and share it with a link.Add Line NumbersNumber every line of your text with custom start, step, padding and separator, or remove numbers.Add Prefix and Suffix to LinesAdd text to the start and end of every line: quotes, commas, bullets or SQL lists.Comma SeparatorTurn a column of lines into a comma separated list and back, with any delimiter.METAR DecoderPaste a raw METAR or SPECI weather report and read it in plain English with VFR/IFR category.Simplified to Traditional Chinese ConverterConvert Simplified Chinese to Traditional (Taiwan, Hong Kong) and back, live, in your browser.Ad Copy GeneratorWrite ad headlines and descriptions with AIDA, PAS and FAB formulas and live character counts.Daily Affirmation GeneratorGet random positive affirmations by theme; save favorites, copy them or make an image card.Business Plan GeneratorFill in a guided form and get a formatted business plan with financial tables, as Word or PDF.Cold Email GeneratorWrite AIDA, PAS and short cold emails plus a follow-up, with subject lines and word counts.Elevator Pitch GeneratorBuild 10, 30 and 60-second elevator pitches with word counts and speaking time.Hardship Letter GeneratorWrite a mortgage, loan, rent or credit card hardship letter with your numbers and request.Interview Questions GeneratorGenerate interview questions by role and seniority, with a printable scorecard for interviewers.Interview Thank You Email GeneratorWrite short, medium and formal thank-you emails after a job interview, with subject lines.Job Application Email GeneratorWrite a job application email body and subject line with your highlights and attachments.Job Offer Letter GeneratorWrite a formal employment offer letter with salary, benefits and contingencies, as Word or PDF.Keyword Match Type ConverterTurn a keyword list into broad, "phrase", [exact] and negative match types for PPC ads.LinkedIn Summary GeneratorWrite three first-person LinkedIn About section drafts with a 2,600-character check.Mission Statement GeneratorWrite short, standard and long mission statements from your company, audience and values.Payment Reminder Email GeneratorWrite polite to firm overdue invoice reminders with days overdue, late fees and a send schedule.Performance Review Phrase GeneratorPick competencies and ratings to get review phrases and build a complete performance review.Press Release GeneratorWrite an AP-style press release with headline, dateline, quotes, boilerplate and ### ending.Wedding Hashtag GeneratorTurn your names, date and city into dozens of creative, punny wedding hashtags to shortlist.Wedding Vow GeneratorTurn your names, memories and promises into romantic, funny or traditional vow drafts to edit.Abbreviation FinderLook up what common abbreviations and acronyms stand for, or find the abbreviation for a phrase.About Us Page GeneratorTurn your business story, mission, values and team into About Us page copy, as text or HTML.Describing Words FinderEnter a noun and get adjectives that commonly describe it, sorted by how often they are used.APA Title Page GeneratorMake an APA 7 student or professional title page with live preview; download DOCX or PDF.Appeal Letter GeneratorWrite an insurance, academic, parking ticket or account suspension appeal letter with deadline.Best Man Speech GeneratorBuild a best man speech from your story and the couple's names, timed to your target length.Blog Post Outline GeneratorBuild an H2/H3 blog outline for how-tos, listicles, reviews and more, with word budgets.Blog Title GeneratorTurn a keyword into 50+ blog headlines with proven formulas and a length check.Cancellation Letter GeneratorWrite a letter or email to cancel a subscription, gym, insurance or service, with refund math.Cease and Desist Letter GeneratorWrite a cease and desist letter for harassment, copyright, trademark or debt collectors.
See all 459 Text Tools →