For developers
Image tools for developers: WebP, srcset, Base64, EXIF
Inspect image size, convert to WebP or AVIF, remove EXIF, generate an HTML picture tag with srcset, and convert small icons to Base64. JSON catalog included. Nothing is uploaded.


Image to Base64
Turn an image into a Base64 data URI for HTML or CSS.
Remove EXIF from Image
Strip EXIF, GPS location, and camera metadata from photos.
Image Inspector
See file type, pixel size, file weight, and aspect ratio.
Picture Tag Generator
Generate an HTML picture tag and srcset from one image.
Convert Image
Convert photos to WebP, AVIF, JPEG, or PNG.
Round Image Corners
Round corners or crop to a circle. Export PNG with transparency.
Convert to WebP, inspect images, and generate srcset
The modern stack will not save a 4 MB PNG in a hero. Lighthouse will mention it. Users will not. They will bounce. The correct sequence is boring: know what you have, size it to the layout, pick a format the browser likes, give the browser more than one width, and stop shipping a camera’s home address in EXIF.
Image inspector reports type, dimensions, megapixels, and bytes per pixel. If bytes per pixel are high on a photograph, you are looking at an unwise PNG or an uncompressed JPEG. Convert to WebP or AVIF and keep a JPEG sibling. If the layout is known, picture tag generator cuts width variants and writes the tag with those filenames. That last part matters. Srcset copied from a blog post with 800w and 1600w is a lie unless those files exist.
Remove EXIF and GPS from photos
JPEG from a phone often includes GPS, camera model, and a thumbnail. Some CMSs pass it through. Remove EXIF from an image re-encodes the pixels and leaves the trail behind. Do this before a user-generated photo goes onto a public profile.
Image to Base64 and round image corners
Image to Base64 is for icons you would otherwise request before CSS arrives. It is not a transport for blog images. Round image corners bakes a circle or a radius into a PNG when CSS mask support is not enough - emails, some PDFs, some older WebViews.
When you automate a pipeline, use a CLI. When you are in a ticket with three screenshots and a stubborn LCP, this tab is faster than installing anything. Compress and resize remain in the main toolkit because developers need them as often as everyone else.
Generate an HTML picture tag with srcset
Generate widths on the picture tag page so filenames match downloads. Then host those files. Lying in srcset is worse than a single img.
<picture>
<source type="image/avif" srcset="hero-800.avif 800w, hero-1600.avif 1600w">
<source type="image/webp" srcset="hero-800.webp 800w, hero-1600.webp 1600w">
<img src="hero-1600.jpg" srcset="hero-800.jpg 800w, hero-1600.jpg 1600w"
sizes="(max-width: 800px) 100vw, 800px"
width="1600" height="900" alt="Pine forest at golden hour"
decoding="async">
</picture>Inspect image size and type in the browser
If you already have the File object, the browser knows dimensions without a round trip. That is what the inspector wraps. The same idea in a few lines:
const img = new Image();
img.onload = () => {
console.log(img.naturalWidth + 'x' + img.naturalHeight, file.type, file.size);
};
img.src = URL.createObjectURL(file);Frequently asked questions
Is browser compress as good as MozJPEG?
Usually no, at the extreme. Browser encoders are good enough for most site assets and worse than a tuned CLI for a homepage LCP image you will keep for a year. Use ImageAdjust for the pile. Hand-tune the two heroes.
Should I convert images to Base64 data URIs?
Only when the asset is tiny and critical to first paint - a 1 KB icon, not a photograph. Data URIs do not cache separately and inflate HTML. The Base64 tool shows you the cost before you paste.
Do you offer an API that accepts uploads?
No, on purpose. There is a JSON catalog at /api/tools. Image processing stays in the browser so we never hold your files.
Should I put width and height on every img?
Yes. It reserves space and stops layout shift. Use the pixel size of the file you serve, not the CSS display size. The inspector reports those numbers.
When is an HTML picture tag better than img srcset?
When you have more than one file: a modern type (WebP or AVIF) plus a JPEG fallback, or several widths in srcset. One file does not need the extra markup.
Does canvas output keep EXIF metadata?
No. Re-encoding in the browser writes a new file without the original wrapper. Use Remove EXIF when that is the whole job, or rely on compress/convert for the same side effect.