Converter · No upload
WEBP to PNG, locally
Convert WEBP images to PNG while retaining transparency. Processing runs in your browser without file upload. After the page has loaded, you can also test conversion offline.
Undecodable WEBPs fail, with browser reasons where available; images beyond canvas capacity fail rather than saving smaller. One PNG per file: an animated WEBP keeps its first frame only, and the row says so. Transparency is kept; the picture is written back as 8-bit sRGB pixels, an embedded colour profile is not carried, and EXIF and XMP are removed. Takes .webp.
The sample is a 240×120 WEBP generated in this tab, with a translucent stripe. The PNG retains transparency without a painted background. PNG encoding is lossless, but the decode/canvas path is not a promise to preserve every source value.
How this converter works
The File API reads the selected WEBP into memory. A browser with WEBP support decodes its pixels and alpha, and the page draws them onto a transparent canvas. The canvas encodes PNG and the page offers a download link. PNG encoding adds no lossy compression, but it does not reverse earlier decoding or colour-conversion changes. The file is processed locally without an extra decoding library.
WEBP-to-PNG conversion runs in the browser. The site serves static pages and code, without a server-side converter or database. Its Content-Security-Policy restricts connections to the site’s own origin. That limits request destinations; it does not by itself establish that files are private or prevent the site from changing later. The methodology page describes checks you can run on the loaded converter.
PNG output can be larger, but size depends on the image and source encoding. This tool exports only the first frame of animated WEBP and reports it. Canvas re-encoding does not copy the source metadata. Output is 8-bit sRGB and the embedded colour profile is not carried; lossless PNG encoding is not a promise to preserve every source colour or metadata field. Unsupported or damaged WEBP inputs get named failures with the browser’s reason where available. Images beyond canvas capacity fail instead of being resized without notice.