b2KIT

Font Weight Explorer

Compare all available weights of a font family from thin to black with sample text rendering.

Tested tool guide Tested browser tools Checked August 16, 2026

What Font Weight Explorer does, with a checked example

Shows the same sample string rendered in every weight a chosen font family actually ships, stacked from Thin (100) to Black (900) and labeled by name and number. Type the text you care about, pick a family, and see at a glance which weights exist, how much the stroke thickens per step, and where the range stops. The usual surprise: weights are not invented. Most families ship only a few of the nine named weights, and requesting a missing one makes the browser substitute the nearest face or synthesize a fake bold. The tool shows what is real, and what a missing weight actually resolves to.

Worked example

A concrete input and expected output from the current implementation.

Input

Family: Arial / Sample: The quick brown fox

Expected output

Two rows only, both in Arial: Regular (400) and Bold (700), each showing the sample string. No Thin, Light, Medium, Semi Bold, Extra Bold, or Black rows, because the Arial family ships just Regular and Bold faces (its Italic variants reuse the same two weights).

Arial was drawn in only two weights, so the ladder has exactly two steps. The tool lists what exists rather than filling the 100-900 scale with rows the family cannot render.

How the result is produced

1

Enumerating the installed weights

The tool asks the current browser which faces the selected family provides, then renders the sample string once per face at its native weight. Rows run lightest to heaviest, labeled with each weight conventional name and numeric value (100 to 900). Because everything renders locally, the ladder reflects the fonts actually installed or loaded on this machine, not an idealized catalog of the family.

2

Missing weights and substitution

When the family lacks a requested weight, the browser does not invent it. Requests above 500 resolve to the nearest heavier face, requests between 400 and 500 toward the lighter side, and requests below 400 to the lightest available. With no heavier face available, the renderer may synthesize a faux bold by thickening strokes. The comparison marks which rows are true weights and which are substitutions, so the preview matches your page's actual rendering.

Good uses

  • Before writing CSS that requests font-weight: 600, confirm the family actually contains a 600 face; otherwise every heading silently renders as Bold.
  • When choosing between two similar families for an interface, compare their ladders and pick the one that ships the weights your design uses, for example 500 and 600.
  • At the small sizes body text actually uses, compare a long sample string across the ladder to find the thinnest weight that stays legible and the heaviest that stays clean.

Limits and checks

  • Availability is environment-dependent. A family like Helvetica exists on macOS but not on Windows or many Linux setups, where the browser substitutes a fallback; the ladder then shows the substitute weights, not the family you named. Check that the preview font is really the one you mean.
  • Naming is inconsistent across families: a 600 can be called Semi Bold, Demi, or Medium, and a family may ship odd numbers with gaps. Judge by the numeric value, expect irregular ladders, or a continuous slider for variable fonts rather than discrete steps.
  • A single string at a fixed size tells you about shapes, not real use. Weight perception changes with size, line length, and anti-aliasing, and a weight that looks right in the preview can render heavier at small sizes in your actual layout.

Common questions

Why does my font show only Regular and Bold?

Because that family ships only those two weights. A font file contains exactly the weights its designers drew, and the tool lists what exists. This is normal, not a defect. If you need Light or Semi Bold, pick a family that includes them, or use a variable font, whose single file covers a continuous range and renders every intermediate weight.

If I set font-weight: 600 and the family has no 600 face, what renders?

Not Semi Bold. Browsers snap to the nearest real weight per the standard matching rules, usually Bold (700) for requests above 500, so the text looks heavier than intended. If only a regular face exists, the renderer may synthesize faux bold, thickening the strokes, which is visibly cruder than a designed weight. Use the explorer to see the substitution before shipping.

References and verification

The example and behavioral notes were checked against the browser implementation. Standards and primary references below define the relevant format, formula, or platform behavior.

Related Tools