JavaScript Obfuscator

Protect your JavaScript with configurable obfuscation.

Input JavaScript

Options

Preset
Target
String array encoding

Obfuscation is not encryption

This tool makes your JavaScript much harder to read, reverse-engineer and copy — but it does not make it impossible. Every technique it applies (identifier renaming, string arrays, control-flow flattening, dead code) can in principle be undone by a determined analyst. Use obfuscation as one layer of a defense-in-depth strategy alongside legal protections.

Frequently asked questions

Does obfuscation guarantee my code can’t be reverse engineered?
No. Obfuscation raises the cost of reverse engineering significantly but it is not encryption. Skilled attackers can always reconstruct behaviour. Use it as one layer of protection, not a security guarantee.
Which preset should I use?
Start with Low if you need readable output, Medium for most production code, and High only when performance and file size are less important. Higher presets increase output size and may slow down your app.
Will obfuscated code still work in the browser and Node.js?
Yes. Output targets ECMAScript 2015+ by default and runs in modern browsers and Node.js. Avoid obfuscating code that must remain self-documenting, such as vendored libraries.