I’m having trouble matching font sizes between my iOS app and design mockups. When I get designs from my team, the text looks bigger in the design software than it does in my actual app.
I’m setting up my text labels like this:
textLabel.font = UIFont(name: "CustomFont-Regular", size: 16)
Even though I’m using the exact same font size that’s shown in the design files, my app’s text renders noticeably smaller. Both the design tools and iOS use points as their measurement unit, so I expected them to match perfectly.
Has anyone else run into this issue? What’s the best way to make sure the text in my app matches what the designers intended?
I’ve hit this exact problem tons of times. Design tools calculate font metrics differently than iOS does. They use different baseline calculations and line spacing, so fonts look bigger in design software even at the same point size. Check your font’s actual metrics in FontBook - some custom fonts have weird ascender/descender ratios that make them render smaller than you’d expect. Try bumping your font size up 1-2 points to compensate. Also, test your font loading. If the custom font fails to load, iOS silently falls back to system fonts, which are definitely smaller. Add some debug logging to make sure your custom font’s actually loading.
This happens because design tools and iOS render fonts completely differently. Most design software uses their own text engines, which makes text look bigger and bolder than it actually appears on iOS. iOS adds its own font smoothing and anti-aliasing that makes text look thinner. Have your designers export mockups at actual device resolution and compare them side-by-side with the simulator. Sometimes it’s not the font size at all - it’s just how different background colors or spacing make the text look smaller. Also check that your designers are using the exact same font file you’re bundling in the app. Even tiny differences between font files can mess up how they render.
yea, make sure your dpi is correct in design tools. they often default to 72dpi but ios uses better displays. and double check your custom font is loading right, if it fails, ios will use the system font which could look smaller.