PNG · Image formats
Why your screenshot is a huge PNG file
Screenshots are large for two reasons that compound. Every major operating system saves them as PNG, and PNG is lossless — it stores enough information to rebuild the image exactly, pixel for pixel, with nothing discarded. On top of that, a Retina or high-DPI display captures at twice the resolution you see, so a window measuring 1440 points across is written out as 2880 pixels. A screenshot of plain text and flat interface colours compresses well and stays small. One containing a photograph, a gradient, a map or a video frame is close to the worst case PNG handles, and routinely lands between 5 MB and 15 MB. Converting it to JPG or WebP typically cuts it by 90% or more with no visible difference.
PNG is lossless, and that is the whole problem
PNG compresses in a way that is perfectly reversible. It looks for runs of identical pixels and for rows that resemble the row above, encodes the differences, and packs the result with the same DEFLATE algorithm used inside a ZIP file. Decompress a PNG and you get back the exact pixels that went in — not an approximation, the originals.
That property is exactly what you want for a diagram, a logo, or a screenshot of a text editor. Large areas of one colour collapse to almost nothing, and sharp edges between a letter and its background stay crisp, because no information was thrown away to get there.
It is the wrong property for a photograph. In a photograph, adjacent pixels differ slightly and almost randomly — sensor noise, subtle gradients, texture. There are no long runs to collapse and no rows that closely match their neighbours, so PNG finds very little to compress and ends up storing something close to the raw pixel data. JPEG handles the same image by discarding detail your eye does not notice, which is why it can be twenty times smaller.
So the size of a screenshot depends less on how big the screen is than on what was on it. A full-screen terminal might be 200 KB. The same screen showing a photo gallery can be 12 MB.
Your display is capturing twice the pixels you see
On a Retina Mac, a high-DPI Windows laptop, or almost any modern phone, the screen packs roughly two physical pixels into each logical point so that text looks smooth. A screenshot records physical pixels, not logical ones.
The practical effect is that a window you would describe as 1440 pixels wide produces a 2880-pixel-wide file, and since area scales with the square, that is four times as much image data as the same capture on an older display. This is why the same screenshot taken by two colleagues can differ enormously in size for no apparent reason — one of them has a better monitor.
It also explains why a screenshot often looks unexpectedly enormous when you open it. It is not a mistake; the file genuinely contains that many pixels, and downscaling it to the size you actually perceived is a legitimate way to shrink it.
Why the operating system chose PNG for you
macOS, Windows and most Linux desktops all default to PNG for screen capture, and the reasoning is sound even when the result is inconvenient. A screenshot is frequently used as evidence — of a bug, an error message, a transaction — and a lossy format introduces compression artefacts around text that can make small type genuinely harder to read. Defaulting to the format that cannot degrade anything is the safe choice for a tool that does not know what you are capturing.
macOS can be told otherwise. Running `defaults write com.apple.screencapture type jpg` in Terminal, then logging out and back in, switches the default to JPEG. It is a real change worth understanding before you make it, because it applies to every screenshot you take afterwards, including the ones where the text clarity mattered.
The more flexible approach is to leave the default alone and convert the ones that are actually too big. Most screenshots never leave your machine and their size is irrelevant; it is the handful you attach to an email or upload to a form that matter.
What to convert it to
For a screenshot containing a photograph, a video frame or heavy gradients, JPG is the straightforward answer. It is accepted everywhere, and the artefacts that would trouble small text are largely invisible in photographic content. Expect a reduction of 90% or more.
For a screenshot that is mostly interface — text, panels, flat colour — JPG is a poor fit and can actually look worse while saving less than you expect, because JPEG spends its effort on gradients and struggles with the hard edges of type. WebP is the better choice: it compresses flat regions close to as well as PNG and photographic regions close to as well as JPEG, and every current browser reads it.
If the file must stay a PNG because something downstream insists on one, the remaining lever is dimensions. Halving the width of a high-DPI screenshot removes three quarters of the pixels and usually brings it back to a size nobody objects to.
Whichever route you take, a size target is often more useful than a format. If the form you are fighting says 2 MB, converting with that number as the budget gets you the best quality that fits, rather than guessing at a quality slider.
Frequently asked questions
Why is my screenshot bigger than the photo it contains?
Because the photo arrived already compressed as a JPEG and the screenshot re-recorded it as raw pixels. Capturing the screen throws away the original compression and hands PNG a photographic image to store losslessly, which is the case PNG is worst at. A 400 KB JPEG displayed full screen can easily become an 8 MB PNG.
Does converting a screenshot to JPG make the text blurry?
It can, and this is the one real cost. JPEG works on blocks of pixels and smooths sharp transitions, which is where text lives, so small type can pick up faint haloes. At high quality settings it is hard to notice, and for a screenshot dominated by a photograph it does not matter at all. For a screenshot that is mostly small text, use WebP or keep the PNG and reduce the dimensions instead.
Will reducing the size make it unusable as evidence?
For most purposes no, but it is worth thinking about. A converted screenshot is a re-encoding, so it is no longer byte-identical to what the system produced. If a screenshot is being submitted in a formal dispute, keep the original PNG and send the converted copy only where the size limit demands it.
Is there a way to take smaller screenshots in the first place?
Capture a region rather than the whole screen — most of a full-screen capture is usually irrelevant, and the pixels you did not need are the ones costing you megabytes. On macOS you can also change the default capture format to JPEG, at the cost of text sharpness in every screenshot from then on.