Something wrong with this tool?
About JS Obfuscator Online
This tool obfuscates JavaScript source code, making it harder to read and reverse-engineer while preserving its functionality. Variable names get renamed to short or random identifiers, string literals get encoded, control flow can be flattened, and dead code can be inserted to confuse static analysis.
Obfuscation is not a substitute for proper security — anyone with enough time and motivation can deobfuscate. It does deter casual inspection of business logic, slow down license-bypass attempts, and discourage copy-paste plagiarism of paid scripts.
Be aware that obfuscation typically increases file size and can slow down execution. Don't obfuscate code that needs to be debugged in production; use source maps to preserve the link to original source for your own debugging.
How to use this tool
How to obfuscate JavaScript source for harder reading
Paste the JS
Drop your source into the "JS" field. The obfuscator works on standard ES2020+ syntax; module imports stay structurally intact so the result still loads as a module, but its internals look very different.
Press Run
Result returns a single `obfuscated` field. Identifiers are renamed to short or random strings, string literals are extracted to a lookup table, dead-code is reordered, and control flow gets flattened where safe.
Why it's not security
Obfuscation slows down a determined reverse-engineer; it does NOT make the code secret. Anything the browser runs, a debugger can step through. For real secrets (API keys, business logic) keep them on a server — obfuscating shipped JS just delays the inevitable.
Side effects to watch
Obfuscated JS is bigger AND slower than the original — usually 30–80% slower for tight loops. It also breaks source-map debugging unless you generate a separate map. For production bundles, prefer minification over obfuscation.