Remove EXIF, GPS, XMP and IPTC by rewriting the container rather than re-encoding the picture, so the pixels are byte-for-byte identical and the file gets smaller. Selective removal, batch mode and a ZIP.
Initializing in your browser…
Read every metadata block a file carries: EXIF from its TIFF structure, IPTC from its IIM records, XMP from its packet and the ICC colour profile from its header, with GPS converted to decimal degrees with the reference letters applied.
Remove a background with a model or with a colour key that has a real alpha ramp, scored against a corpus whose right answer was chosen rather than found.
Turn an image into a data URL whose payload is decoded again and compared byte for byte with the file, with the media type taken from the file's own signature rather than its extension and the size cost of embedding stated in full.
A photograph with GPS in its EXIF, an XMP packet, an IPTC record and a Display P3 colour profile.
Input
beach.jpg · 102.2 KB · EXIF 631 B, XMP 568 B, IPTC 268 B, ICC 614 B
Output
beach-clean.jpg 101.0 KB removed EXIF, XMP, IPTC kept ICC colour profile (byte identical) pixels 0 of 480,000 changed
The container is rewritten and the compressed image data is copied across untouched, so the decoded pixels are identical and the file gets smaller by exactly the size of what went. Drawing the picture on a canvas and saving it again, which is the usual way, changed 83 percent of the pixels at quality 92 and replaced the colour profile with the browser own sRGB.
Remove EXIF, GPS, XMP, IPTC and comments from a JPEG, PNG or WebP without touching the picture. The container is rewritten and the compressed image data is copied across byte for byte, so the pixels are identical, the file gets smaller, and the colour profile survives unless you ask for it to go.
Remove GPS coordinates, camera serial numbers and timestamps without giving up a generation of image quality.
Strip the private data and keep the ICC profile, which a re-encoding tool cannot do.
Keep the one tag that decides which way up it is shown, and drop the rest.
Batch mode, one ZIP, and a record of what was removed from each file.
Metadata is removed by rewriting the CONTAINER, not by redrawing the picture. A JPEG and a PNG are both a sequence of blocks with the metadata in blocks of their own, so removing metadata means removing blocks and copying the compressed image data across untouched. The consequence is the one that matters: the pixels are byte-for-byte identical, checked by decoding both files and comparing every pixel, and the file gets smaller rather than larger.
The usual browser approach is to draw the image on a canvas and save it again. That does remove the metadata, and it also does four things nobody asked for. Measured on a test photograph: at a quality setting of 92 it changed 83.3 percent of the pixels, the worst channel by 44 levels, for a PSNR of 40.2 dB, so "remove metadata" was quietly also "lose image quality". Asked for PNG output it turned a 65 KB JPEG into a 654 KB file, ten times the size, and a 21.9 KB PNG into 43.2 KB. It replaced the colour profile: a canvas is sRGB, so a Display P3 image loses its gamut (1.6 percent of that test image's pixels are outside sRGB and cannot survive) and the JPEG that comes back carries the browser's own 456-byte sRGB profile, so a file asked to be free of metadata is not. And a canvas has a size limit past which it silently draws nothing at all. None of that happens here, because nothing is ever decoded.
The blocks are read from the documents that define them: ITU-T T.81 clause B.1 for the JPEG marker structure, CIPA DC-008 for the Exif APP1, Adobe's XMP specification part 3 for the XMP APP1, ICC.1:2010 annex B.4 for the ICC APP2 segments (a profile over about 65 KB spans several), the Photoshop image resource block for the IPTC APP13, W3C PNG clause 5 for PNG chunks, and the RIFF layout for WebP. Each block is listed with its name, its size and what it can give away, and you choose what goes. The colour profile is kept by default, because it is not private and removing it changes how the picture looks.
One kind of metadata changes what people see when it is removed. The EXIF Orientation tag tells a viewer to rotate the picture, and every current browser obeys it, so dropping the EXIF block from a photograph taken sideways leaves it shown sideways. The tool says so before it happens and offers to write a minimal EXIF block carrying the Orientation tag and nothing else: one tag, no camera, no serial number, no date, no GPS. Verified by reading the output back with piexif, that is exactly what survives.
After removal the output is re-read with the same parser that found the metadata in the first place, and the page lists what is left rather than asserting that nothing is. Batch mode does the same to many files at once and packages them as a ZIP with a README recording what was removed from each. A format this cannot rewrite is named as such rather than quietly re-encoded. Everything runs in the browser; the file is never uploaded.
No, and this is now literally true rather than approximately: the compressed image data is copied byte for byte, so the decoded pixels of the output are identical to the input. Every case in the test suite asserts a maximum per-pixel difference of exactly zero. A tool that redraws the picture on a canvas cannot say that: measured at quality 92, that approach changed 83.3 percent of the pixels of a test photograph.
Because only blocks were removed. Nothing was re-compressed, so the size drop is exactly the size of the metadata that went.
It is not private. It says which colours the numbers in the file mean, and removing it can change how the picture looks, especially for a wide-gamut image. You can remove it, and then the file really has nothing left.
The EXIF Orientation tag is what tells a viewer to rotate the picture, and it lives in the EXIF block. If you remove the whole block, that instruction goes with it. Tick "keep the orientation" and the output carries that single tag and nothing else.
JPEG, PNG and WebP, which is what container rewriting can reach. Anything else is named rather than quietly re-encoded, because re-encoding is a change to the picture and this tool does not make one without saying so.
No. The file is read, rewritten and offered back entirely in your browser.
Images are decoded, edited, and exported entirely inside this browser tab. No originals, exports, or metadata are uploaded.