Font Weight
The most space-efficient hierarchy lever, and the one most often limited by the typeface.
Definition
Weight is the thickness of a typeface's strokes, conventionally numbered from 100 to 900. Interfaces typically need three to four weights, and the gaps between them must be large enough to perceive.
Craft convention. True because the industry converged on it. Breaking it costs familiarity, not correctness.
On this plate
Reach for this when
- Defining typography tokens.
- Creating hierarchy in constrained vertical space.
- Tuning a dark theme.
Common mistakes
- Adjacent weights used for emphasis.
- Faux bold from a missing weight file.
- Light weights on body text.
- Adding a weight to the system for a single component, which then becomes the weight everyone reaches for.
A working weight set
| Weight | Name | Use |
|---|---|---|
| 400 | Regular | Body text and most interface text. |
| 500 | Medium | Labels, table headers, subtle emphasis. |
| 600 | Semibold | Headings, primary buttons, strong emphasis. |
| 700 | Bold | Display headings. Often unnecessary if 600 is available. |
Rules
- Adjacent weights such as 400 and 500 are barely distinguishable in body text. Skip a step for real emphasis.
- Never use faux bold, where the browser synthesises weight. It distorts letterforms and renders poorly.
- Light weights below 300 fail on low-resolution displays and in low contrast conditions. Avoid them for anything that must be read.
- Increase weight rather than size when vertical space is constrained.
- Bold text should be used for emphasis within a paragraph, and marked up with strong so the emphasis is conveyed to assistive technology.
Using weight as a hierarchy lever
Do
- Use weight where size would cost layout space, as in tables and dense lists.
- Keep to two or three weights, and give each one a role.
- Compensate on dark backgrounds, where type appears heavier than it is.
Do not
- Use weights under 400 for anything small, which thins to illegibility.
- Load six weights when three are used.
- Rely on faux bold from the browser, which distorts the letterforms.
In practice
- i.
Weight instead of size in tables
Data tablesMaking column headers medium weight at the same size as the data preserves row density while making the header row unmistakable.
- ii.
Four weights, three of them unused
What the system actually needsA product loading light, regular, medium, semibold and bold used three across the whole interface. Each unused weight cost bytes on every page load and gave one more thing for a component to pick wrongly.
Local chart
FND·033 · Region II · Grid C2
This entry and the entries it is stated to connect with. Each line is labelled with what the connection means.
Continue from here
Each link says what the connection is, so you can tell a principle from an alternative from a thing people mix this up with.
Short definition
The one-paragraph version, for when that is all you need.
- Variable FontTERM·064 · Term
Related concept
Connected closely enough to change how you apply this.
- ContrastFND·002 · UI foundation
- Dark ModeFND·027 · UI foundation
- EmphasisFND·018 · UI foundation
- Font SelectionFND·030 · UI foundation
- ReadabilityFND·036 · UI foundation
- Type ScaleFND·031 · UI foundation
- Typographic HierarchyFND·032 · UI foundation
- Variable FontsFND·037 · UI foundation