Keeping track of battery level with Arduino nano

Hi everyone,

I am working on a school project. We are using an Arduino Nano to control a circuit that takes in user input via a joystick and vibrates some vibration motors as feedback. We have this part figured out so far (by powering the system via USB from a computer). The final project will need to be powered by a battery (we are thinking of using this one). First off, is this a good battery to use? It seems that anything from 7-12V is ideal, and this is the capacity that we are looking for. Secondly, Is there any way to accurately keep track of the battery level? The system will draw different amounts depending on how often the vibrate signals are sent. Also, it is important that the device can be able to be powered on for some time, drain the battery some amount, power off, power back on later, and remember the battery level.

I have done some research and found that tracking the input voltage from the battery is not always reliable due to different batteries, different temperatures, and different operating conditions.

I have also found this neat part. We have tight size constraints, so we would rather not add parts if they are not absolutely necessary. Also, I couldn't determine if this device will allow the entire system to be powered off while remembering the battery level.

Does anyone have any advice or a solution?

Thank you for the help!

-Matt

"We are using an Arduino Nano".

Note that you're not using a Nano, but a Nano Every. Big difference.
Almost everything posted for the Nano does not apply to this board.
This puppy should have been given different less confusing name.

Most of us don't know anything about the Nano Every (yet).
And the product page is almost useless.
Good luck.
Leo..