As with computers, when using microcontrollers there are situations where you need to keep changing data even after the controller is restarted or after a longer period without power. The controller working memory (RAM) is preserved only while the controller is running, and data stored in variables is lost on restart. Microcontrollers have several options for storing data, analogous to typical computers. The storage method and the choice of physical medium depend mainly on the nature of the data (format and size) and the availability of storage devices and interfaces.
If you need to store simple parameters, such as user selections, which are small and text-like, EEPROM memory is a good fit. It is convenient because most microcontrollers already have EEPROM built into the chip, so you do not need a separate external device. Of course, separate EEPROM chips can also be used for additional storage. If you need to store or use large data such as images, music files, or large amounts of text, it makes sense to use external storage, where the simplest solution is an SD card. An advantage of using an external SD card is that it can be easily removed and the data transported to a computer. In addition to storage directly connected to the controller, it is also possible to store data in the cloud. This is more complex and requires an internet interface (Ethernet or Wi-Fi), but it enables secure storage and immediate access by other applications. In the end, the method and tools for data storage are up to the developer, and there can be many other criteria.