Converter · No upload
PNG to JPG, privately
Drop in PNGs and download compact JPGs at the quality you choose. The conversion runs entirely inside your browser — nothing is uploaded, the network meter below proves it live, and it works with your wifi off. Transparency is flattened onto white, because JPG has none.
The dial applies to files you add after changing it — files already converted keep the quality they were made at (drop them in again to re-convert).
How this converter works
Your browser decodes PNG natively — no extra code is needed. When you choose a file, the File API opens it in memory, the browser turns it into raw pixels, and this page draws those pixels onto a canvas that has first been filled white, so transparent regions land on a clean background instead of JPG's default black. The canvas then re-encodes to JPG at the quality you set on the dial, and the result comes back as a download link. Every step runs in the tab; this site has no server that could receive a file.
Worth knowing precisely what that instrument does, since a measurement you cannot interrogate is only another claim. It listens to PerformanceObserver, the resource-timing feed built into your browser, and tallies entries logged from the moment your first file is opened. It therefore says nothing about the moments before then, and resource timing never surfaces WebSocket connections. This page opens none, though you should not have to take our word for that either. Which is why the decisive check is not a number on our own screen: disconnect from the internet completely and convert anyway. The tool behaves identically, having been stored locally on your first visit. Both limits and both remedies are detailed on the methodology page.
The honest limits: JPG's savings come from discarding detail, and that loss is irreversible — keep your PNG originals for anything that matters. Sharp edges, text, and flat-color graphics show JPG artifacts soonest; photographs tolerate compression best. Transparency cannot survive the trip (flattened onto white, as disclosed), and re-encoding strips metadata from the output — including PNG text chunks and any embedded location data.