Text tools
Text · Free · Private

Hidden Character Finder

See every invisible character in your text, find out what it does, and clean it out in one go.

  • Runs in your browser
  • No upload
  • No sign-up

Empty

What’s hiding

Waiting for text

Your text appears here with every hidden character drawn as a label, like ZWSP or NBSP.

Clean it up

Unicode normalisation

NFC joins letters and accents typed separately (e + ́ → é). NFKC also flattens look-alike forms such as fi → fi, ² → 2 and full-width A → A.

Nothing to clean yet.

Hidden characters are not proof that text was written by AI. Phones, Word, web pages and chat apps add curly quotes, dashes, no-break spaces and zero-width characters all the time, and some AI tools add none at all.

About this tool

Hidden Character Finder shows what your text really contains. Paste a paragraph and it is redrawn beside the box with every invisible or unusual character turned into a small labelled badge: ZWSP for a zero-width space, NBSP for a no-break space, RLO for a right-to-left override, TAG for an invisible tag letter. Curly quotes and dashes get a soft underline, and a Cyrillic “а” hiding inside an English word gets a red dashed outline.

It is for anyone whose text behaves strangely: a password that won’t match, a CSV header that breaks an import, code that compiles differently from how it reads, a username that looks blank, or a phishing link that looks right but isn’t. A table lists each character with its code point, name, count and purpose.

Then tick the clean-ups you want. Emoji built from several pieces, such as 👨‍👩‍👧 and the Scotland flag, are kept whole by default so cleaning never breaks them. Your text never leaves your device.

How to use Hidden Character Finder

  1. Paste into “Your text”, drop in a text file, press “Open”, or press “Try a sample” to see a demo full of tricks.
  2. Read the labelled view under “What’s hiding”. The status line counts the characters that matter, and coloured chips group them.
  3. Use the “Every character found” table to learn what each one is. Click a row to highlight it; click again to jump to the next.
  4. Under “Clean it up”, tick the fixes you want: invisible characters, control codes, odd spaces, quotes, dashes, the ellipsis, lookalike letters, or Unicode normalisation.
  5. Check the change count, then press “Copy”, “Download”, or “Use as my text” to scan the clean version again.
Example

The first line of the sample looks ordinary but holds a no-break space before “Total”, a narrow no-break space inside “€1 250” and a thin space before the dash. With the default clean-up all three become plain spaces, and the result reports “3 spaces made plain” among its changes.

Features

  • Finds zero-width spaces, joiners and non-joiners, word joiners, byte order marks, soft hyphens, Hangul and Braille blank fillers.
  • Flags all nine direction controls used in “Trojan Source” attacks and right-to-left file name tricks (LRE, RLE, PDF, LRO, RLO, LRI, RLI, FSI, PDI) plus LRM, RLM and ALM.
  • Decodes invisible tag characters into the hidden message they spell, a trick used to smuggle instructions to AI chatbots.
  • Spots Cyrillic and Greek letters that look like Latin ones, but only inside words that mix scripts, so real Russian or Greek text is not flagged.
  • Lists 16 kinds of unusual space, from no-break and narrow no-break to em, thin, hair and ideographic, plus the line separator, paragraph separator and next-line characters.
  • Shows control codes, variation selectors, curly quotes, primes, en and em dashes, minus signs and the ellipsis character, with tabs and line endings on request.
  • Clean-up options with a live change count, NFC and NFKC normalisation, and emoji and flags left whole unless you choose otherwise.
  • Opens UTF-8, UTF-16 and Windows-1252 text files without hiding a leading byte order mark.

Tips and good to know

  • Hidden characters are not proof that text was written by AI. Phones, Word and web pages add curly quotes, em dashes and no-break spaces every day, and AI text can be perfectly plain.
  • For code, JSON and CSV, tick “Smart quotes to straight” and “Dashes to hyphens” as well as the defaults. For prose, leave them off: curly quotes are correct typography.
  • NFKC is strong: it turns ² into 2 and fi into fi. Use NFC unless you specifically want those forms flattened.
  • A lone RLO or LRI in source code is a red flag. Remove it and read the code again before you run it.

Frequently asked questions

Is my text uploaded anywhere?

No. The scan and the clean-up both run in your browser. Nothing you paste or open is sent to AroraTools or anyone else, and it is gone when you close the tab.

Is it free, and is there a length limit?

It is free with no sign-up. Files up to 20 MB open fine. For very long texts the labelled view shows the first 200,000 characters to stay quick, while the table and the clean-up still cover everything.

Does it work on a phone, and offline?

Yes. It works in Safari, Chrome and Firefox on iPhone, Android and computers. You need a connection to open the page, but after that everything keeps working without one.

Can this tell me if text was written by ChatGPT or another AI?

No, and no tool can do that from hidden characters alone. The same characters come from Word, phone keyboards and copied web pages. Treat what you find as a clue about where text was copied from, not as proof.

What is a zero-width space?

It is the character U+200B. It takes up no room and shows nothing, but it is a real character, so a word containing one no longer matches the same word without it. It often arrives in text copied from websites, chat apps and PDFs.

Will cleaning break my emoji?

Not with the default settings. Family, profession and skin-tone emoji are held together by zero-width joiners, and some flags by tag characters. “Keep emoji and flags whole” leaves those pieces alone and only removes the stray ones.

What is the difference between NFC and NFKC?

NFC merges a letter and a separate accent into the single accented letter, so é typed two ways becomes identical. NFKC does that and also replaces compatibility forms, such as full-width letters, ligatures and superscripts, with their plain versions.

Page last reviewed