Three languages, one paste
Auto-detects JavaScript, CSS, and HTML so you don't have to select the language.
Paste minified, mangled, or one-line code and get clean, readable output instantly. Everything runs in your browser — nothing is uploaded.
// features
Fast, accurate, local. Everything runs in your browser on top of the battle-tested js-beautify engine.
Auto-detects JavaScript, CSS, and HTML so you don't have to select the language.
Your code never leaves the tab. No servers, no logs, no telemetry. Processed client-side.
Keystroke-fast. Handles multi-megabyte bundles without spinning up a loading spinner.
Drop a .js, .css, or .html file — or use the Import button — and we'll load it locally.
Clean output lands on your clipboard with a single button. Paste straight into your editor.
No account. No paywall. No rate limits. Just a small ad that keeps the lights on — that's the deal.
// guide
Turn unreadable, minified code into clean, formatted output in seconds and directly in your browser (no data is sent to our server).
Copy and paste compressed JavaScript, CSS, or HTML into the editor above. This includes single-line files, bundled scripts, or minified markup. Or just import (upload) the file.
The auto-detection system identifies whether your input is JS, CSS, or HTML. You can manually override it with the AUTO / JS / CSS / HTML switcher if needed.
The code is instantly reformatted with proper indentation, spacing, and line breaks, making it readable and easier to debug even for large or complex production bundles.
Developers use this online unminifier tool to quickly debug production code, inspect third-party scripts, analyze minified bundles (mainly JavaScript), and learn from real-world implementations.
It's especially useful when working with compressed JavaScript files, minified CSS stylesheets, or HTML output generated by build tools (so you can revert them to the uncompressed version).
"Unminify", "beautify", and "pretty print" are often used interchangeably. They all describe the process of restoring readable formatting to minified JS, CSS, or HTML so it can be more easily debugged and analyzed.
While minification removes whitespace and shortens syntax to reduce file size (so the files will load faster), unminifying reverses that process to improve readability without changing functionality.
// questions
Quick answers to question about this tool.
Unminifying re-inserts the line breaks, indentation, and whitespace that a minifier stripped out to shrink file size. The resulting code is semantically identical to what you pasted — browsers and interpreters will execute it the same way — but it becomes readable again, which makes debugging, auditing, and learning from third-party code vastly easier. Note that variable and function names that were mangled down to single letters like a, b, or c stay mangled: the original names are thrown away at minification time and can't be recovered without a source map.
No, nothing leaves your browser. The beautifier runs entirely as client-side JavaScript inside this page — your code is handed directly to the js-beautify library in memory and the formatted result is written back into the textarea. Nothing is uploaded, cached, or logged by us. You can verify this yourself: open your browser's DevTools, switch to the Network tab, click Unminify, and you'll see zero outbound requests carrying your code. This makes the tool safe for proprietary or pre-release source that shouldn't leave your machine.
This unminifier tool supports the three languages that get minified most often on the web: JavaScript (including JSX and TypeScript-flavored syntax in most cases), CSS (and SCSS-like inputs that don't rely on nested selectors), and HTML. The auto-detector samples the first few tokens of whatever you paste and picks a language accordingly, but you can override it at any time using the AUTO / JS / CSS / HTML pills above the editor — useful for edge cases like embedded <style> blocks or snippets that start with a comment.
There's no hard size cap, no rate limit, and no daily quota. Because all the work happens in your tab, the only ceiling is your device's available memory. In practice, files up to a few megabytes beautify in well under a second on a modern laptop. If you do hit a browser-tab memory ceiling on an unusually large file, the page will simply slow down.
Yes, you can paste a full bundled and minified JavaScript file (such as bootstrap.min.js) and get readable, indented output back — that's one of the most common use cases for the tool. However, source maps (.js.map files) aren't consumed here: we don't have an upload field for them and we don't attempt to restore the original symbol names. For full symbol recovery and matching lines back to your original source files, you'll want a dedicated source-map visualizer like source-map-explorer or the map panel built into Chrome DevTools.