Okay, so I’m going to go out on a limb here and say what I can/think I can read.
Tom Johnson
11

It’s alright, we’re all learning and exploring here so there’s no “right answer” for this problem.

Figma export tries to be smart by using the <defs> inside the SVG to avoid repeating colours/paths, but that usually means much more complex code and in this specific case is totally avoidable since every path is actually unique.

I might have been a bit unfair to Figma in my initial comment as I realised that I had the SVGO Compressor plugin enabled in Sketch. I’ve updated the file with the appropriate exports for each software and the basic Sketch export is actually a bit worse than the Figma one.

Having that said, anyone can install the plugin and it’s actually maintained by the core team so it could be considered part of the recommended Sketch configuration anyway.

I’ve used SVGO in the last step of the optimisation for both apps and the results are very similar. With the Figma file I also used another SVG optimiser called SVGito as an alternative to going to Sketch and re-export it so we could actually achieve almost the same optimisation level by only using SVG optimisers.

This could actually be a valid workflow for us: Figma -> SVGito -> SVGO but right now SVGito isn’t open-sourced so we can’t really build any script to use this workflow to optimise Figma SVG files automatically, but I also feel that this should/could be done in the app.

The author of SVGito also commented on the code of the SVG export in Figma, but in our case it worked just fine so might depend on the complexity of the file.

The good news is that they can both integrate these optimisations into their product so it could just be a matter of time until we have optimised SVG code exported by default (Sketch is pretty close).

Regarding your last question, I guess it really depends on how much importance you need to give to the assets size. For the web that’s definitely more relevant than native apps.