Obfuscate JavaScript source code with low / medium / high presets — entirely in your browser.
Obfuscate JavaScript source code right in your browser. Paste any JS file, pick a preset (low / medium / high), and get back a version that's much harder to read and reverse-engineer. The tool uses the popular `javascript-obfuscator` library and runs entirely client-side — your source never leaves your device. Use it to protect intellectual property in shipped browser bundles or to discourage casual tampering. Note: obfuscation is not encryption. A determined analyst can still recover behavior — higher presets simply raise the cost.
Paste your JavaScript
Drop the source you want to obfuscate into the input editor. Any modern JavaScript (ES5+) is supported, including TypeScript-compiled output.
Pick a preset
Low keeps runtime fast and adds only basic transforms. Medium balances obfuscation strength with a modest runtime cost. High applies every protection — strongest obfuscation, significant slowdown.
Obfuscate and grab the output
Click Obfuscate. The result appears on the right. Copy it to the clipboard or download it as obfuscated.js.
No. Obfuscation makes code harder to read; it does not hide it cryptographically. Anyone running the obfuscated code can still execute it in a browser, set breakpoints, and observe behavior. Use obfuscation to raise the cost of reverse engineering, not to keep secrets.
Obfuscation adds indirection: encoded string lookups, dead-code insertions, control-flow flattening, and debug-protection hooks. Medium adds roughly 1.5× runtime overhead; High can be several times slower. Benchmark on representative code before shipping.
It should be functionally equivalent to the input. If you rely on public API names that other scripts reference, either pick a lower preset or configure the library to preserve specific identifiers (advanced — you can request this as a feature).
No. The javascript-obfuscator library runs entirely in your browser. Your source, the obfuscated output, and any error messages stay on your device.
Yes — up to the limits of your browser's memory. Large bundles (multi-megabyte) may take several seconds at the High preset.