Arduino Sleep function

My project involves collecting data every 5 minutes. In addition to collecting data, it will also have a prediction system. In short, some variables are required to persist.

Currently, I'm using the delay function to span the 5 minutes. I know that the delay function doesn't help with power consumption at all. Therefore, I would like to use sleep instead.

I'd rather not risk it with EEPROM (because of the limited write cycles), so I want to ask: how deep can I go into sleep state while preserving variable values?

100,000 write cycles is a lot.
See power saving here:

You can also use a circular buffer to extend the amount of writes you can get out of the EEPROM if you need the values to persist after power-off. Atmel even has an Application Note about that (High Endurance EEPROM Storage).

However, you might not need it. Sleep should preserve all the variable values. It’d be rather pointless if it didn’t.

AVR101 - High Endurance EEPROM Storage.pdf (47.3 KB)