A repository with dozens of custom Nintendo 3DS system fonts to personalize your console! You can also convert your own fonts using GitHub Actions (based on the guide by AromaKitsune).
Custom firmware (CFW) is required to install custom fonts. You can setup custom firmware with this guide.
Note
Some games use the system font to display text in-game. In certain games this means your custom font will show up, and in others, the text may appear corrupted or not show up at all. A list of games that are affected can be found at compatibility.md.
Caution
Custom fonts are safe as long as you have Boot9Strap and GodMode9 installed. Uninstalling CFW while having a custom font installed will brick your console. It is highly recommended that you make a NAND backup before modifying system files.
There are currently 5 fonts available.
Installing Custom Fonts · Uninstalling Custom Fonts
| Preview | Font | Download |
|---|---|---|
![]() |
Pop Happiness | Download |
![]() |
MARIO MAKER | Download |
![]() |
Zelda Glyphs | Download |
![]() |
DETERMINATION Sans | Download |
![]() |
JetBrains Mono | Download |
Important
Installing custom system fonts with FBI is not recommended. Use GodMode9 by following the steps below.
- Download
SytemFont.ciafile and transfer it to your 3DS' (micro)SD Card via FTP or an SD Card reader. - Hold
Startwhile powering on your 3DS. Select GodMode9 if prompted. - Select the
[0:] SDCARD (***)directory. - Navigate to where you saved your
SystemFont.ciafile, then select it. - Select
CIA image options...thenInstall game image. - Press
Ato unlock SysNAND then follow the prompts. PressAafter the font is installed, then press it again. - Press
Startto reboot to the HOME Menu.
Your custom font should be applied. If you get a crash/error message instead, this means your font is not compatible and you will need to restore the default system font.
- Download the original
SystemFont.cia - Transfer the file to your 3DS' (micro)SD Card via FTP or an SD Card reader.
- Hold
Startwhile powering on your 3DS. Select GodMode9 if prompted. - Select the
[0:] SDCARD (***)directory. - Navigate to where you saved the orignal
SystemFont.ciafile, then select it. - Select
CIA image options...thenInstall game image. - Press
Ato unlock SysNAND then follow the prompts. PressAafter the font is installed, then press it again. - Press
Startto reboot to the HOME Menu.
The orignal system font has been restored.
Here are some previews of how you can style your 3DS with custom fonts! These screenshots were taken on a real 3DS console for accuracy.
Click or tap an image to see it in original quality.
| Splatoon | The Legend of Zelda | Undertale |
|---|---|---|
![]() |
![]() |
![]() |
If you are curious about the custom HOME Menu layout in the screenshots above, you can download it from here. (Created by AromaKitsune)
You can convert any compatible font file to an installable SystemFont.cia in as little as ~50 seconds. You have two ways of doing so, GitHub Actions or a Powershell script. GitHub Actions works on any device from a web browser but requires a GitHub account and a direct URL to a font. The Powershell script only requires a Windows machine and lets you convert any font you have (.otf, .ttf, or installed fonts).
Both methods are based on the guide written by AromaKitsune and use the same tools and scripts. None of the tools used are made by me, you can find more info about them below.
Important
Neither of these guides are done yet, they are just placeholders.
- Fork this repository.
- Go to actions
- Enable workflows
- Select 'ctrfont2' then run workflow
- Enter a font url and run workflow
- Clone this repository and extract the .zip
- Run:
script.ps1 -FontFile [Path-to-otf/ttf file] - Wait patiently.
- FontForge
- CTR Font Converter
- FontTool by astronautlevel2 & ihaveamac
- 3dstool by dnasdw and contributors
- CTR_Toolkit by Tiger21820 & 3DSGuy
merge_fonts.pyby dkosmari
First and foremost, this repository would not exist without the hard work of AromaKitsune. Huge shoutout to them for making their original guide on how to make custom fonts (found here) which was used as the basis to make the workflow.
I'd also like to give thanks to OctoRuler, a member of the Custom 3DS Assets Discord server, for cheering me on and helping with the compatibility list.








