← All guides

PNG vs JPG: Which Format Should You Use for Transparent Images?

A guide from the NextG Design team

The short answer: if you need any part of the image to be transparent, use PNG. JPG cannot represent transparency at all — the format simply has no way to store it, no matter what settings you export with.

Why JPG can't do transparency

JPG was designed decades ago for compressing photographs efficiently, and every pixel it stores has a color value — there's no fourth "how see-through is this pixel" channel in the format itself. PNG, by contrast, supports an alpha channel alongside red, green, and blue, so each pixel can be anywhere from fully opaque to fully transparent, with smooth partial transparency in between (which matters for soft edges like hair).

What happens if you export a cutout as JPG anyway

If you take an image with a transparent background — like the output of the Background Remover — and save or convert it to JPG, every transparent pixel has to be replaced with some solid color, almost always plain white or black, because JPG has nowhere else to put it. The result looks like your subject is now sitting on a flat white (or black) rectangle instead of nothing at all, which defeats the entire point of removing the background in the first place. This is the single most common reason people are confused about "where did my transparency go."

When JPG is actually the better choice

PNG isn't strictly "better" — it's better for a specific job. For a normal photo with no transparency (a landscape, a portrait against its original background, anything from a camera), JPG usually produces a much smaller file at a visually similar quality, because its compression is tuned for photographic detail. That's why the Image Upscaler, which works on ordinary photos rather than cutouts, is a case where either format can make sense depending on whether file size or maximum quality matters more to you.

Quick rule of thumb

This is also why the Background Remover exports to PNG by default — it's the only common format that can actually hold the result you asked it to produce.