SVG Optimizer
Optimize static SVG using SVGO, choose coordinate precision and compare file sizes. Preserve viewBox and IDs while removing active content.
Reduce SVG markup
Paste SVG or choose a UTF-8 file, then run SVGO optimization. It can simplify shapes, paths, colors and redundant markup. The output keeps viewBox, IDs and descriptive text. Copy the optimized XML or download optimized.svg, and compare the byte counts shown with the result.
Precision controls decimal rounding, so a lower value can change fine details. Inspect the preview at the size you actually need. Optimization does not guarantee a smaller file, and sanitizing active input may intentionally change its behavior. An unavailable preview does not prevent downloading valid optimized markup.
Static SVG and resource limits
Scripts, event attributes and XML stylesheet instructions are removed. DTD, entity declarations, animation/SMIL, foreignObject, external resource URLs and remote CSS/font imports are rejected. Local fragment references for gradients, masks and filters are supported; bounded embedded PNG/JPEG images are allowed.
Limits: 200,000 input/output characters, 20,000 nodes, 64 levels, 20 million total embedded raster pixels and a 10-second worker deadline. Uploaded SVG files are limited to 200,000 bytes. Rendering is performed as an image, not inserted as interactive page markup.
Questions & answers
Will my IDs be renamed?
No. ID cleanup is disabled so references from local SVG content or your application are not intentionally renamed. Still compare the optimized asset in its final context.
Are files uploaded to a server?
No. Files, input text and results stay in your browser. Required engines, fonts and support files load from this site.