Image Converter Online Free

📷 File Converter Free Forever

Image Converter Online Free

Convert any image to JPG, WebP, or PNG. Resize, set quality, cap the file size. Everything runs in your browser. No upload, no signup, no watermark.

PNG → JPG JPG → WebP WebP → PNG GIF → JPG BMP → WebP SVG → PNG + more
🖼️

Click to upload or drag an image here

Any image file works as input

PNG • JPG • WebP • GIF • BMP • SVG • AVIF

Output format
Quality
Compression 88%
Resize
Mode
Background fill (fills transparent areas)
File size cap (optional)
Max size KB (quality auto-adjusted to fit)
Original
Original
Converted
Converted
About This Tool

How this image converter uses the Canvas API and a binary search to hit a target file size

This tool loads your image into a native <img> element, draws it onto an HTML <canvas>, and reads the pixels back out through canvas.toDataURL() in whichever format you chose. That single browser API is what does the actual format conversion and quality-based compression, no external image library is involved. Everything happens on your device using a FileReader to load the file as a data URL, so the image itself is never transmitted anywhere.

The conversion sequence

Step 1 Load and decode The file is read with FileReader.readAsDataURL(), and that data URL is assigned to a new Image object’s src, letting the browser’s own decoder handle whatever source format you uploaded.
Step 2 Compute target dimensions Depending on the resize mode, the tool calculates output width and height: exact values, a max width or max height with the other dimension scaled proportionally, or a straight percentage scale of the original.
Step 3 Draw to canvas A canvas is sized to the target dimensions, filled with your chosen background color first, then drawImage() paints the source image scaled to fit. The background fill matters for formats without transparency, like JPEG.
Step 4 Encode with toDataURL The canvas is serialized with canvas.toDataURL(mimeType, qualityFraction). PNG output ignores the quality argument entirely since PNG is a lossless format with no continuous quality dial.
// size-cap binary search, from the tool source function findQualityForCap(canvas, mime, capKB, startQ) { var lo = 1, hi = startQ, bestQ = startQ, bestURL = ; while (lo <= hi) { var mid = Math.floor((lo + hi) / 2); var url = canvas.toDataURL(mime, mid / 100); var kb = Math.round((url.length * 3 / 4) / 1024); if (kb <= capKB) { bestQ = mid; bestURL = url; lo = mid + 1; } else { hi = mid – 1; } } return { dataURL: bestURL, quality: bestQ }; }

That function is why the optional target size field can hit a specific kilobyte ceiling. Rather than guessing one quality value, the tool binary searches the 1 to 100 quality range, encoding the canvas at each midpoint and checking the resulting data URL length, capped at 15 attempts. If even the lowest quality setting cannot get under your target, it falls back to quality 1 and shows a warning naming the best size actually achieved, rather than silently failing.

Output formats and their real MIME types

FormatMIME typeQuality slider
JPEGimage/jpegActive, lossy compression
PNGimage/pngDisabled, lossless only
WebPimage/webpActive where the browser’s canvas encoder supports it
Byte size is estimated from Base64 length, not measured directly. The tool computes output file size as dataURL.length * 3 / 4, the standard Base64-to-binary ratio, rather than converting to an actual Blob and reading .size. This estimate is accurate to within a few bytes because Base64 padding characters introduce only minor rounding, but it means the displayed size is a calculation, not a direct filesystem measurement, until you actually download the file.
Resize modes

None, max width, max height, exact width and height, or percentage scale, each computed with its own aspect ratio logic before the canvas is sized.

Background fill

A color picker sets the canvas fill before drawing, so converting a transparent PNG to JPEG produces a solid background instead of black or corrupted pixels.

Before / after comparison

Original and output dimensions, format, quality and byte size are shown side by side, with a computed percentage saved or added.

Canvas 2D drawImage + toDataURL Binary search quality for a size cap JPEG / PNG / WebP output No upload, FileReader only

Image format documentation

Format decisions in practice

Converting a phone’s HEIC or PNG screenshots into JPEG for a website that only accepts that format, shrinking product photos under a marketplace’s kilobyte upload limit using the target size field, resizing a batch of images to a max width for a blog, or producing a WebP version of an asset to cut page weight without leaving your desktop.

Common Questions

Questions About Image Converter Online Free

You can upload PNG, JPG, WebP, GIF, BMP, SVG, and AVIF as input. The output options are JPG, WebP, and PNG. That covers the most common conversions: PNG to JPG, JPG to WebP, WebP to PNG, GIF to JPG, SVG to PNG, and more.

Yes. No account, no signup, no credit card, no watermark on the output. The tool runs entirely in your browser so there is nothing to log in to and nothing to install.

No. All conversion happens inside your browser using the HTML5 Canvas API. Your image file never leaves your device. This also means there is no server-side file size limit and the tool works offline once the page has loaded.

WebP is the better choice for web use. It produces files 25 to 35 percent smaller than JPG at the same visual quality, and it is supported in all modern browsers. Use JPG when you need broad compatibility with older software or when sharing files outside of a browser context. Use PNG only when you need lossless quality or transparency.

For most images, 80 to 88 percent gives an excellent balance of file size and visual sharpness. Use 90 to 95 for product photos or portfolio images where quality is critical. Drop to 60 to 75 when file size matters more than sharpness, such as thumbnails or background images.

JPG does not support transparency. Any transparent pixels in the source image are filled with the background color you choose in the settings, which defaults to white. If keeping transparency is important, convert to WebP or PNG instead, both of which support alpha channels.

Yes. Before converting you can choose a resize mode: max width, max height, exact pixel dimensions, or a percentage scale. The resize and format conversion happen together in one step, so the downloaded file is already the right size.

Enter a target in KB and the tool runs a binary search across quality values to find the highest quality that still fits under your cap. If the image cannot reach that size even at the lowest quality, the tool tells you the smallest it could achieve so you know what to expect.

Privacy Overview

Cookies let this site remember your preferences and show us which tools people actually use. Full detail sits in our Privacy Policy.