Skip to main content

Typography Tokens

Typography tokens define the typographic styles used across our products, ensuring consistency and coherence in text presentation. These tokens cover various typographic properties such as font size, line height, font weight, letter spacing, and more.

We adhere to property names defined in React Native's Text Style Props specifications.

Responsive to Screen Sizes

Typography tokens are provided as responsive by default as adapting to different screen sizes ensures optimal readability and user experience across our products.

We use "mobile-first" approach, meaning that typography styles are defined for the smallest screen size first and then progressively enhanced for larger screens.

In case some property should remain the same across all screen sizes, we skip defining separate tokens or copy same values for larger screens. This approach keeps the door open for future adjustments without enforcing unnecessary differentiation up front.

Naming Convention

<propertyName>.<propertyValue>

Default Typography Tokens

warning

The following set of tokens represent the default combinations that should cover most use cases in our design system. No values are strictly enforced here, however, we recommend using these as a starting point for your products.

Font Family

Token nameValue
fontFamily.headlineInter
fontFamily.displayInter
fontFamily.bodyInter
fontFamily.labelInter
fontFamily.monospacemonospace

Font Size

Token namedefaultphonetabletdesktop
fontSize.title32px40px48px56px
fontSize.hero28px32px40px44px
fontSize.headline24px28px36px40px
fontSize.subheadline22px24px28px32px
fontSize.lead20px20px22px24px
fontSize.perex18px18px18px18px
fontSize.body16px16px16px16px
fontSize.label14px14px14px14px
fontSize.caption12px12px12px12px
fontSize.footnote10px10px10px10px

Font Style

Token nameValue
fontStyle.italicitalic
fontStyle.normalnormal

Font Weight

Token nameValue
fontWeight.thin100
fontWeight.extraLight200
fontWeight.light300
fontWeight.regular400
fontWeight.medium500
fontWeight.semiBold600
fontWeight.bold700
fontWeight.extraBold800
fontWeight.black900
fontWeight.extraBlack950

Letter Spacing

Token namedefaultphonetabletdesktop
letterSpacing.title0.80.80.80.8
letterSpacing.hero0.60.60.60.6
letterSpacing.headline0.40.40.40.4
letterSpacing.subheadline0.30.30.30.3
letterSpacing.lead0.30.30.30.3
letterSpacing.perex0.20.20.20.2
letterSpacing.body0.10.10.10.1
letterSpacing.label0.10.10.10.1
letterSpacing.caption0.10.10.10.1
letterSpacing.footnote0.10.10.10.1

Line Height

Token namedefaultphonetabletdesktop
lineHeight.title36px40px40px56px
lineHeight.hero32px32px32px44px
lineHeight.headline28px32px32px44px
lineHeight.subheadline24px28px28px36px
lineHeight.lead24px26px26px32px
lineHeight.perex24px24px24px24px
lineHeight.body20px20px20px20px
lineHeight.label16px16px16px16px
lineHeight.caption16px16px16px16px
lineHeight.footnote16px16px16px16px

Up Next


Spacing Tokens

Spacing tokens define consistent spacing values used for margins, paddings, and gaps in our components.

Spacing Tokens ->