Adobe Illustrator - $20/month, $240/year
Illustrator is great. Multi-platform, has pretty much anything you can want. Obviously it supports SVG. Except it’s a subscription. If you can afford it, go for it. It’s a no-brainer.
For me, now that I only make the occasional diagram for this blog, it doesn’t make sense though.
Sketch - $99/year
Sketch is clearly for designers, and naturally supports SVG because it’s a vector editor. Again, it’s a subscription though, and macOS only.
I enjoyed using the trial, and if I was a designer, this is a steal.
Affinity Designer - $50
Affinity Designer is also a vector editor often touted as a low-cost alternative to Illustrator or Sketch, because it doesn’t require a subscription. It supports SVG.
One issue is that even though Affinity Designer supports both macOS and Windows, you cannot transfer licenses between them. For $50, that doesn’t seem like a big issue.
Inkscape - free
Inkscape is free and multi-platform - and that’s all the positive things I have to say about it.
The UI is terrible, especially on macOS, where it needs X11. The tools are imprecise. Just very frustrating, and I wouldn’t recommend it.
draw.io - free
I like draw.io a lot, and would recommend it. The online version invokes Google Docs, and does integrate with Docs and other cloud storage. I love the editor, especially for diagrams. Arrows are easy to attach between shapes, and stay attached.
Highly recommended
LaTeX/TikZ and dvisvgm - free
This is complicated and technological, but produces beautiful diagrams. It’s also great because TikZ diagrams can be re-used in LaTeX documents and presentations. If you know LaTeX, I think this is also a great route to go. Here’s a tutorial on how to do that.
Honourable mentions
svgo optimised SVG files by stripping out unnecessary rubbish, so they are smaller. Because it works with SVGs, it can be used with any of the tools mentioned. It’s actually the reason I have npm
installed.