Javascript DeObfuscator
About the JavaScript Deobfuscator
The JavaScript Deobfuscator unwinds intentionally scrambled JavaScript — the kind produced by obfuscators that scramble variable names, encrypt strings, and inject confusing control-flow tricks — back into a structure humans can read. Security researchers analysing potentially malicious scripts, developers auditing third-party widgets before adding them to their sites, and reverse engineers studying competitor code all rely on this tool every day.
What the deobfuscator does
It rebuilds proper indentation, decodes string arrays back into readable literals, simplifies inflated control flow into straightforward conditionals and loops, expands packed expressions, removes dead-code traps, and renames mangled identifiers to more meaningful names where pattern matching allows. The result is JavaScript you can actually read — though original variable names that were destroyed by the obfuscator can never be perfectly recovered.
How to use it
- Paste obfuscated JavaScript into the input area.
- Click Deobfuscate.
- Read the cleaned-up output side by side with the original for comparison.
Common use cases
Investigating suspicious scripts on infected websites, auditing third-party analytics or chat widgets before deploying them, understanding how a popular library actually works internally, reverse-engineering CTF challenges, and educational study of obfuscation techniques.
Limits and privacy
Deobfuscation is best-effort. Modern obfuscators (especially commercial ones) use aggressive techniques that no automated tool fully reverses. You will get readable structure but may still need manual analysis for the trickiest cases. All processing happens in your browser — code never leaves your device, which matters because suspicious scripts may contain credentials or sensitive logic. To obfuscate your own code back into a protected form, use our JavaScript Obfuscator tool.