The system font on Xiaomi smartphones is not just a design element, but a key factor in the ease of reading and perception of the interface. Many MIUI users find that standard fonts (such as MiSans or Roboto) seem too small, bold or simply uncomfortable. Fortunately, the manufacturer provides several ways to replace them, from built-in tools to manual methods for power users.
In this article, we will discuss all the current methods of changing the font on Xiaomi, Redmi, POCO and Black Shark devices running MIUI 12/13/14 and HyperOS. Particular attention will be paid to the hidden settings of the thematic engine that allow you to install custom fonts without root rights. You will also learn how to avoid common errors that lead to interface failure, and what to do if after changes the text is displayed with characters or squares.
1. Standard method: through the "Themes" menu
The easiest and safest method is to use the built-in functionality of the Themes, which does not require additional programs or superuser rights, but has a limitation: only fonts that are preloaded in the official Xiaomi theme store are available.
To change the font through the standard menu:
- π± Open the Themes app (icon with brush on desktop).
- π Go to the Fonts section (tab in the bottom menu).
- π Scroll through the list of available fonts and select the one you like. Click Apply.
- βοΈ Wait for the process to be completed (the device will restart automatically).
Please note that some fonts in the store are paid (prices from 50 to 300 rubles). Free options are usually marked with a green FREE label. Also, some fonts can be blocked due to regional restrictions - in this case, try changing the region of your Mi Account to India or Indonesia (where the choice is wider).
2. Installation of font through APK-file (no root)
If built-in options are not enough, you can install a font from a third-party APK-This method works on most Xiaomi devices with MIUI 12+, but requires pre-loading a font file in.ttf or.otf format.
Instructions:
- Download your favorite font from trusted sources (e.g. Google Fonts or DaFont) and the file should weigh no more than 10MB.
- Transfer the font file to the phoneβs memory (for example, to the Download folder).
- Install the iFont app from Google Play (or download the APK from APKPure if the Play Market isnβt available).
- In iFont, select Local β find the downloaded file β click Set.
- Confirm the installation and restart the device.
Download the font in.ttf/.otf format
Check the file size (max. 10 MB)
Install iFont or FontFix
Make a backup copy of the current font
Charge your phone at least 30%
-->
β οΈ Note: Some fonts may not support Cyrillic or special characters. Check compatibility before installing by opening a font file on a PC through a standard viewer Windows/macOS. If instead of letters, squares are displayed - the font is not suitable for the Russian-language interface.
3. Manual font change via ADB (for experienced)
For users willing to work with ADB (Android Debug Bridge), there is a way to replace the system font without root rights. This method is suitable for Xiaomi on MIUI 13/14 and HyperOS, but requires care - wrong actions can lead to a bootloop ( looped reboot).
Step-by-step:
- Enable USB debugging in the developer settings (Settings β About Phone β MIUI version (click 7 times) β Additional β For developers).
- Connect the phone to the PC and confirm the debugging permission.
- Download and unpack Googleβs Platform Tools.
- Place a font file (such as custom.ttf) in a folder with the platform-tools.
- Open the command line in this folder and execute the commands:
adb shell
su
mount -o rw,remount /system
cp /sdcard/Download/custom.ttf /system/fonts/
chmod 644 /system/fonts/custom.ttf
mount -o ro,remount /system
rebootOnce rebooted, the new font will be available in the theme settings, and if the su command doesn't work, then the device doesn't have root rights, and this method won't work.
What to do if the phone does not turn on after ADB?
4.Using Magisk and the FontManager module
For owners of devices with an unlocked bootloader and installed Magisk, the most flexible method is available - the FontManager module. It allows you to install fonts without restrictions, including support for Cyrillic alphabet and emoji.
How to determine:
- π Make sure that Magisk is installed on the phone (check through the app).
- π₯ Download the FontManager module with XDA Developers or Telegram channel Magisk.
- π Place the module file (.zip) in the internal memory.
- π Open Magisk. β Modules. β Install it from the vault. β select the file.
- π Reset the device.
After installation of the module:
- Download the font in.ttf format.
- Open FontManager in the Magisk menu.
- Select Install Font and specify the path to the file.
- Apply the changes and reboot.
1. Magisk version (should be 25.0+).
2. conflicting modules (disable other modules associated with system files).
3. Permission to /system folder (execute to ADB: adb shell chmod -R 755 /system/font).
-->
5. Reset font to factory settings
If after experimenting with fonts, the interface began to be displayed incorrectly (hieroglyphs, no characters, rendering errors), you can return the standard font in two ways:
| Method | Action | Whether a reboot is required |
|---|---|---|
| Through the Topics menu | Open Themes β Fonts β Select by Default (MiSans) β Apply. | Yes. |
| Through resetting settings | Go to Settings β About Phone β Resetting Settings β Resetting Theme Settings. | Yes. |
| Through ADB (if a failure occurs) | Run the command:adb shell rm /data/system/theme/fonts.xml | Yes. |
| Flip-flashing | Install the official firmware through the Mi Flash Tool (extreme case). | Yes. |
β οΈ Note: If the icons in the status bar (network indicators, batteries, etc.) are missing after changing the font, this means that the new font does not support system icons. In this case, return the standard font or install the MiuiSystemFontReplacer module from Magisk, which separates the interface fonts and icons.
6. Features for HyperOS and new models
In 2026, Xiaomi began the transition from MIUI to a new HyperOS shell, where the process of changing fonts changed a little:
- π HyperOS Topics menu rebranded as Personalization.
- π The Font section is now in Personalization β Style. β Fonts.
- π« Some older Magisk modules (such as MiuiFont) are not compatible with HyperOS β use the latest version of FontManager.
- π± On Xiaomi 14 models, Redmi Note 13 Pro+ and POCO F6 The locking of the loader is complicated - for ADB-Unlocking methods may be required through the Mi Unlock Tool.
HyperOS also has a new way to install fonts through MTZ-topics (theme files in.mtz format) to use:
- Download. MTZ-theme with font (for example, from the official site of the topics).
- Place the file in the MIUI/theme folder.
- Open Personalization β My themes β Local and apply the theme.
π‘
HyperOS is not recommended for use ADB-methods for replacing fonts if the shell version is newer than 1.0.10.0, this may cause a failure of the MiuiSystemUI service and the need for a complete reset.
Frequent mistakes and their solutions
When changing fonts, users often face typical problems, and here are the most common ones and how to fix them:
- π€ Text is displayed in hieroglyphics: Reason: font does not support Cyrillic. Solution: download the font version marked Cyrillic or Extended.
- β οΈ Phone does not turn on after changing font: Reason: corrupt system file Solution: boot into Safe Mode (clip Volume down when turned on) and return the standard font.
- π΅ Not all apps change font: Reason: Some apps (like WhatsApp or Telegram) use their own fonts. Solution: change the font in the settings of the app itself.
- π Font resets after update: Reason: Update MIUI/HyperOS Solution: Reset the font or use the Magisk module.
If none of the methods worked, check:
- MIUI/HyperOS version (some methods do not work on beta versions)
- Updates for the Topic app or Personalization.
- Free space in memory (at least 500 MB is required to install fonts).