Toolvore

JPG to PNG Converter

Convert JPG photos to lossless PNG, ready for editing or for tools that require PNG.

This tool runs entirely in your browser. Your data is never uploaded, never stored, and never leaves your device.

Re-saves a JPEG as a PNG, for the editors, printers and upload forms that refuse anything else. PNG is lossless, so no further compression damage accumulates from here on — but the damage the JPEG has already done is permanent, and the file will usually get much larger.

How to use it

  1. 1Choose the JPG; its name, byte size and pixel dimensions are shown.
  2. 2Press Convert to PNG. There is no quality setting, because PNG records every pixel exactly.
  3. 3Download it, or keep it as a working master while you edit.

Example

Input
A 1600 × 1067 JPEG photo, 124.0 KB
Output
A 1.19 MB PNG — 879% larger, at the same 1600 × 1067 pixels

The growth is worst on exactly the files people bring here most. A 1000 × 700 interface screenshot saved as a 70.9 KB JPEG came out as a 365.1 KB PNG, while saving that same screenshot straight to PNG in the first place gives 104 KB: the JPEG's artefacts break up the flat blocks of colour PNG compresses well, and PNG then has to record that noise faithfully. Converting also cannot add an alpha channel — the output is fully opaque, so if you came looking for a transparent background you want the Remove Image Background tool, not a change of format. One file per run, and nothing is resized.

What happens to your data

This tool runs entirely in your browser. Your input is never uploaded to a server, never stored, and never logged. The JPEG is decoded into an image element, drawn once onto a canvas and written back out by the browser's PNG encoder. That canvas step is also what drops the original's EXIF block, so the PNG you download carries no camera model, timestamp or GPS coordinates from the photo you put in.

Last updated August 2026

Something has refused your JPEG. A print shop's uploader lists PNG and nothing else, a design tool imports PNG cleanly and mangles everything else, or someone has asked for a PNG because that is what the last person sent. The conversion takes seconds; the question is whether it solves the problem you have.

Two situations bring people here and only one ends well. The first is a compatibility wall: a system takes PNG and refuses JPEG, and re-saving is exactly the right move. The second is a repair job — a photo mailed, resized and re-saved until it looks soft, in the hope that a lossless format will tidy it up. It will not. JPEG discards detail when it saves, permanently, and PNG's losslessness only promises that nothing further is lost from this point on. You are preserving the current state, blemishes included.

The mistake that follows is treating the PNG as an upgrade and deleting the original. Keep both — the JPEG is smaller, and wherever the destination accepts it, it is still the better thing to send.

The other expectation to put down is transparency. PNG can carry an alpha channel, which is why people arrive hoping a change of format will lift a subject off its background. A JPEG has none to bring with it, so no re-encode can invent one. That is a cut-out job for an editor or a background remover; saving as PNG is its last step, not its first.

How it works

Toolvore decodes the JPEG with your browser's own image decoder, draws it once onto an off-screen canvas sized to the original's pixel dimensions, and asks that canvas to hand back a PNG. That is the whole mechanism, and it runs on your machine — the file is read from disk into the page and never posted anywhere. Because the picture is rebuilt from decoded pixels, what you download is a new file rather than the old one relabelled, and nothing but the image itself is carried into it. The encoding belongs to the browser, so there is nothing to tune: no compression level, no bit depth, no interlacing switch. Where it is weakest is at scale. The whole decoded bitmap sits in memory at once, so a very large photograph on a modest device can fail outright, and you are told it could not be converted rather than handed something broken.

Common use cases

  • Meeting an upload form that lists PNG and rejects JPEG
  • Preparing an image for a design tool that imports PNG reliably
  • Making a lossless working copy before a run of edits
  • Giving a printer or supplier the format their spec sheet names
  • Passing a photo into a script or library that expects PNG
  • Sending a file to someone who has asked specifically for a PNG

Frequently asked questions

Does converting a JPG to PNG improve the quality?

No. JPEG compresses by discarding detail the eye is least likely to miss — fine texture, gentle colour transitions, crisp edges. Once the file is saved, those values are gone from it. The PNG records what survives, exactly, including the blocky patches and halos compression leaves. What you gain is a floor rather than a lift: from here on, saving again costs nothing more. If the picture already looks soft, the only real fix is a less-compressed original — the camera file, or a copy that has not been through a messaging app.

Why is the PNG so much larger than the JPEG?

Because the two formats solve different problems. JPEG is allowed to approximate, so it describes a photograph in broad strokes and accepts small errors everywhere. PNG has to reproduce every pixel exactly. Photographs are where the gap is widest, since almost no two neighbouring pixels in one are truly identical. Flat graphics and screenshots convert more gently, because PNG compresses large areas of a single colour well. If size is what matters and nothing is demanding PNG, keep the JPEG — a lossless copy of a lossy photograph is a big file that looks no better.

How do I get a transparent background from a JPG?

Not by changing the format. Transparency lives in an alpha channel, an extra value per pixel saying how much of what is behind shows through. JPEG has no such channel, so every pixel in the file is opaque and there is nothing for a converter to preserve. A transparent background means deciding which pixels to remove — a selection made by hand in an editor, or by a background remover. PNG is the format you save into once that decision exists. A white rectangle behind your subject is real image data, not a viewer quirk.

Is my photo uploaded anywhere when I convert it here?

No. The image is read from your disk into the page, decoded, drawn on a canvas and encoded again, all by your browser, and the download link points at that result held in the tab's own memory. No copy goes to a server, because the conversion has no server step. To be complete about it: the page records anonymous usage events — that a conversion was attempted, and how many bytes went in and came out — which is a count, not the picture. The file and its name stay on your machine, and closing the tab discards the result.

Can I convert a folder of JPGs in one go?

Not here — this handles one image per run, so dropping several in means the first is the one picked up. For a handful of files that is a few repeats; for a hundred it is the wrong instrument, and a desktop tool or a short script will serve you better. One detail that helps when you are doing several: the download keeps the original name with the extension swapped, so a photo that arrived as beach-hut leaves as beach-hut.png rather than something generic you then have to rename. Nothing carries over between runs.

Why will my file not load?

Two different failures look alike. If what you chose is not an image at all, you are told to choose an image file. If it is an image your browser cannot decode, you are told it could not be read and may be corrupt. That is rarely corruption — usually it is a format your browser has no decoder for. HEIC photos straight off an iPhone are the common one, and want converting to JPG first. Camera raw files such as CR2 or NEF fail the same way. Odd extensions like .jfif or .jpe are ordinary JPEG data and normally work.

Should I keep working from the PNG or the original JPEG?

Work from the PNG, archive the JPEG. Every time a JPEG is opened, edited and saved again it goes through the lossy encoder afresh and the damage accumulates — generation loss, which is why a photo put through several rounds of crops and re-saves looks worse than the edit count suggests. Converting once to PNG and editing that stops the bleeding, since every save after it is exact. Keep the original JPEG anyway: it is the smallest true record of what came out of the camera, and the best place to start again if you have to.

When does something genuinely require PNG rather than JPEG?

Where sharp edges or transparency are the point. Logos, icons, app artwork, interface assets and screenshots of text all belong in PNG, because JPEG smudges high-contrast boundaries and cannot hold a transparent background at all. Documentation and bug trackers ask for PNG for the same reason — small text stays legible. Photographs are the other way round, and a specification demanding PNG for photography is usually inherited from a template rather than chosen. Follow a rule you are given without explanation, but expect a much larger file for anything camera-shaped.