I ended up with subtly different syntax. I have a real HDD on /mnt/data and I backing up to it so I must exclude it from the backup:
sudo rsync -aAxXh --exclude={'dev','lost+found','media','mnt','proc','run','sys','tmp'} --stats --info=progress2 --delete / /mnt/data/armbian-backup
The main difference though is that I just include the directory names. Prefixing them with / would make you think they are root relative whereas they are actually relative to the source directory. Suffixing them with /* would cause the directories themselves to be included in the backup, just empty.
It took me a lot of experimentation to realise the syntax --exclude={'list','of',directories','to','exclude'} is finicky about quoting individual excludes. I spent some time trying --exclude-from=filename but never got that to work satisfactorily.