"Don't use a macro unless you need to" is good advice, but when you -do- need to, having macros around is lovely.
Yes, you can achieve the same thing by typing out what would've been the expansion yourself, but in cases where macros are a good idea the expansion would've been sufficiently prone to mistakes when tweaking it that maintaining the macro is an improvement.
Of course, don't use a macro if you don't need one. But when you do hit a case where you need one, it's better than using/writing external tooling to solve the problem.
> None of the claimed advantages really hold up under scrutiny.
This doesn't follow.
Same in all lisps. The advantages of having macros vary on a case-by-case basis, but one thing is quite sure: the number of programmers collaborating on a project is inversely proportional to how much you should use macros. For a solo dev, especially when doing science-y stuff, they're invaluable.
You rarely actually need syntactic abstractions, but when you do you need macros.