Converter · No upload
Convert PNG to JPG on your device
Convert PNG images to JPG at the quality you choose, with transparent areas filled white.
The sample is a 240×120 PNG drawn in this tab, with a translucent stripe. JPG has no transparency, so that stripe lands on white, and the re-encode is lossy at the quality you set.
Files already converted keep the quality they were made at; add them again to convert at a new setting.
Undecodable PNGs fail, with browser reasons where available, and so do images too large for the browser’s canvas, which are not shrunk to fit. One JPG per file, default 0.92; quality changes affect pending encodes. An animated PNG becomes one still; the row does not flag it. Transparency is flattened onto white, 16-bit input becomes 8-bit, and text chunks, location data and colour profile are dropped. Takes .png.
How this converter works
The File API reads the selected PNG into memory, and the browser decodes it without an extra converter library. The page fills a canvas with white and draws the image over it, so transparent areas land on a white background. The canvas is then encoded as JPG at the selected quality and offered as a download link, all inside the tab.
The network meter uses PerformanceObserver, your browser’s resource-timing feed, to count the entries logged from the first file opened. Earlier page requests are not included, and neither are WebSocket connections, which this page does not open. For a separate check, watch the browser’s Network panel, or disconnect after the page has loaded and convert a file: a conversion that finishes offline needed no server. The methodology page explains the meter’s limits and the other checks.
JPG encoding is lossy, and the detail it discards cannot be restored. An animated PNG gives a single still JPG, with no choice of frame, and the output is 8-bit sRGB. Keep the PNG original for later editing or if you need the motion.