Skip to content
Preset / 2 MB

Compress an image to 2 MB

Drop your photo in. The target is already set to 2 MB. Your browser searches for the highest quality that still fits under it, and nothing is uploaded anywhere.

Drop images here

click to choose · paste from the clipboard · add a whole batch

reads every image inside, no uploading
    Held
    0 B
    nothing queued
    Other servers contacted
    0
    Files processed locally
    0
    File bytes kept local
    0 B

    Nothing here is uploaded. See how the page enforces it.

    Who needs 2 MB

    The cap YouTube applies to custom video thumbnails, the limit on many job-board CV attachments, and a common ceiling on content management system media libraries.

    What an image looks like at 2 MB

    Effectively lossless in practice for a single photograph. Even a large camera JPEG usually lands well under it after one pass.

    If you are here for a YouTube thumbnail, the dimensions matter more than the weight: the frame is 1280x720 and the 2 MB cap is generous.

    How the target is hit

    Guessing a quality percentage and checking the result is the slow way to do this. Instead your browser encodes the image, measures the actual byte count, and narrows the quality range from both ends over seven passes, each one halving the remaining uncertainty. It stops at the highest quality whose output is still under 2 MB.

    If even the lowest acceptable quality is still too heavy, it starts reducing the dimensions instead, because losing pixels is a better trade than reducing a photograph to mush. If it genuinely cannot reach 2 MB, the row says so rather than handing you a file that quietly missed the target.

    Questions

    + Is the result exactly 2 MB?

    It is at or just under 2,097,152 bytes, the largest file that still satisfies the limit. Landing on the number precisely would mean padding the file with junk, which no upload form wants.

    + My camera RAW file will not open.

    RAW formats (CR2, NEF, ARW and the rest) are not images a browser can decode, so nothing here can read them. Export to JPEG or PNG from your camera software first, then bring that file back.

    + Are my images uploaded?

    No. The whole thing runs in your browser through the Canvas API. Open devtools, watch the Network tab while you compress, and you will see no request carrying your file. The page keeps working with your connection switched off.

    + Can I do a whole batch at once?

    Yes, and each file gets its own quality search. A simple graphic and a detailed photograph need very different settings to land on the same byte budget. There is no cap on how many, because there is no server to pay for it.

    + Does it work on a phone?

    Yes, on iOS and Android. Photographs taken on the phone can be picked straight from the camera roll.

    A useful next step