Skip to main content
Solved

Is there a back up logic for fonts in RC paywall?

  • August 31, 2026
  • 1 reply
  • 16 views

Forum|alt.badge.img+7

Hello,

We're using a commercial font called "Campton" in our RevenueCat paywall. We're occasionally seeing characters in certain languages render incorrectly (please see the attached screenshot).

One thing we found odd is that if we change the device's system language to that language and reopen the paywall, the characters that were previously broken now display correctly.

For example, with the device language set to Korean, some characters were broken when viewing the Vietnamese paywall. After changing the device language to Vietnamese, those same characters rendered properly.

Because of this, we'd like to understand how fonts are applied to paywalls. For instance, when the configured font doesn't support certain characters, is there any fallback logic — such as falling back to the system font?

Thanks in advance for your help.

 

 

Best answer by alejandra-wetsch

Hey ​@inout-4dd00c

Thank you for reaching out and for the details provided!

This appears to be a limitation in how the OS falls back when a character is not found for the current locale. RevenueCat relies on the OS for Paywall character rendering per locale. 

In your example, since the device is configured for Korean, the OS doesn’t know how to render certain Vietnamese characters, so a fallback character is displayed instead. That would explain why, when you switch your device's language to Vietnamese, the text displays correctly. 

After checking your configuration, I see that you have one Paywall per locale. What you can do instead is have a single Paywall localized for all languages you support. This will prevent the fallback characters from appearing for languages that don’t support other language’s characters. So a device with the Korean language configured will see the Paywall localized in Korean, and so on. You can configure this by checking the Localization menu of the Paywall Editor.

Hope this helps!

1 reply

alejandra-wetsch
RevenueCat Staff
Forum|alt.badge.img+6
  • RevenueCat Staff
  • Answer
  • September 1, 2026

Hey ​@inout-4dd00c

Thank you for reaching out and for the details provided!

This appears to be a limitation in how the OS falls back when a character is not found for the current locale. RevenueCat relies on the OS for Paywall character rendering per locale. 

In your example, since the device is configured for Korean, the OS doesn’t know how to render certain Vietnamese characters, so a fallback character is displayed instead. That would explain why, when you switch your device's language to Vietnamese, the text displays correctly. 

After checking your configuration, I see that you have one Paywall per locale. What you can do instead is have a single Paywall localized for all languages you support. This will prevent the fallback characters from appearing for languages that don’t support other language’s characters. So a device with the Korean language configured will see the Paywall localized in Korean, and so on. You can configure this by checking the Localization menu of the Paywall Editor.

Hope this helps!