Compress an image to 1 MB — where nothing gets cut, and where the cut starts
A 1 MB JPG holds 19.75 megapixels of an ordinary photograph — 3629 × 5443 pixels. Measured, not estimated: a 3.33 MB 4000 × 6000 JPEG run through this compressor at a 1 MB target came back at 3629 × 5443, 1,044,689 bytes, quality 40.5%. But that is the ceiling, and almost nobody is near it. A 16-megapixel photo kept every single pixel at quality 48.4%. A 6-megapixel photo kept every pixel at 83.1%. A page of text kept 7.68 megapixels at 92.0%.
The short answer
At 1 MB, resolution is usually not what you lose. Three cases, in order of how many files they cover:
- Already under 1 MB: the file comes back byte for byte, 0 ms — nothing happens at all
- Photograph at or below 19.75 MP: every pixel kept, quality takes the hit instead (16 MP → 48.4%, 12 MP → 63.4%, 6 MP → 83.1%)
- Photograph above 19.75 MP: the picture is cut — a 24 MP file landed at 82.3% of its area
Fifteen runs, one 1 MB target. Twelve of them kept every pixel. That is the opposite of 20 KB, where the quality floor is hit every single time, and it is why 1 MB is the first budget where the honest answer is often "you do not need this".
How to read these numbers: fifteen separate encodes of this site's own compressor, each one a single sample of its content type — not a distribution. Every figure is what the tool actually returned, read from its own result panel. Where a number is arithmetic instead of measurement, I say so and show the division. The same question at a much tighter budget, with the measured pixel counts at 200 KB, is on the 200 KB page.
The number that decides everything: 19.75 megapixels
Start with the only run that lost anything. A 4000 × 6000 JPEG — 24 megapixels, 3.33 MB — went in at a 1 MB target and came out at 3629 × 5443, which is 19,752,647 pixels, or 82.3% of the area it started with. Quality was 40.5%.
That 40.5% is not a coincidence and it is not a preference. This compressor holds your dimensions and gives up quality down to 40%; only when 40% still will not fit does it start removing pixels. So the 24-megapixel file was pushed to the floor, still did not fit, and was then reduced to whatever 19.75 megapixels is. Which means 19.75 megapixels is what 1 MB holds at the floor, and it is the highest number any photograph can reach here.
Everything below that line behaves completely differently. Seven sizes of the same photograph, one target, JPG out:
| Source | Source size | Output at 1 MB | Megapixels | Output bytes | Quality | What happened |
|---|---|---|---|---|---|---|
| 4000 × 6000 | 3.33 MB | 3629 × 5443 | 19.75 | 1,044,689 | 40.5% | cut to 82.3% |
| 3266 × 4899 | 2.38 MB | 3266 × 4899 | 16.00 | 1,044,936 | 48.4% | every pixel kept |
| 3000 × 4500 | 2.14 MB | 3000 × 4500 | 13.50 | 1,044,824 | 58.3% | every pixel kept |
| 2828 × 4243 | 1.97 MB | 2828 × 4243 | 12.00 | 1,043,463 | 63.4% | every pixel kept |
| 2000 × 3000 | 1.43 MB | 2000 × 3000 | 6.00 | 994,145 | 83.1% | every pixel kept |
| 1000 × 1500 | 407 KB | 1000 × 1500 | 1.50 | 417,234 | unchanged | returned as-is |
| 500 × 750 | 103 KB | 500 × 750 | 0.375 | 104,988 | unchanged | returned as-is |
One photograph, downscaled, compressed to 1 MB (1,048,576 bytes) as JPG. Chrome 155 on Windows 11. The last two rows are the passthrough rule: file already under target and format already matching, so the original bytes come back untouched.
Below 19.75 megapixels, quality is what moves
Look down the quality column instead of the megapixel column. 16 MP pays 48.4%, 13.5 MP pays 58.3%, 12 MP pays 63.4%, 6 MP pays 83.1%. Every one of those kept its full frame. The byte budget did not shrink the picture; it bought a lower quality setting.
This is the single most useful thing to know about 1 MB, because it changes what you should worry about. At 20 KB you worry about whether your image survives at all. At 200 KB you worry about whether 3.1 megapixels is enough for your purpose. At 1 MB, if your photo is a normal 12-megapixel phone shot, the answer is: your dimensions are safe, and quality 63.4% is what you are paying for it.
One number that people get wrong: bytes per pixel is not a constant, so do not carry it across budgets. The 24 MP photo at the 40% floor used 1,044,689 ÷ 19,752,647 = 0.0529 bytes per pixel. The same photo at a 200 KB target, also at the 40% floor, used 203,474 ÷ 3,139,990 = 0.0648 bytes per pixel. Same source, same quality setting, 22% different cost per pixel. Any page that hands you one fixed bytes-per-pixel figure and multiplies it is guessing.
Content type moves the ceiling by a factor of eight
The 19.75-megapixel ceiling is a photograph ceiling. Five content types, same target, all JPG — and the spread is not subtle:
| Content | Source pixels | Source size | Output at 1 MB | Megapixels | Output bytes | Quality |
|---|---|---|---|---|---|---|
| Scanned page | 24.00 MP | 1.24 MB | 2612 × 3918 | 10.23 | 1,032,454 | 40.5% |
| Text page | 7.68 MP | 1.16 MB | 2400 × 3200 | 7.68 | 1,034,577 | 92.0% |
| Flat artwork | 16.00 MP | 82 KB | 4000 × 4000 | 16.00 | 565,928 | 99.5% |
| Cutout, transparency | 12.96 MP | 61 KB | 3600 × 3600 | 12.96 | 324,148 | 99.5% |
| Smooth gradient | 3.84 MP | 2.42 MB | 2400 × 1600 | 3.84 | 874,016 | 96.3% |
Five content types, one 1 MB target, output format JPG. Source sizes are the files that went in; two of them were already far under 1 MB, which is the point of the next two sections.
The gap that matters: a scanned page held 10.23 megapixels at the 40% floor, while a text page held 7.68 megapixels at 92% quality. More pixels and more quality — because the text page is a synthetic render with clean edges, not a photograph of paper with grain and uneven light. Same target, same format, wildly different results. This is why "1 MB holds X megapixels" is only meaningful when you say what kind of image it is.
The real trap at 1 MB: converting a PNG you did not need to convert
Two of the five rows above were already under 1 MB before anything happened. The flat artwork was 84,394 bytes. The cutout was 62,081 bytes. Both were PNG. The output format was JPG. So the compressor did what it was told and re-encoded them:
- Flat artwork: 84,394 bytes → 565,928 bytes, 6.7 times larger, quality 99.5%
- Cutout: 62,081 bytes → 324,148 bytes, 5.2 times larger, quality 99.5%
Neither one is a bug. PNG stores large areas of one colour with almost no data, so a flat 16-megapixel graphic can be 82 KB as PNG. JPG has to encode every 8 × 8 block, so the same picture as JPG is 553 KB even at 99.5% quality. If your file is already under the limit and already in the format you need, converting it can only make it bigger. The compression target was never the problem — the format change was.
If your image is already under 1 MB, nothing happens
The two smallest runs in the first table are the ones worth remembering. A 407 KB photo and a 103 KB photo went in at a 1 MB target and came back with exactly the same byte counts — 417,234 and 104,988 — in 0 ms, quality reported as unchanged. No re-encode, no generation loss, no second round of JPEG artefacts on top of the first.
That rule is: if the file is already smaller than the target and its type already matches the output format, the original file is returned as-is. Which makes 1 MB unusual among the sizes people search for. A screenshot, a web-exported image, a chart, a logo — a large share of those are already under 1 MB. If yours is, the correct action is to check the byte count and then do nothing.
WebP keeps all 24 megapixels where JPG gives up 17.7%
Same 4000 × 6000 source, same 1 MB target, only the output format changed:
- JPG: 3629 × 5443 (19.75 MP), 1,044,689 bytes, quality 40.5%
- WebP: 4000 × 6000 (24.00 MP, every pixel kept), 1,045,184 bytes, quality 62.0%
WebP held 21.5% more pixels and a quality setting 21.5 points higher in the same byte budget — 24,000,000 ÷ 19,752,647 = 1.215. That is a bigger gap than at 200 KB, where the same swap bought 51% more pixels but left both formats pinned at the 40% floor. At 1 MB, WebP is the only format in this test that kept a full 24-megapixel frame.
The catch is at the small end. A 417,234-byte, 1.5-megapixel photo converted to WebP came back at 594,734 bytes — 42.5% larger than the file that went in, at quality 99.5% (177,500 ÷ 417,234 = 0.425). WebP wins when you are pushing a big frame through a tight budget. It loses when you hand it a small file that was already efficient.
PNG still cannot do this, even at 1 MB
The 7.68-megapixel text page as JPG kept all 7.68 megapixels at 92.0%. The same page as PNG, at the same 1 MB target, came back at 1322 × 1763 — 2.33 megapixels, 30.4% of the original, lossless, 1,047,648 bytes.
So PNG at 1 MB holds about a third of what JPG holds on a text page, and roughly an eighth of the 19.75 megapixels a photograph gets. The arithmetic is the same as at every other size: 1,047,648 ÷ 2,330,686 = 0.4495 bytes per pixel for lossless PNG, against 1,034,577 ÷ 7,680,000 = 0.1347 bytes per pixel for JPG at quality 92%. Lossless is 3.3 times more expensive per pixel, and 1 MB does not change that.
1 MB is 1,048,576 bytes, and 8 of 15 outputs were above 1,000,000
This tool reads 1 MB as 1,048,576 bytes (1,024 × 1,024). All fifteen outputs landed under that — the largest was 1,047,648. But eight of the fifteen came back above 1,000,000 bytes, because 1,048,576 leaves 48,576 bytes of headroom that the encoder will happily use.
If a form says "maximum 1 MB" and means one million bytes, those eight files get rejected. The fix is arithmetic, not guesswork: 976 KB × 1,024 = 999,424 bytes, which clears a 1,000,000-byte limit with 576 bytes to spare. Same trap as at 200 KB, where the safe setting is 195 KB — it just moves the number.
How to compress an image to 1 MB, step by step
- Read the byte count before you do anything. If the file is already under 1,048,576 bytes and already a JPG, there is nothing to gain — the tool will hand it straight back.
- Check whether your limit means 1,000,000 or 1,048,576. Forms usually mean the former. Set 976 KB if the wording is "1 MB" and the portal is strict.
- Keep the format you already have. Converting a PNG flat graphic or cutout to JPG at this size can return a file 5 to 7 times larger.
- Only expect a resolution cut above 19.75 megapixels for photographs, about 10.2 megapixels for a scan, and 2.33 megapixels for a PNG of text.
- Read the output panel, not the label. It reports the exact output dimensions, byte count and quality. If the dimensions are the same as your source, nothing was lost but quality.
When 1 MB is the wrong target
1 MB is generous. That is the point of it, and also its failure mode: people reach for it when a portal asked for something else. Three cases where a lower target is the right one:
- A form asks for 200 KB or 100 KB. Landing at 1,044,689 bytes is a rejection, not a compression. The measured pixel counts at 200 KB are on the 200 KB page.
- The image is going on a web page. At 1 MB you are shipping roughly 19.75 megapixels of a photograph to a screen that shows two. The page weight is real; the detail is not visible.
- Your file is a PNG of flat artwork or a cutout. Re-encoding it as JPG makes it bigger, and re-encoding it as PNG at 1 MB keeps it lossless but costs 0.4495 bytes per pixel. Neither is progress.
Questions people ask about 1 MB images
How many megapixels is a 1 MB image?
19.75 megapixels for a photograph — 3629 × 5443, measured. That is the ceiling at the 40% quality floor. At or below it, you keep your full dimensions and pay in quality instead: 16 MP at 48.4%, 13.5 MP at 58.3%, 12 MP at 63.4%, 6 MP at 83.1%.
Does compressing to 1 MB reduce my image dimensions?
Only above about 19.75 megapixels of photographic detail. The 24 MP file in my test was the only photograph that lost pixels — it came back at 82.3% of its area. Every smaller size kept every pixel. For a scan the line is lower (10.23 MP), and for a PNG of text it is much lower (2.33 MP).
Is 1 MB the same as 1,000,000 bytes?
No — 1,048,576. Eight of the fifteen outputs in this test came back above 1,000,000 bytes. If a portal means one million exactly, set 976 KB, which produces 999,424 bytes.
Why did my PNG get bigger when I compressed it to 1 MB?
Because the output was JPG and PNG was already doing a good job. An 84,394-byte flat 16-megapixel PNG came back as a 565,928-byte JPG, 6.7 times larger. A 62,081-byte cutout came back at 324,148 bytes, 5.2 times larger. Both were already under 1 MB, so the only thing that changed was the container.
Does the image get uploaded anywhere?
No. Decoding and re-encoding happen in your browser; the file is never sent to a server. That is also why the passthrough case returns in 0 ms — there is no round trip to make.
The 1 MB numbers above are one file at a time. What a whole folder does at a fixed limit — ten files, ten different outputs, and what one folder-wide setting costs in pixels — is measured on the folder run page. The same question at 200 KB, where the quality floor bites in every single run, is on the 200 KB page.