|Platform(s)||Windows, Linux, macOS, Android|
|BIOS/Keys||Required for some games and decryption|
Citra is an open-source Nintendo 3DS emulator/debugger written in C++. It's currently able to run quite a few games well, though very few can run at full speed on existing hardware, and most titles have sound issues. It is also available as a libretro core.
Due to its preliminary state, it has not yet had a stable release.
|Latest Nightly and Canary builds|
Some 3DS games make use of shared files from the console's system software. These games will not boot in Citra if said files are not present in the user folder.
These files are not provided by the Citra developers for legal reasons, so they can be downloaded from the Emulator Files page.
Some games require this to bypass bugs in title screens.
- Get the Title ID for the game version you have from here. For example, we'll try with the European version of Zelda: ALBW. Its full Title ID is
- Take the last 8 digits of the Title ID. (in our example,
000EC400) In case this method fails later, take
00000000instead, or make sure the save file and the ROM image are from the same region.
- Make an empty folder named as that partial Title ID (
000EC400). Put inside it another folder named "data", then inside that one put another folder named
00000001, then inside that one put the actual save data files.
- Move the folder with the title ID and put it here:
Emulation for various features is non-existent or not actively worked on enough to be in a usable state. This includes:
- Connectivity features relying on Wi-Fi (Wii U/3DS, Switch/3DS, 3DS Local Multiplayer, 3DS Online...), not in small part due to the setbacks hindering Wi-Fi DS emulation. However, Download Play is emulated.
- New 3DS mode. It is now in a playable state, but some games may still crash with it enabled.
Game image format
Citra accepts games in .3ds, .cia or .cxi format. Furthermore, in Summer 2017, chances are your existing dumps tailor-made for Citra most probably made with the officially recommended tool braindump, which were missing some data yet could be emulated on Citra, have had their compatibility broken as a design choice with no options provided to fix those dumps. You'll have to get new dumps.
While the latest sighax exploit allows for dumping decryption keys to convert (and possibly load) encrypted games in either .3ds or .cia format, development for a solution to allow for this Citra, even one requiring keys from your console, was formerly not actively pursued as a design choice. Tools on 3DS and PC exist to convert those to decrypted .3ds format, and a guide can be found here. However, Citra now allows loading/installing encrypted 3ds/CIA files if the necessary AES keys are provided. The required keys are provided with the 3DS Shared Data downloadable above.
Citra developers decided to implement a telemetry feature uploading to them through Internet connection detailed logs and data about your computer specs and the games you're playing. When booting Citra for the first time, you get asked if you want to enable it.
Citra on Android
This program allows you to control Citra with touch controls on your phone. It is, therefore, possible to use a remote desktop client via your phone, to emulate with Citra and stream from your PC to your phone. See gif.
On May 23, 2020, an official Android release for Citra came out. The minimum requirements are Android 8 (64-bit) and OpenGL ES 3.2 support. Many games achieve playable framerates on a variety of hardware, though the developers recommend an Android device with a Snapdragon 835 chip or better.