A typeface in the brand type scale
Brand typography is the type system a brand commits to: the chosen typefaces and the rules that assign them to display, body, and code. It is voice made visible. The same sentence in a geometric sans and in a high-contrast serif reads as two different companies, which is why type selection is a brand decisionDecisionStrategyA recorded decision with context, rationale, and consequencesView reference → before it is a design one.
Typographic identity predates the web by centuries, but the constraintConstraintStrategyA constraint entityView reference → that shaped digital brand type was practical: for years a website could only safely use the handful of fonts already installed on the reader's machine. A brand's chosen typeface lived on print and died at the browser.
The @font-face rule broke that limit by letting a page load its own font files. The format problem followed, and WOFF, developed by Mozilla and collaborators around 2009 and adopted as a W3C Recommendation, consolidated a fragmented field. WOFF2, using Brotli compression, now covers the overwhelming majority of traffic and is the format most teams ship.
That shift moved typography from a print afterthought into a first-class brand assetBrand AssetBrand IdentityA brand asset (logo, image, etc.)View reference → that has to be licensed, hosted, and performance-budgeted. A self-hosted web font costs download weight; a hosted service costs a third-party request. Both are now part of the type decision.
A B2B SaaS brand chooses a humanist sans for display and a separate, more neutral sans for body, plus a monospace for code samples in its docs. Licensing decides the rollout: the display face is licensed for web and product, so it ships as WOFF2 with font-display: swap to avoid blocking render. The team caps the type scale at six sizes, binds each to a design tokenDesign TokenDesign SystemA design token (colour, spacing, typography)View reference →, and the docs site, the app, and the marketing pages all resolve to the same font.family.display variable.
font.family.body) is the binding that makes every screen obey it.In the Unified Product Graph, Brand TypographyBrand IdentityBrand typography specifications is a leaf in the Experience, Design and Brand region, held by brand_typographyBrand IdentityBrand IdentityThe root brand identity entityView reference → through brand_identityBrand Identitytypeset withBrand Typographyhierarchy. Like brand colourBrand ColourBrand IdentityA brand colour definitionView reference →, it feeds the design systemDesign SystemDesign SystemThe root design system entityView reference →: a typeface choice resolves into tokens that the product and the marketing surfaces read, which is what keeps a brand sounding the same in print, in the app, and in the docs.brand_identity_typeset_with_brand_typography
Type-specific fields on BaseNode
font_familystringFont family name (e.g. "Inter", "Playfair Display", "JetBrains Mono")
categorystringTypographic role within the brand's type system
weight_rangestringAvailable weight range as a string (e.g. "400-700", "100-900")
sample_textstringExample text to preview the font (e.g. "The quick brown fox")
font_sourcestringWhere the font is sourced from. @example "Google Fonts", "Adobe Fonts", "self-hosted", "custom"
line_heightstringRecommended line height as a unitless ratio or CSS value. @example "1.5", "1.75", "24px"
letter_spacingstringRecommended letter spacing / tracking as a CSS value. @example "0.02em", "-0.01em", "normal"
fallback_fontstringFallback font stack for web rendering (CSS font-family fallbacks). @example "system-ui, -apple-system, sans-serif"
idstringrequiredUnique identifier (UUID)
typeNodeTyperequiredDiscriminator for the entity type
titlestringrequiredDisplay name
descriptionstringOptional detailed description
statusstringLifecycle status
tagsstring[]Freeform tags for filtering
1 edge type connected to this entity.
brand_identity_typeset_with_brand_typography