Just a minute...(/)
We are currently optimizing your images. Please wait a moment as we ensure the highest quality results for you.
Great, we have successfully compressed your images.
Images Optimized.
We are currently optimizing your images. Please wait a moment as we ensure the highest quality results for you.
Images Optimized.
Open an SVG in Notepad and you will see the whole thing: tags, numbers, text. That is what the format is. No pixels, no photograph, just instructions for drawing shapes. It matters because it changes what compression means here. Nothing gets squeezed or approximated. The redundant text simply goes, and the drawing is untouched.
Almost none of it is the artwork. Export a logo from Illustrator, Figma or Inkscape and the file arrives carrying the editor’s paperwork: a generator comment, a DOCTYPE nobody has needed since 2008, an XML declaration, a metadata block describing the document in RDF, layer names, and a style block full of classes that no element uses. On a real logo we tested, all of that came to about two thirds of the file. The shapes were the small part.
Then there are the numbers. Editors write coordinates at full floating point precision, so a rectangle that sits at 10 and is 180 wide gets stored as 10.000000 and 180.00000000. Multiply that across every point in every path and the decimals alone can outweigh the drawing.
This is the part people worry about for no reason. An SVG has no resolution. It is drawn fresh at whatever size it is displayed, whether that is a 16 pixel favicon or a billboard. Removing a metadata block does not change any of that. The file that comes back scales exactly as far as the one you uploaded, looks identical at every size, and is still fully editable in the program you made it in.
The cleanup is conservative by design. It targets things that have no effect on rendering.
| Removed | Kept |
|---|---|
| Editor comments and generator strings | Every shape, path and curve |
| The metadata block and its RDF namespaces | Colours, gradients and opacity |
| DOCTYPE and the XML declaration | Text elements and fonts |
| Definitions nothing refers to | Filters, masks and clip paths in use |
| Empty groups and layers | Transforms and viewBox |
| Excess decimal places in coordinates | Anything that changes what you see |
An SVG is usually a logo or an icon, which means it sits in the header of every page on a site and loads before anything else. Photos load late and lazily. Icons do not. Trimming a few kilobytes off a header logo is worth more to a page’s speed score than trimming the same amount off an image halfway down the article, because the header is what the browser waits on before it can paint.
The cleanup shortens the internal id attributes inside the file. References inside the same SVG are updated to match, so gradients, masks and clip paths keep working and the drawing renders exactly as before. What it cannot know about is code outside the file. If your SVG lives in an icon sprite that other pages point at, or if a stylesheet or a script reaches in and grabs an element by its id, those hooks are worth testing after you swap the file in. For a plain logo or an exported icon, which is most SVGs, there is nothing to check.
Sometimes an SVG is not really a vector. Place a photo on the artboard in Illustrator, export as SVG, and the picture gets embedded as a long base64 string inside the XML. The file might be two megabytes with a single shape in it. Cleaning the markup will not touch that block, because it is not markup. If your file barely shrinks and it started life with a photo in it, that is why, and the fix is to take the image out and compress it as a JPEG or a PNG separately.
There are no options, no compression level and no advanced tab. Upload the file, get it back cleaned. Several at once works the same way, and you can take them one by one as they finish or download the whole set as a ZIP.
Files travel over an encrypted connection, get cleaned, and are deleted from the server an hour later. Nothing is kept, and nothing is used for anything else.
Working with a logo that also exists as a bitmap? Compress PNG handles the transparent version and Compress WebP the modern one. And if the SVG turned out to have a photograph buried inside it, Compress JPG is where that picture should go.