Convert PNG to WebP

Same picture, smaller file — ICC profiles, text chunks and timestamps stripped, and the real output format verified instead of assumed.

🔒 100% client-side · zero server upload

On by default. Portrait photos are rotated upright first, so removing EXIF never turns them sideways.

Results

    Everything runs in this browser tab. Nothing is uploaded.

    Malaysian rules & edge cases

    What is removed, per format. Metadata is stripped at the container level, so the image data itself is never touched by the strip:

    FormatBlocks removedWhat stays
    JPEGAPP1 Exif/XMP, an MPF preview index, other vendor APPn blocks, COM comment, and the second image some phones append after the end of the fileJFIF (APP0, with its embedded thumbnail cut out), the ICC colour profile, the quantisation/huffman tables and the compressed image data
    PNGeXIf, tIME, tEXt / iTXt / zTXt, private vendor chunksIHDR, PLTE, tRNS, IDAT, IEND and the colour chunks (iCCP, sRGB, gAMA, pHYs), so the file still opens and still prints at the right size
    WebPEXIF (camera, date, GPS), XMPThe ICCP profile and the image data; the VP8X flags are rewritten to match what survives, so readers do not look for blocks that are gone

    Orientation is applied to the pixels, not just deleted. EXIF orientation runs 1–8; 6 is the common "phone held upright" case and means "rotate 90° clockwise to display". This tool rotates the pixels on the way in and then drops the tag, so a portrait photo stays portrait. That is the one bug every "remove EXIF" script ships with.

    Size rules. The longest-edge presets never upscale, and every canvas is capped at 16.7 megapixels — a 48 MP photo is scaled down before it is drawn, because mobile Safari refuses a larger canvas. Target-size mode bisects a quality range of 0.32–0.92 — about four encodes instead of nine — and says so when the file still misses the number. PNG ignores the quality setting because it is lossless.

    Honest limits. WebP output needs a browser that can actually encode it; when it cannot, the file is saved as JPEG and named .jpg — never a PNG renamed .webp. HEIC is not decoded here: set the iPhone camera to Most Compatible, or convert the HEIC to JPEG first. The colour profile is kept, not stripped: deleting it would quietly turn a Display P3 photo into washed-out sRGB. A re-compressed file does come back without one, because the browser's encoder writes none — that, not the strip, is where a very wide-gamut photo loses a little saturation.

    Before and after

    Before

    IMG_2481.jpg — 4032×3024 — iPhone 15 Pro — 2026-10-18 09:41 — GPS 6.3521, 99.8021 — orientation 6
    produk-shopee-01.png — 1080×1080 — Photoshop 25.0 — no camera, no GPS

    After

    IMG_2481-min.jpg — 1200×1600 portrait — camera, GPS and date removed — orientation applied to pixels
    produk-shopee-01-min.jpg — 1080×1080 — metadata removed, pixels untouched

    How it works

    1. Drop your photos into the box, or press "Load sample data" for a Langkawi photo that really carries camera, GPS and orientation tags.
    2. Choose the format, the longest edge and either a quality or a target size in KB. Portrait photos are rotated upright before anything is saved.
    3. Press Run, check the before/after size for every file, then download them one by one — the files never left this tab.

    FAQ

    How much smaller is WebP than PNG?

    For screenshots and flat graphics the difference is often small, because PNG is already efficient at flat colour. For photographs it is large — usually 25–35% smaller than JPEG at the same visual quality. Test one file before converting a whole folder.

    Why does the tool save JPEG instead of WebP on my iPhone?

    Safari on iOS cannot encode WebP in a canvas; asking for image/webp returns PNG silently. The tool checks the MIME type of the bytes it actually received and re-encodes as JPEG, naming the file .jpg. A PNG called .webp would break the next program that reads it.

    Does WebP keep transparency?

    WebP supports an alpha channel, but this tool re-encodes through a canvas, which flattens transparency onto white for JPEG output and keeps it for PNG. If you need the transparent PNG untouched, keep the format as PNG — the file gets the metadata stripped and the pixels stay lossless.