Benchmarks
100 real-world SVG logos exported from Figma, Illustrator, Inkscape, and svgrepo. 902.7 KiB total original size. Same files, same machine, median of 5 runs.
Summary
| Metric | SVGM | SVGO |
|---|---|---|
| Speed (median) | 110ms | 291ms |
| Speedup | 2.6x faster | baseline |
| Compression | 14.9% | 18.2% |
| Compression gap | +3.3 pts | |
| Files where tool wins | 8 | 85 |
| Files tied | 7 | 7 |
Timing
5 runs each, median taken. All runs on the same machine.
| Run | SVGM | SVGO |
|---|---|---|
| 1 | 110.4ms | 282.8ms |
| 2 | 109.8ms | 291.1ms |
| 3 | 107.2ms | 285.3ms |
| 4 | 110.4ms | 307.3ms |
| 5 | 116.4ms | 319.8ms |
| Median | 110.4ms | 291.1ms |
Where SVGM wins
On 8 files, SVGM produces smaller output than SVGO. The largest win is +4.4 pts on buick.svg.
Where SVGM is close
On files with simpler path data and fewer shape-to-path opportunities, the compression gap is under 5 percentage points. SVGM already handles these well with its current pass set.
Where SVGM still trails
Larger gaps are concentrated in path-heavy and transform-heavy files where unimplemented optimizations would help most. The primary gaps are in:
- Shape-to-path conversion (more aggressive rect/circle/ellipse to path)
- Path merging (combining adjacent paths with identical attributes)
- ID shortening and removal
- Deeper CSS optimization (minifying inline styles)
These are all on the roadmap. The compression gap narrows as these passes are implemented.
Per-file breakdown
Compression percentages (higher means more reduction). The gap column shows how much more SVGO compresses than SVGM. Negative gaps mean SVGM wins. Sorted by SVGO advantage.
| File | SVGM | SVGO | Gap | |
|---|---|---|---|---|
| stripe-logo-revised-2016.svg | 6.7% | 32.1% | +25.4 | trails |
| statickit.svg | 0.3% | 22.8% | +22.5 | trails |
| epic-games-logo.svg | 39% | 53.9% | +14.9 | trails |
| vercel.svg | 49.6% | 63.5% | +13.9 | trails |
| midwest-games.svg | 0.6% | 13.7% | +13.1 | trails |
| gog.svg | 8.5% | 19.2% | +10.7 | trails |
| obsidian-icon.svg | 35% | 45.3% | +10.3 | trails |
| rippling-vector-logo.svg | 15.2% | 24.5% | +9.3 | moderate |
| laravel.svg | 8.3% | 17.6% | +9.3 | moderate |
| remedy-entertainment-logo.svg | 14.8% | 23.7% | +8.9 | moderate |
| google-play-console.svg | 52.3% | 60.9% | +8.6 | moderate |
| google-play-store-badge-en.svg | 24.3% | 33.1% | +8.8 | moderate |
| google-workspace.svg | 53.4% | 63.1% | +9.7 | moderate |
| apidog.svg | 48.1% | 55.9% | +7.8 | moderate |
| raycast-logo-vector.svg | 15% | 21.6% | +6.6 | moderate |
| discord.svg | 33.3% | 39.8% | +6.5 | moderate |
| cloudflare-logo.svg | 11.3% | 17.4% | +6.1 | moderate |
| id-nissan.svg | 0% | 6.6% | +6.6 | moderate |
| ping-identity-vector-logo.svg | 15.2% | 20.8% | +5.6 | moderate |
| mirage.svg | 2.8% | 8.1% | +5.3 | moderate |
| perplexity.svg | 54.6% | 59.4% | +4.8 | close |
| obsidian.svg | 49% | 53.8% | +4.8 | close |
| dunkin-donuts.svg | 0% | 4.6% | +4.6 | close |
| nuxt.svg | 21.8% | 26.4% | +4.6 | close |
| opera-gx-icon.svg | 21.1% | 25.5% | +4.4 | close |
| supabase-logo-wordmark-light.svg | 26.6% | 30.8% | +4.2 | close |
| relu-games-logo-black-kr.svg | 13.2% | 17.5% | +4.3 | close |
| supabase-logo-wordmark-dark.svg | 26.5% | 30.6% | +4.1 | close |
| joint-chiefs-of-staff.svg | 0.8% | 4.9% | +4.1 | close |
| moonshot-ai.svg | 57.6% | 61.6% | +4 | close |
| incident.svg | 50.8% | 54.7% | +3.9 | close |
| oxc-dark.svg | 21.6% | 25.5% | +3.9 | close |
| oxc.svg | 21.5% | 25.5% | +4 | close |
| sina-weibo.svg | 22.8% | 26.5% | +3.7 | close |
| vite.svg | 22% | 25.7% | +3.7 | close |
| anthropic-icon.svg | 71.2% | 74.8% | +3.6 | close |
| adobe-corporate-logo.svg | 45% | 48.7% | +3.7 | close |
| oxc-icon.svg | 21.3% | 25.1% | +3.8 | close |
| jack-daniels.svg | 0.9% | 4.4% | +3.5 | close |
| cat.svg | 36.5% | 40.2% | +3.7 | close |
| dji.svg | 7.9% | 11.9% | +4 | close |
| okta-logo.svg | 27.4% | 31.6% | +4.2 | close |
| id-tokenize.svg | 0% | 2.9% | +2.9 | close |
| redbull-logo.svg | 0.9% | 3.9% | +3 | close |
| nestle.svg | 7.8% | 10.6% | +2.8 | close |
| bluesky-logo.svg | 8.5% | 11.4% | +2.9 | close |
| astro.svg | 48.2% | 50.9% | +2.7 | close |
| dia.svg | 0% | 2.6% | +2.6 | close |
| netflix.svg | 1.4% | 4% | +2.6 | close |
| browserstack-logo.svg | 30.5% | 33% | +2.5 | close |
| find-us-on-facebook.svg | 3.8% | 6.3% | +2.5 | close |
| danone.svg | 0% | 2.4% | +2.4 | close |
| chipotle.svg | 1.6% | 3.9% | +2.3 | close |
| itchio-textless-black.svg | 0% | 2.3% | +2.3 | close |
| frmwrk.svg | 1.8% | 4% | +2.2 | close |
| claude.svg | 48.9% | 53.1% | +4.2 | close |
| supercell-logo.svg | 31.1% | 33.8% | +2.7 | close |
| whatsapp-icon.svg | 5.2% | 7.5% | +2.3 | close |
| samsung.svg | 0.6% | 2.6% | +2 | close |
| google-play-download.svg | 1.5% | 3.3% | +1.8 | close |
| airbnb.svg | 2.4% | 4.2% | +1.8 | close |
| thq-nordic-logo.svg | 35.3% | 37% | +1.7 | close |
| kofi-symbol.svg | 19.6% | 21.6% | +2 | close |
| statamic.svg | 0.9% | 2.5% | +1.6 | close |
| steam-icon-logo.svg | 0.4% | 2.3% | +1.9 | close |
| logo-chatgpt-atlas.svg | 15.8% | 18.2% | +2.4 | close |
| renault-logo.svg | 23.7% | 25.7% | +2 | close |
| samsung-wordmark.svg | 37.4% | 38.6% | +1.2 | close |
| playtester-studio.svg | 2% | 3.3% | +1.3 | close |
| under-armour.svg | 2.9% | 4.1% | +1.2 | close |
| tinder.svg | 1.9% | 2.4% | +0.5 | close |
| amazon.svg | 1% | 1.8% | +0.8 | close |
| bmw-logo.svg | 1% | 1.9% | +0.9 | close |
| firefox-logo.svg | 1.2% | 2.1% | +0.9 | close |
| figma-logo.svg | 23.7% | 24.7% | +1 | close |
| google.svg | 0.7% | 1.4% | +0.7 | close |
| megabit.svg | 13.9% | 14.8% | +0.9 | close |
| xcode.svg | 43.1% | 43.8% | +0.7 | close |
| unilever.svg | 0% | 0.6% | +0.6 | close |
| origin-emoji-site-id.svg | 7.5% | 8.1% | +0.6 | close |
| instagram.svg | 2.8% | 2.9% | +0.1 | close |
| kelloggs-red.svg | 0.5% | 0.5% | 0 | close |
| artboard-2.svg | 5.8% | 5.8% | 0 | close |
| artboard-3.svg | 10.2% | 10.3% | +0.1 | close |
| critical-reflex.svg | 0.1% | 0.2% | +0.1 | close |
| forbes-logo.svg | 0.2% | 0.2% | 0 | close |
| vivaldi.svg | 0% | 0.3% | +0.3 | close |
| unsplash-logo-full.svg | 0.3% | 0.4% | +0.1 | close |
| playstation.svg | 0.1% | 0% | -0.1 | ahead |
| stripe.svg | 2.3% | 2.2% | -0.1 | ahead |
| coca-cola.svg | 2.4% | 2.2% | -0.2 | ahead |
| unsplash-logo-full-stacked.svg | 1.3% | 0.5% | -0.8 | ahead |
| icon-kick.svg | 2.4% | 1.8% | -0.6 | ahead |
| oreo.svg | 2.5% | 1.5% | -1 | ahead |
| mcdonalds.svg | 3.1% | 0.1% | -3 | ahead |
| microsoft-edge-logo.svg | 4% | 0.3% | -3.7 | ahead |
| buick.svg | 12.1% | 7.7% | -4.4 | ahead |