RetroArch · Multi-system

Where RetroArch keeps your saves.

RetroArch keeps in-game saves as .srm files and save states as .state files, in a saves and a states folder. By default each core gets its own subfolder, such as saves/Snes9x/.

Save folders on each platform

Windows

Saves
<RetroArch folder>\saves
States
<RetroArch folder>\states

The folder you installed or unzipped RetroArch to. For Steam, that's steamapps\common\RetroArch.

Mac

Saves
~/Documents/RetroArch/saves
States
~/Documents/RetroArch/states

The Steam version keeps them under ~/Library/Application Support/RetroArch instead.

Linux

Saves
~/.config/retroarch/saves
States
~/.config/retroarch/states

Linux Flatpak

Saves
~/.var/app/org.libretro.RetroArch/config/retroarch/saves
States
~/.var/app/org.libretro.RetroArch/config/retroarch/states

Steam Deck with EmuDeck

Saves
~/Emulation/saves/retroarch/saves
States
~/Emulation/saves/retroarch/states

Links to the Flatpak's folders. EmuDeck turns off sorting by core, so files sit directly in these folders.

Steam Deck with RetroDECK

Saves
~/retrodeck/saves/<system>/
States
~/retrodeck/states/<system>/

Sorted by the ROM's folder (saves/snes/, saves/gba/), not by core.

Android (Google Play)

Saves
Android/data/com.retroarch/files/RetroArch/saves
States
Android/data/com.retroarch/files/RetroArch/states

RetroArch Plus uses com.retroarch.aarch64. Builds from retroarch.com may use RetroArch/saves at the root of your storage; check Settings, Directory on your device.

Find or change the folder

Settings, Directory, Save Files and Save States show the folders and change them. They are savefile_directory and savestate_directory in retroarch.cfg.

Settings, Saving decides the subfolders: Sort Saves into Folders by Core Name, Sort Saves into Folders by Content Directory, Write Saves to Content Directory, and the same three for save states.

Moving saves between devices

  • A save's name must match the ROM's: Metroid Fusion (USA).gba loads Metroid Fusion (USA).srm.
  • The subfolder must match too. EmuDeck's RetroArch has no core folders, a default install has them, and RetroDECK sorts by system; set the same Sort options on every device.
  • Different cores for one system can write different save formats. Use the same core everywhere.
  • Save states load only in the same core, and often only the same core version. In-game saves are safer.

Sync RetroArch saves between devices

RetroArch has Cloud Sync built in. Point it at SaveSync and it uploads your saves and states each time you close a game, and downloads the newest each time it starts, on Windows, Mac, Linux, Steam Deck, Android, and iPhone.

See the step-by-step guide, or the one for your device.

SaveSync keeps the newest 20 versions of every save, so a bad sync or an overwritten slot is one click to undo.

Questions

What is an .srm file?
RetroArch's name for a game's in-game save (battery save or memory card), written by the core. Many standalone emulators call the same data .sav; renaming usually works for cartridge systems.
Why can't RetroArch find my save on another device?
Usually the ROM's file name differs, or one device sorts saves into core folders and the other doesn't. Match both and the save loads.
Where are RetroArch's save states?
In the states folder next to saves, as .state, .state1, .state2, and so on, with .state.auto for the automatic state.

Checked against RetroArch's documentation and source in October 2026: config.def.h (RetroArch), platform_unix.c (RetroArch), platform_darwin.m (RetroArch), EmuDeck's setup script, RetroDECK's setup.

Pick up where you left off.