Hidden Character Detector
Detect invisible, zero-width, and RTL override characters in text. Free online security tool for finding hidden Unicode characters.
What are hidden characters in text?
Hidden characters are Unicode characters that are invisible or have zero width when rendered. They include zero-width spaces (U+200B), non-breaking spaces (U+00A0), zero-width joiners (U+200D), RTL/LTR override characters, and other control characters that affect text display without being visible themselves.
What types of hidden characters does this tool detect?
This tool detects zero-width spaces (U+200B), zero-width non-joiners (U+200C), zero-width joiners (U+200D), non-breaking spaces (U+00A0), soft hyphens (U+00AD), RTL marks (U+200F), LTR marks (U+200E), RTL overrides (U+202E), LTR overrides (U+202D), and other invisible Unicode control characters.
Why should I check for hidden characters?
Hidden characters can be used for malicious purposes such as trojan source attacks (making code look different from what it does), phishing (making file names like "exe.txt" appear as "txt.exe"), bypassing content filters, and embedding tracking markers. They can also cause unexpected behavior in code, URLs, and data processing.
What is a trojan source attack?
A trojan source attack uses invisible Unicode characters like bidirectional (Bidi) overrides to make source code appear differently from how it will be compiled or executed. For example, a comment could visually appear to close a statement while the compiler reads it differently, potentially hiding malicious code. This was identified by researchers at Cambridge University in 2021.
What are RTL override characters and why are they dangerous?
RTL (Right-to-Left) Override characters (U+202E) reverse the display direction of text that follows them. This is commonly exploited in phishing attacks to make a file like "photo\u202Efdp.exe" display as "photoexe.pdf", tricking users into opening malicious executables.
What is a zero-width space and where does it come from?
A zero-width space (U+200B) is an invisible character that takes up no visual space. It is commonly used in word processing for line-break opportunities, in URLs for breaking long addresses, and sometimes inserted by copy-paste from websites or PDFs. While often harmless, it can cause issues in code, data comparison, and authentication tokens.
Can hidden characters be used to track me?
Yes. Some websites and documents embed invisible Unicode characters as watermarks or tracking markers. These can uniquely identify the source of a copied text. Zero-width characters can also be used in steganography to embed hidden messages within seemingly normal text.
How does this hidden character detector work?
The tool analyzes each character in your text by examining its Unicode code point. It identifies characters that are invisible, zero-width, or affect text direction. Results are displayed with character positions, Unicode code points, character names, and highlighted locations in your text for easy identification.
Is my data sent to any server?
No. All processing happens entirely in your browser using JavaScript. Your text never leaves your device, making this tool safe for checking sensitive content including passwords, API keys, code snippets, and confidential documents.
How do I remove hidden characters from my text?
After detection, you can use the tool's remove function to strip all hidden and invisible characters from your text. Alternatively, you can selectively remove specific character types. The cleaned text will only contain visible, printable characters.
Can this tool detect homoglyph attacks?
This tool focuses on invisible and zero-width characters. For homoglyph attacks (where characters from different scripts look similar, like Latin "a" vs Cyrillic "\u0430"), you would need additional visual comparison tools. However, many homoglyph attacks also use invisible characters, which this tool will detect.
Is this tool free to use?
Yes, this hidden character detector is completely free. No registration required, no usage limits, and no hidden fees. You can check unlimited amounts of text as many times as you need.
Does it work with all languages and scripts?
Yes. The tool works with Unicode text in any language or script, including Latin, Cyrillic, Arabic, Hebrew, Chinese, Japanese, Korean, Devanagari, and all other writing systems supported by Unicode.
What is the difference between zero-width space and non-breaking space?
A zero-width space (U+200B) is completely invisible and takes no horizontal space. It is used to indicate optional line-break points. A non-breaking space (U+00A0) is visually similar to a regular space but prevents automatic line breaks at its position. NBSP is visible as a gap between words, whereas ZWSP is truly invisible.
How to Use Hidden Character Detector
Scan pasted text for invisible Unicode tricks such as zero-width spaces, joiners, and RTL overrides. Everything is analyzed locally in your browser, so your text never leaves the device.
- Paste the text you want to audit into the input area — the detector scans it automatically as you type.
- Review the list of findings, where each invisible character is shown with its name, Unicode code point, and position.
- Look for high-risk entries such as zero-width spaces, zero-width joiners, and RTL override marks.
- Remove or replace the flagged characters in your own editor, then paste the text again to confirm it is clean.
Zero-width characters are a common phishing trick — always check text copied from unknown sources before publishing or clicking.
Related Tools
- Character Map Browse thousands of Unicode symbols, emojis, math operators, arrows, currency signs and special characters. Click to copy any character instantly. Free online tool, no installation needed, works offline.
- Line Sort Sort text lines alphabetically, numerically, or by length. Remove duplicates and reverse order with one click.
- Number Spell Out Convert numbers to English words, Chinese uppercase, Roman numerals, and scientific notation instantly.
- Case Converter Convert text between uppercase, lowercase, title case, camelCase, snake_case, kebab-case and more instantly
- Randomize Case Randomly convert text letters to uppercase or lowercase. Create SpongeBob case text instantly in your browser.
- Create Palindrome Create palindromes from any text by appending the reversed string. Free online tool that works instantly in your browser with multi-line support.
- Palindrome Checker Instantly check if any text, word, or sentence is a palindrome. Free online tool that runs 100% in your browser — no data sent to any server.
- String Similarity Compare two strings with Levenshtein, Jaro-Winkler, Cosine, Jaccard, Hamming & Dice algorithms. Instant results, 100% private.