S...Battery replacement here runs from around $180-$200 USD which is way too much for me to spend on a 2 year old phone.
A lot of that price quote probably involved just basic labor costs. It's not the battery itself, it's the process involved. Replacing the battery in a S7 isn't just about removing basic mechanical fasteners (screws and clips), it's dealing with all the glues and adhesives when tearing the phone down, and when done properly (a S7 adds a lot of waterproofing seals to cope with), to put everything back together. A more detailed guide shown here:
https://www.ifixit.com/Guide/Samsung+Galaxy+S7+Battery+Replacement/90299
Well something is definitely up. Yesterday I unplugged it at 6:30 am and set it down on standby. 4 hours later I turned it on and it was at 96% so it only lost about 1% per hour. Today I unplugged it at about 11 am. I just went to use it and it was at 98%. Clicked on one text and it immediately jumped to 94%. I don't know if some hardware is causing the wonky discharge or if the battery meter is off.
Try wiping the system cache partition and see if that makes any difference in how the battery gauge works. Clearing the system cache won't affect your stored files or settings, it's just a cache so it only contains temporary, working files. Just in case some file in it became corrupted and won't get deleted automatically as it should, manually wiping the entire cache partition won't hurt anything and can only help. You need to boot your phone up into its Recovery Mode to do this -- note that it's a text only interface so you need to use the indicated buttons to navigate through the various menu options. Basically, start up in Recovery Mode, select the 'wipe cache partition' option, then reboot normally. This link has details on what to do:
https://www.android.gs/reboot-recovery-mode-for-galaxy-s7/
If that doesn't make any improvement, you could also try starting up your S7 into its Safe Mode. When running in Safe Mode, only the base Android operating system gets loaded so no third-party apps or services get auto-loaded as they normally do. See if your battery gauge isn't so quirky while running in Safe Mode. If there is an improvement, that's an indicator that there is some app you might have installed that's causing the problem. Note that while running your phone in Safe Mode that a lot of things take more time to start up since they're not pre-loading in the background during startup -- gives you a clearer picture on the battle between making your user experience more seamless with all kinds of things already loaded into memory vs. taxing the phone's basic system resources with services that may or may not be called upon. Anyway, instructions on how to boot up into Safe Mode here:
http://www.tomsguide.com/faq/id-3050665/boot-safe-mode-samsung-galaxy.html
Hopefully one of the above suggestions will result in an improvement but if not, since you've already tried Factory Resets, a last resort measure would be to re-flash the stock ROM. Flashing a ROM on smartphone is essentially similar to re-installing the operating system on a computer. On a typical computer OS there's an Install disc or image, that auto-detects and then installs the necessary OS files and required drivers (very simplified summary) but with smartphones, there are instead ROMs. For something like Windows, the Install disc can be applied to wide range of different hardware configurations from multiple vendors. With a ROM, it's a different story. Each ROM is specific to its corresponding model of phone. So you don't want to flash a Moto G6 ROM onto your S7, nor do you want to flash a Galaxy S8 ROM onto your S7.
Go here, locate the ROM that
exactly matches your specific model of S7. Don't mix and match, only use the ROM that corresponds for your model and your carrier.
https://updato.com/firmware-archive-select-model?exact=1&q=GALAXY S7
Once you download the ROM (probably be well over 1GB in size), follow these directions:
https://updato.com/how-to/how-to-install-an-official-samsung-stock-firmware-using-odin