Compress JPG

MozJPEG, running on your own processor.

Nothing is uploaded

Drop files here, or click to choose

Accepts JPG, JPEG. No size limit, no sign-up.

    Reduce the size of a JPG without sending it anywhere. The encoder here is MozJPEG, the same one used by the tools professional teams reach for, compiled to WebAssembly and running inside this tab.

    Recompressing a JPG is a second loss

    This is the fact that separates compressing a JPG from compressing anything else. Your file has already been through lossy compression once. Decoding and re-encoding it does not go back to the original image — it compresses an already-degraded copy, and the damage accumulates.

    The practical rule is to do it once, at the lowest quality you can accept, rather than repeatedly nudging the slider down. Two passes at quality 80 look worse than one pass at 70 and usually save less space.

    A real size cliff at quality 90

    JPEG stores brightness and colour separately, and it normally stores colour at half resolution — a trick called chroma subsampling that works because human vision is far more sensitive to brightness detail than colour detail. Above a certain quality, encoders switch to storing colour at full resolution, and the file jumps.

    We measured exactly where. On a 1600×1000 photograph the output goes 61 KB at quality 70, 72 KB at 75, 82 KB at 79 — then jumps to 114 KB the moment quality reaches 80 with automatic subsampling left on. Forcing half-resolution colour at that same setting gives 88 KB instead.

    Because a 39% size jump for one notch of the slider is not something a user can reasonably predict, we hold colour at half resolution up to quality 89 and only allow full-resolution colour from 90 upwards, where you have clearly asked for maximum fidelity. The table below reflects that behaviour.

    Choosing a number

    For photographs on a website or sent through a chat app, 70 to 80 holds up almost always. The default here is 75. For print or further editing, use 90 or above and accept the larger file. Below roughly 60, smooth areas such as sky and skin start to show blocking.

    If the image is a screenshot, a diagram or contains text, JPEG is the wrong format entirely — it produces visible ringing around hard edges no matter how high you set the quality. Those belong in PNG or WebP.

    Why there are no limits here

    The well-known compression sites upload your file, process it on their hardware and send it back. Server time costs money, so the free tier gets rationed — one popular service caps free web uploads at 15 MB per file, another allows two tasks per hour and watermarks anything beyond that.

    Nothing is uploaded here, so nothing needs rationing. No size cap, no quota, no watermark, no account. Open DevTools, watch the Network tab, and compress something.

    Measured: photograph, 1600×1000

    Continuous tone with no hard edges — the content JPEG was designed for.

    QualityJPEGWebPWebP vs JPEG
    4033.7 KB27.6 KB-18%
    5040.9 KB31.7 KB-23%
    6048.9 KB35.7 KB-27%
    7061.3 KB41.6 KB-32%
    7572.0 KB44.3 KB-38%
    8088.2 KB55.0 KB-38%
    85106.8 KB70.8 KB-34%
    90252.1 KB103.8 KB-59%
    95372.9 KB172.3 KB-54%
    Source PNG1153.7 KB
    Optimised PNG (lossless)848.6 KB

    Measured in Chromium with the same WebAssembly encoders this site ships. Your results will differ with your own images — the point is the shape of the curve, not the exact bytes. Measured: 2026-08-08

    Frequently asked questions

    Does compressing the same file twice halve it again?

    No, and it degrades the image. Each pass permanently discards detail from an already-lossy file. Compress once at the lowest quality you can accept.

    Why does the file jump in size at quality 90?

    Because the encoder switches from storing colour at half resolution to full resolution. We hold that switch until 90 so the slider behaves predictably below it.

    What quality should I use?

    70 to 80 for web and messaging, 90 or above for print or further editing. Below about 60 you will see blocking in sky and skin tones.

    Can I compress a screenshot with this?

    You can, but you should not. JPEG produces visible ringing around text and sharp edges. Use PNG or WebP for screenshots instead.

    Is my file uploaded?

    No. MozJPEG runs as WebAssembly inside your browser tab. You can verify it in the DevTools Network tab.

    Other tools