The SVG logo on the curl.se front page shrunk from 8658 to 2787 bytes with @vsz's magic, with no visual difference!
@bagder @vsz on my opinion it could be not more 200B (10x less). I will do it manually and let you know. It will be intresting investigation. If I am wrong I also let you know.

@bagder @vsz I would able to shrink curl logo to 898 bytes (if it will be in one line it will be 883 bytes) What was used:

  • not use decimal numbers
  • use a line instead a path poliigon for letters
  • use style to optimize size

A logo is not identical but very close.

Here is code and bellow is an attachment

<svg viewBox="0 0 343 103" xmlns="http://www.w3.org/2000/svg"> <style>path{fill:none;stroke:#093754;stroke-width:11.5;stroke-linecap:round;stroke-linejoin:round;} circle{fill:none;stroke:#093754;stroke-width:4}</style> <path d="m51,44c0,0-18,0-20,0-2,0-7-0-10,2-3,2-8,6-10,8C9,56 6,59 6,64 6,68 6,74 6,77c0,4 1,6 4,9 5,4 7,6 10,8 3,2 5,3 11,3 6,0 20,0 20,0 M68,44c0,0 0,41 2,46 2,5 4,6 9,7 3,1 6,1 11,0 8-4 15-10 23-14V97 44 m18,0v53l0-34c0,0 12-11 19-16 2-2 5-3 8-3 3,0 5-0 8,0 4,0 6,1 8,4 2,2 2,6 2,10 m4-38h17v77h-17 34"/> <path style="stroke-linecap:butt" d="M251,89 295,14"/> <circle cx="229" cy="34" r="7"/> <circle cx="229" cy="66" r="7"/> <circle cx="247" cy="94" r="7"/> <circle cx="297" cy="9" r="7"/> <path style="stroke:#0f564d;stroke-linecap:butt" d="M287,89 331,14"/> <circle style="stroke:#0f564d" cx="284" cy="94" r="7"/><circle style="stroke:#0f564d" cx="334" cy="9" r="7"/> </svg>
@joter @vsz amazing!

@bagder @vsz Thank you, it could be converted to svgz by

gzip -k "curl-logo.svg" mv "curl-logo.svg.gz" "curl-logo.svgz"

and the size will be 468B

@joter @bagder by removing newlines, applying svgo and removing the filename with gzip -n (or using stdin), and using -9 (not making a diff here), it goes to 399 bytes.
@vsz @joter the question is if a gzipped version of this is better than just using the plain version and allowing the brotli compression most browsers already use
@vsz @joter it seems brotli can compress it even more
@bagder @joter some webservers have the option to serve pre-compressed static files if they are present next to the original. nginx supports `gzip_static on;`, `brotli_static on;`. (zstd too but needed an external module last time I checked) They can be created with a build step.
@vsz @joter in our case for curl.se, the actual files are cached by the CDNs for six months anyway, so having the compression done by the origin server on demand is a negligible "cost" I think.
@bagder @joter question if the CDN supports this. In case of nginx files need to be named `filename.ext.gz` and `filename.ext.br`.

@vsz @joter we don't need that trick. If we want to provide it compressed we just add that magic to our end's Apache config. My point is however that since it already is brotli compressed to most users, I don't think it does much use.

Did you check how small your svgo'ed version gets with the best brotli compression?

@bagder @joter with `brotli -q 11` it goes to 349 bytes.