Could the first obvious improvement please be its speed?
My god. The local Time Machine backup is slower on a 10gb network than Backblaze over the Internet. It isn’t even close.
I reinstalled my system and attempted for weeks to get Time Machine to complete a first backup. Every time I started it, the progress bar would fill up about 60% and then stall, and eventually kernel panic if the system was left idle for hours. Never happened before I reinstalled, though I have had it randomly decide the backup is corrupt and it has to start over. macOS deserves a better first-party backup feature.
Asking for anything out of Time Machine is a lost cause. It’s essentially a completed and legacy product.
I migrated to Linux + Pika Backup. For photos I use Ente Photos with their managed cloud storage plus a continuous export to my NAS.
Ente is surprisingly well integrated with iOS, you really don’t need to use Apple’s solution. It automatically backs up photos I take in the background.
I backup ~3-4GB a day with Time Machine to my local NAS and it takes less 10 minutes. Albeit it should take 30 seconds if it was maxing out the network speed.
A huge chunk of that 3-4GB is large files that have minor changes. Time Machine doesn't have any sort of delta support so backups the entire file again, like my local Messages or Contacts database. But I think slowness is caused by file count, not file size, so even though it's backing up 3GB+, the total number of files changes isn't that high. (I suspect).
I also use a modified version of this script[0] to identify everything that changed in the most recent Time Machine backup. This is hugely helpful and lets me find unimportant things that are the source of lots of unimportant changes which I can then exclude with `tmux addexclusion -p <PATH>`. For example I exclude 'node_modules' folders for anything that gets regularly updated. This removes ~10k files that would otherwise be wastefully backed up. Speeding it up is much more about reducing file count than total size.