Skip to main content
Solved

How to replace all font items in one go on Untitled UI?

  • January 10, 2026
  • 1 reply
  • 26 views

MarianneMC

Hey Figma Community!!!

My company is switching our design system to use Untitled UI Figma Library (Variable version). 
I’ve managed to apply our colors using the variable panel but now I’m tackling the font and how boy I’m struggling… 

If you’re familiar with Untitled UI, they’re using Inter as their body typeface. Inter has all the font weight you can imagine, including Semi-bold. In their component lib, they are using the Semi-bold font-weight A LOT. My company font only has Regular, Medium and Bold (no italic) and it’s been perfectly fine. 

My issue is as follow: I was able to replace the tape face in the variables by just renaming the Value for font-family. BUT since Untitled UI used Inter and specifically Inter Semi-bold in a lot of places in their components these instance now have an interrogation point when it calls to semi bold… 

Is there a way, in the Variable panel or the Styles to tell the document that every text layer currently using semi-bold needs to switch to medium?

The only solution I see right now is to go to each element, one by one, and replace the semi-bold weight by medium but we have the Untitled UI pro lib and there is a looooooooot of text layers using semi bold it would take me a month to replace all of them.

 

Thank you for taking the time to read me and any help is much much appreciated!! <3

Best answer by AyseDogan

There’s no global way (yet) to remap a specific font weight (e.g. Semi-Bold → Medium) across an entire library via Variables or Styles alone. Variables can swap families, but they can’t “translate” unsupported weights.

That said, there are a few approaches that can save you from fully manual work, depending on how Untitled UI is structured in your file.

1. Check if Semi-Bold is coming from text styles (not raw text)
If Untitled UI text layers are using text styles (e.g. Heading / Semi-bold), you can:

  • Detach or duplicate those styles

  • Change the font weight in the style definition to Medium

  • Reapply or swap styles in bulk

This only works if the weight is style-driven and not hard-set at the layer level.

2. Use “Select all with same font” strategically
For layers that are not style-based:

  • Select one text layer showing the missing Semi-Bold

  • Use Select all with same font

  • Change the weight to Medium once

It’s still a batch-by-batch process, but much faster than hunting layers manually.

3. Plugin-assisted bulk replacement (with caution)
Plugins like Batch Styler or Font Replacer can help swap weights faster, but they don’t fully understand variables or component logic. I’d recommend testing on a copy of the file first.

4. Long-term fix: align weights at the system level
For ongoing work, the most robust approach is:

  • Map your system’s semantic emphasis (e.g. “Strong / Emphasis”) to Medium instead of Semi-Bold

  • Update component styles so they don’t depend on unavailable weights

It’s less painful once everything flows through styles/components instead of raw text.

5. Why this happens
Figma doesn’t currently have a fallback mechanism like “if weight X doesn’t exist, use Y”. When a font weight is missing, it simply fails which is why you’re seeing the interrogation icons.

You’re definitely not alone here, and this comes up a lot when adapting large third-party libraries like Untitled UI to custom type systems.

Hope this helps a bit and if Untitled UI ever adds variable-aware weight mapping, this problem disappears overnight.

1 reply

AyseDogan
  • New Member
  • Answer
  • January 10, 2026

There’s no global way (yet) to remap a specific font weight (e.g. Semi-Bold → Medium) across an entire library via Variables or Styles alone. Variables can swap families, but they can’t “translate” unsupported weights.

That said, there are a few approaches that can save you from fully manual work, depending on how Untitled UI is structured in your file.

1. Check if Semi-Bold is coming from text styles (not raw text)
If Untitled UI text layers are using text styles (e.g. Heading / Semi-bold), you can:

  • Detach or duplicate those styles

  • Change the font weight in the style definition to Medium

  • Reapply or swap styles in bulk

This only works if the weight is style-driven and not hard-set at the layer level.

2. Use “Select all with same font” strategically
For layers that are not style-based:

  • Select one text layer showing the missing Semi-Bold

  • Use Select all with same font

  • Change the weight to Medium once

It’s still a batch-by-batch process, but much faster than hunting layers manually.

3. Plugin-assisted bulk replacement (with caution)
Plugins like Batch Styler or Font Replacer can help swap weights faster, but they don’t fully understand variables or component logic. I’d recommend testing on a copy of the file first.

4. Long-term fix: align weights at the system level
For ongoing work, the most robust approach is:

  • Map your system’s semantic emphasis (e.g. “Strong / Emphasis”) to Medium instead of Semi-Bold

  • Update component styles so they don’t depend on unavailable weights

It’s less painful once everything flows through styles/components instead of raw text.

5. Why this happens
Figma doesn’t currently have a fallback mechanism like “if weight X doesn’t exist, use Y”. When a font weight is missing, it simply fails which is why you’re seeing the interrogation icons.

You’re definitely not alone here, and this comes up a lot when adapting large third-party libraries like Untitled UI to custom type systems.

Hope this helps a bit and if Untitled UI ever adds variable-aware weight mapping, this problem disappears overnight.