Clean sans-serif fonts for app interfaces
Open-license sans-serif families that stay clear in buttons, menus, tables and settings screens, with the weights an interface needs.
Save changes
An interface asks more of a typeface than a headline does. Most of its text is short and small: labels at 12 or 13 pixels, table cells, helper lines under a field. At those sizes the things that matter are open apertures in letters such as a, e and s, a generous x-height, and figures that are easy to tell apart. A capital I, a lowercase l and the number 1 should not look alike in a password field.
Weight range matters almost as much. A product usually needs a regular for running text, a medium or semibold for buttons and a bold for emphasis, each with enough difference to be seen at a glance. Families with a variable weight axis let you pick exact steps instead of settling for the nearest named style. Italics are less important in interfaces than in articles, so a few upright-only families are listed here and marked as such. If your product ships in several languages, check the script coverage noted beside each family before you commit.
-
Inter
Drawn for screens, with nine weights, italics and an optical size axis that adjusts the letters between small and large settings.
-
Roboto
Nine weights with italics plus a width axis, so one family covers dense tables, body copy and large titles.
-
Figtree
Made for web and mobile apps: seven weights from Light to Black with italics on one variable axis.
-
DM Sans
Low-contrast geometric letters with an optical size axis from 9 to 40, for labels and headings alike.
-
Plus Jakarta Sans
Open counters and a slightly tall lowercase keep small labels legible; seven weights from ExtraLight to ExtraBold with italics.
-
Manrope
A variable weight axis from ExtraLight to ExtraBold with Cyrillic and Greek for multilingual products; upright styles only.
-
IBM Plex Sans
Seven weights with italics and a width axis that narrows the letters for compact panels.
-
Source Sans 3
Designed as an interface sans: eight weights from ExtraLight to Black with italics, Cyrillic and Greek.
-
Work Sans
Tuned for on-screen text at 14 to 48 pixels, in nine variable weights with italics.
-
Ubuntu
Made for a desktop interface and hinted by hand for screens; four weights with italics.
-
Nunito Sans
Four variable axes, including optical size and lowercase height, let you tune density without changing family.
-
Geist
A tall lowercase and counters that stay open even in Black, so heavy labels remain clear; nine weights with italics and Cyrillic.
-
Public Sans
A neutral sans made for a government design system, in nine variable weights with italics.
-
Onest
Sits between geometric and humanist, with letters meant to stay distinct in small navigation text; Thin to Black with Cyrillic, upright styles only.
-
Albert Sans
Near-circular bowls and almost even strokes in nine weights with italics; Latin only, with complete Turkish and Polish letters.
-
Be Vietnam Pro
Aimed at technology products, with Vietnamese diacritics drawn as a priority; nine weights with italics as static files.
-
Hanken Grotesk
Nine variable weights with italics, tuned for signage, books and interfaces.
-
Wix Madefor Text
The text cut of a product type system, built for interfaces: five weights with italics and Cyrillic.
Samples load a basic Latin subset of each family. Every family here carries an open license; its page states the terms and offers the original files.
Questions about clean sans-serif fonts for app interfaces
Can I ship these fonts inside a commercial app?
Each family here carries an open license, in most cases the SIL Open Font License, which allows use in commercial products and embedding in apps. The license text comes with every download; read the page of the family you choose for its exact terms.
Should an interface use a variable font or static files?
A variable file gives every weight in one download and lets you set in-between values, which helps when a design system needs a 450 or a 550. Static files are still a sound choice when you only use two or three weights.
Do I need italics for interface text?
Rarely. Interfaces lean on weight and color for emphasis. Italics become useful when the product shows long-form content, such as articles or documentation, inside the same type family.
How do I pair an interface sans with a code font?
Several families listed here have a monospaced sibling drawn to the same proportions. Using the sibling keeps heights and stroke weight consistent between prose and code.