Image Converter
Converts photos to PNG, JPG, or WebP in the browser, without uploading the file.
Choose an image file
Input is any image the browser can decode. Output is PNG, JPEG, or WebP.
Image preview will appear here
Pro Tip: Converting to WebP can reduce file size by up to 80% without losing quality, making it perfect for website performance.
How the conversion runs
The page draws the image onto a canvas at the decoded pixel width and height, then calls canvas.toDataURL with the selected type and no quality argument.
- File: The file input accepts an image and keeps it in the page.
- Format: The menu is PNG, JPEG, or WebP.
- Convert: The canvas is painted and encoded in the browser. The page does not time that step.
- Download: The download name is converted-image plus the chosen extension.
Where the conversion runs
The image is drawn to a canvas in the browser and saved in the chosen format. The file is not uploaded. The page still loads site assets. Speed depends on the image size and the device.
What each format does here
JPEG
canvas.toDataURL('image/jpeg') is called with no quality argument. The browser default is usually 0.92. The page does not compare the result with the original file.
PNG
canvas.toDataURL('image/png') is lossless for the pixels drawn on the canvas. A color profile and EXIF are not copied.
WebP
canvas.toDataURL('image/webp') is called with no quality argument. The page does not measure a percentage smaller than PNG or JPEG.