Drop an SVG, get a minified version with a byte-for-byte before/after readout — and a one-click toggle to camelCase attributes for React.
Paste or drop SVG
418 BOptimized
Hit Optimize to see the cleaned-up output.
Paste or drop an SVG
Textarea accepts any raw SVG; dropzone accepts .svg files up to 4 MB.
Optimize
SVGO runs locally with the default preset (viewBox preserved) for maximum savings.
Pick an output
SVG or React JSX — the latter camelCases attributes and strips the XML prologue.
Copy or download
Everything is in your browser; save as .svg or .tsx with one click.
No. SVGO ships a browser build that runs entirely on the client — no server round-trip. Drop a file, optimize, copy, close the tab.
Depends on the source. Files from Figma or Sketch often have 40–70% overhead (metadata, <title>, <desc>, ids, unused groups). Hand-written optimized SVGs might save only 1–3%. The byte counter shows the exact reduction.
It converts kebab-case attributes (stroke-width, stroke-linecap, clip-path, etc.) to camelCase, removes the XML prologue and comments, and keeps the content paste-ready for a React component file.
The default preset is conservative — it preserves <filter>, <mask>, <clipPath>, gradient defs, and elements with ids. If you have aggressive animations, eyeball the output before shipping.
App icon maker
Design an iOS or Android app icon from 150+ Tabler icons and the full Tailwind palette.
JSON formatter
Pretty-print, minify, sort keys, validate — plus one-click TypeScript type inference.
Translating screenshots into every locale is what lokal was built for. Upload once, ship to every store.
Explore lokal