Xdg is also, .cache (xdg cache dir) for data that can be cleared on reboot allowing you to use tempfs for it (of course you can't because a bunch of shit uses it as a persistent cache for things they should be putting in .local/share/. (Xdg data dir).
This whole mess is so utterly fucked I gave up caring and just let the mess be.
Why? Using it makes macOS more similar to Linux, which I think is a good thing. It surely makes it easier to share configuration files between Macs and Linux machines.
Honestly, I don't see a single upside to using macOS's specific directories over .config/.cache/.local.
I'd prefer a multigigabyte download went in state or data dirs if you don't want to lose it regularly.
I also prefer XDG because it separates between XDG_DATA_HOME, XDG_STATE_HOME, and XDG_RUNTIME_DIR. The macOS convention does not.
I prefer `~/.config`, but it’s not where such configurations go on the Mac (and there are multiple applications that do it differently).