JS MINIFIER / TERSER

JavaScript Minifier

Shrink JavaScript before release, often by half.

Runs locally · code is not uploaded
Options

YOUR NEXT STEP

Connect useful tools with your company workflow

Create a company account to configure website monitoring, business email and notifications, and invite your team to work together.

New companies receive a 14-day Pro trial, with no card required. Trials exclude the paid monthly credit grant.

Already have an account? Open your workspace →

How to use it

  1. Paste code, drop a file or load the sample; the language is preset for this page and can be changed.
  2. Choose format or minify and adjust indent, width and other options; the result appears on the right as you type.
  3. Copy or download the result; on an error, use "Go to error", fix it and run again.

What minification does

Minifying changes how code is written, not what it does. It typically cuts 30–70% of the size and speeds up pages; keep your source, because minified code is hard to read.

Three minifiers
OperationJavaScript(Terser)CSS(CSSO)HTML / XML / JSON
Remove comments✓✓✓
Remove whitespace and line breaks✓✓✓
Shorten variable names✓——
Merge rules, shorten colours—✓—
Drop dead code, fold constants✓——
Keep /*! licence commentsOptionalOptionalOptional

Languages and engines

Formatting uses the same open-source engines as popular editors, so results match Prettier in VS Code and your team can keep one style. Every engine loads from this site and runs in your browser.

Language
LanguageFormatCompress
HTMLPrettier 3✓ comments and whitespace
XMLXunL XML engine✓
CSS / SCSS / LessPrettier 3✓ CSSO restructuring
JavaScript / TypeScriptPrettier 3(Babel)✓ Terser (JavaScript only)
JSONPrettier 3✓ big numbers keep precision
YAMLPrettier 3— (comments kept)
SQLsql-formatter (14 dialects)—

Frequently asked questions

Will minified code still run?

Terser is the default minifier in webpack and Vite and only applies behaviour-preserving transforms. Turn off "Shorten variable names" for code that relies on function names or uses eval on local variables.

Can it minify TypeScript?

Not directly; compile it to JavaScript first.

Is my code uploaded?

No. The engines download from this site and run in your browser; your code never passes through our servers or any third party, so it is safe for internal code and configuration.

How large can files be?

Up to 5 MB per file; above 300 KB the page waits for the button instead of formatting as you type, to keep the browser responsive.

JavaScript minifier practical guide and common questions

What does a JavaScript minifier do?

Terser 5, the default minifier in webpack and Vite, removes whitespace and comments, folds constants, drops unreachable code and, with name shortening on, renames local variables.

Who is this for, and when is it useful?

Developers of small sites, landing pages and WordPress or Shopify themes without a build step who want smaller scripts before release.

How do I use this JavaScript minifier?

Paste JavaScript to minify with Terser, optionally shortening names and keeping licence comments, and see the size before and after.

How should I interpret the results?

JavaScript only; turn off name shortening for code relying on function names, eval or with, and run the result in a test environment.

Where is the work performed, and which services receive data?

Terser minifies in your browser; scripts are neither executed nor uploaded.