Who asks for 1 MB
Email attachments, job applications carrying a scanned document, content systems with a one-megabyte default, and forms that accept a photograph but not a full-resolution one straight off a modern phone.
What fits in 1 MB
Around 3000 × 2000 at high quality — a full-resolution phone photograph with almost nothing given up.
What it costs you
Close to nothing visible. At this size the encoder has enough bytes to keep the detail that matters, and the difference from the original is a matter of measurement rather than appearance. If your source is a 12 MP phone photo of 4–6 MB, 1 MB is a very comfortable target.
How this hits the number
Compression quality and file size do not move together in a straight line, so there is no setting that reliably produces 1 MB. This encodes your image repeatedly at different quality levels, narrowing in on the highest one whose output still fits, and returns that file. It never hands back something over the limit, because a file over the limit is the one thing you cannot use.
All of it runs in this browser tab using the canvas API. Your image is read from disk into the page, worked on, and written back out. Nothing is uploaded, which you can confirm yourself — open your browser's network tab and watch it stay empty while the tool runs.
Common questions
Why are my phone photos so much bigger than 1 MB?
Because a modern phone camera records 12 megapixels or more and saves at a high quality setting, which typically produces 3–6 MB per photo. Most of that is detail you cannot see on a screen. Bringing one to 1 MB discards the excess and keeps what is visible.
Is 1 MB small enough to email?
Yes, comfortably. Most mail services accept attachments up to 20–25 MB, so a 1 MB photo is not close to any limit, and several will fit in one message. Where 1 MB matters more is the recipient — a full inbox or a metered mobile connection makes a smaller attachment a courtesy.
Does this reduce quality to hit exactly 1 MB?
It reduces quality only as far as it must. The search starts high and steps down only until the output fits, so you get the best-looking file that satisfies the limit rather than a fixed quality setting applied regardless. If the original is already under 1 MB it is left alone.