Backups that take 16 hours are certainly normal if you have lots of small files top update and copy (lots been 200,000 or so). Diagnosing failing / failed drives is generally easy for a technician since the system logs IO errors to the system log and hangs to Library/Logs. On the end user level, you won't be able to run a filesystem check / repair disk / erase disk using Disk Utility without errors when a drive is failed or failing. (Unfortunately you may get no warning other than a slowdown before it fails, so good on you for having a backup now)
For backups, the HDD access time is what limits things - doubly so if your source and destination are spinning drives or worse, a remote network volume. HDD might handle several hundred IOPS (input and output per second) best case and the backup process throttles IO usage to not impact the running system so if the backup ran in the foreground what might take an hour might stretch to dozens since it's throttled.
Now that your backup is done, how long does it take to make a backup if you quit all the apps running, and don't have any launch when you log in and then perform this test.
- Log out of your account (and any others if you fast user switch)
- Log in and start no apps except the terminal app in Utilities folder
- Run a blocking backup and time exactly how long it takes
The command for that is:
time tmutil startbackup --block
On a 2015 MacBook with SSD backing up to a new USB 3.0 HD, you might see this for a very small change in data from the last backup interval on a smoothly running system:
mac:~ me$ time tmutil startbackup --block
Total copied: 61.64 MB (64633164 bytes)
Avg speed: 39.21 MB/min (685202 bytes/sec)
real 2m26.550s
user 0m0.046s
sys 0m0.046s
If you post a couple of these with actual times we can discuss if it's worth erasing the drive and repartitioning it and running some speed benchmark tests or if you just need an SSD instead of HDD or if this is a sign the drive is failing and you'll be super glad you have a backup to restore once you replace that drive with a new HDD that runs at full speed.