Remove unused defs (removeUselessDefs)
Removes unreferenced items in <defs> (gradients, symbols, paths) after other cleanup passes.
What Remove unused defs does in SVGO
SVGO applies removeUselessDefs as part of its plugin pipeline. In SVGOMG the toggle is labeled Remove unused defs (enabled by default). Optimization runs entirely in your browser — files are not uploaded to a server.
Use the SVGOMG optimizer with Show original to compare before and after. If output looks wrong, disable this plugin first, then re-enable related transforms one at a time.
When to enable
Default; defs bloat is common in design-tool exports.
When to disable
When defs are referenced dynamically at runtime in ways SVGO cannot see.
Watch out for
Run after path and ID cleanup for accurate reference tracking.
Try it in SVGOMG
- Open svgomg.net and load your SVG (file, paste, or demo).
- Find Remove unused defs in the Features panel (
removeUselessDefs). - Toggle the plugin and compare the preview; download when satisfied.
SVGO Plugin Guide
Browse the SVGO Plugin Guide or read the full SVG optimization walkthrough on the homepage.