A pricing page can contain all the right information and still leave visitors unsure where to look. The headline, plan names, billing notes, feature lists, captions, and buttons may all be technically readable, yet the page feels flat because nothing establishes a clear reading order. Typography hierarchy solves that problem by turning text into a visible system of importance.
That system matters beyond visual polish. Font size affects comprehension, line length affects reading rhythm, contrast supports accessibility, and font licensing determines whether the typefaces used to express the hierarchy can legally appear in the final product. For designers, developers, agencies, and compliance teams, typography is therefore a shared operational concern, not a private styling preference.
When Everything Looks Equally Important
Priya is reviewing a new pricing page with the product team. The page has three subscription plans, a prominent headline, short descriptions, feature lists, billing notes, and several calls to action. Yet the headings, body copy, captions, and button labels are rendered in nearly identical sizes, weights, and colors.
The result is difficult to describe in a design critique because the problem isn't one obviously broken component. It's the absence of a reading path. Eyebrows, subheads, helper text, and CTA microcopy all compete for the same small amount of visual space, so stakeholders argue about emphasis without being able to point to a reliable answer for the visitor's first, second, and third stops.

Hierarchy creates a reading order
Typography hierarchy is the deliberate arrangement of size, weight, spacing, color, and position so readers can scan information in the intended sequence. A visitor should be able to recognize the page topic, identify the available choices, understand the difference between those choices, and then locate the next action without reading every word.
A flat pricing card might show:
- Plan name at one size
- Price at the same size
- Feature copy in the same weight
- Billing note in the same color
- Button label with no stronger emphasis than surrounding text
A structured card gives each role a distinct job. The plan name identifies the option, the price establishes the primary value, the feature list supports evaluation, the billing note qualifies the price, and the button provides the action. The differences don't need to be dramatic. They need to be consistent enough that the eye can interpret them quickly.
Practical rule: If someone can't identify the page's primary message after a brief glance, changing the typeface alone probably won't solve the problem. Start by ranking the content.
Flat hierarchy creates practical costs. A landing page can make the main action harder to find, a documentation site can slow comprehension, and a product interface can force users to parse every label at the same visual level. Accessibility changes can also create compliance friction when a body label needs more size or spacing but the surrounding system has no reserved room to absorb the change.
The most useful mindset is to treat hierarchy as a measurable attention problem. You're deciding which text should attract attention, which text should support comprehension, and which text should remain available without competing for priority. You're also deciding which font files and rendered weights must be licensed, documented, and monitored.
The Five Channels That Carry Importance
Typography hierarchy communicates importance through five connected channels. Size is the most obvious, but relying on it alone produces brittle layouts. A smaller adjustment to weight combined with deliberate spacing can often create a clearer result than making one heading much larger.

Size establishes the first signal
On a settings card, a simple size relationship might look like this:
<h2>Security settings</h2>
<p class="subhead">Control access to your account</p>
<span class="helper">Changes apply to future sign-ins</span>
h2 { font-size: 28px; }
.subhead { font-size: 18px; }
.helper { font-size: 14px; }
The 28px heading announces the card's subject. The 18px subhead explains the purpose. The 14px helper text supplies supporting information. Size gives the reader a quick map, but the values still need suitable line-height, contrast, and responsive behavior.
Weight changes emphasis without changing footprint
Two labels can occupy the same amount of space and still have different priorities:
<span class="label-primary">Save changes</span>
<span class="label-secondary">Cancel</span>
.label-primary { font-weight: 600; }
.label-secondary { font-weight: 400; }
The 600 weight can make the primary action easier to locate, while the 400 weight keeps the secondary action present but quieter. Weight is especially useful when a layout cannot accommodate a larger size.
Space explains relationships
Spacing tells readers which pieces belong together. For example, 24px above a heading can separate a new content group, while 8px below it can keep the heading visually connected to its paragraph. The same text can feel unrelated or unified depending on those gaps.
Color reinforces importance
A near-black body label and a 55 percent gray caption create an immediate distinction. That gray caption still needs sufficient contrast for its size and weight, however. Muting supporting content too aggressively can turn hierarchy into an accessibility failure.
Position changes meaning
A label directly above an input is read as a stable field name:
Email address
[ ]
The same words inside the field become a placeholder:
[ Email address ]
The first arrangement preserves the label while the user enters information. The second presents the wording as a temporary hint. Position therefore affects not only visual rank but also interpretation and usability.
These channels compound. Doubling one signal, such as making a heading extremely large, can create wrapping and responsive problems. Smaller changes across size plus weight, or space plus contrast, often create a more durable hierarchy. A scale system gives the size channel repeatable anchors, while the remaining channels keep that scale useful in real layouts.
Choosing a Type Scale That Fits the Product
A modular type scale gives a product team a repeatable relationship between text roles. Start with a 16px body base, then multiply or divide by a chosen ratio to create steps. The ratio changes the product's character: a small ratio keeps levels close together, while a larger ratio creates stronger contrast between headline and supporting text.
For a simple comparison, calculate H1 as the body base multiplied by the ratio raised to the number of steps. If H1 sits two steps above body, the resulting values are approximately:
| Ratio | H1 (px) | H2 (px) | H3 (px) | Caption (px) | Best For |
|---|---|---|---|---|---|
| 1.125 minor second | 20.25 | 18 | 16 | 14.22 | Dense dashboards and data tables |
| 1.25 major third | 25 | 20 | 16 | 12.8 | Balanced product interfaces |
| 1.333 perfect fourth | 28.43 | 21.33 | 16 | 9 | Strong editorial and application hierarchy |
| 1.5 perfect fifth | 36 | 24 | 16 | 7.11 | Generous marketing pages and long-form reading |
| 1.618 golden ratio | 41.89 | 25.89 | 16 | 6.11 | Dramatic display-led compositions |
The values above are mathematical anchors, not commands. A caption that calculates below a comfortable reading size should be adjusted rather than applied directly. The scale's purpose is to reveal relationships and prevent every text style from becoming an isolated decision.
A practical role map
With step 0 assigned to body text, a product might reserve steps above and below it like this:
- H1: A high display step for the page's primary statement
- H2: A clear section step for major content groups
- H3: A smaller subsection step for component-level structure
- Body lead: A modestly enlarged introduction
- Body: Step 0, used for sustained reading
- Caption: A supporting step below body, with contrast protected
- Small print: The lowest reserved step, used sparingly
A 1.125 scale keeps the levels close, which suits dashboards where many controls and data points must coexist. A 1.5 scale creates a more open editorial feel, which can help marketing pages and long-form content establish stronger pauses between levels.
A 2016 peer-reviewed readability study found that increasing font size produced significant positive effects on readability and comprehension, with comprehension improving for 18-point and 26-point text. The authors reported that the effects continued improving up to 18/22 points, beyond older 10/12/14-point norms, and recommended 18-point text with default line spacing for text-heavy websites. Read the peer-reviewed font-size findings before treating a compact scale as automatically efficient.
For a deeper way to connect scale choices with reading evaluation, use this readability scoring and metrics guide. Large ratios amplify accessibility work because size jumps often require corresponding adjustments to line-height, wrapping, and contrast. The word “scale” also has a second meaning for production teams. Every additional rendered weight or style may expand the font files that need a valid deployment license.
Licensing the Hierarchy, Not Just the Font
A design file may show one font family, but a live product can ship several licensed assets. Regular body text, semibold labels, bold headings, italic notes, and variable font files each need to be checked against the terms that govern their use.
| License Type | Permitted Use | Common Restrictions | Hierarchy Risk |
|---|---|---|---|
| Desktop | Installation on specified machines for logos, PDFs, print materials, or images | Usually excludes website and app deployment | A print-approved weight may be embedded on the web without permission |
| Web | Browser delivery through hosted or self-hosted files | Terms may depend on page views or downloads | A marketing launch can exceed the permitted usage scope |
| App | Embedding in an application or software product | Deployment, user access, and platform terms vary | A web license may not cover an app bundle or interface |
Desktop licenses generally cover static outputs, such as logos, PDFs, print materials, or images. Web and app deployment is treated differently, and industry licensing guidance states that desktop licenses exclude web and app use while web pricing may be based on usage metrics such as page views or downloads. Review the enterprise font licensing distinctions.
The same asset can pass one audit and fail another
Suppose a marketing team licenses Inter for desktop work, uses it in a print PDF, and then ships the same family through a public website using Google Fonts. The PDF may fit the desktop license, while the homepage still requires a separate review of the web terms. The family name alone doesn't answer the question. The audit needs to identify the actual files, rendered weights, delivery method, and permitted audience.
Three clauses deserve explicit attention:
- Page-view caps: Check whether the web agreement limits delivery by page views or another usage measure.
- Derivative work rights: Confirm whether modification, subsetting, or conversion of the font is permitted.
- Self-hosting and CDN delivery: Verify whether the contract allows the exact hosting and distribution method used in production.
A licensing review should trace every rendered weight back to a foundry contract, not stop at the family name in a design file.
Unauthorized use can create serious exposure. U.S. statutory copyright damages are commonly cited at $750 to $30,000 per infringed work, with willful infringement reaching up to $150,000 per infringed work under 17 U.S.C.; rightsholders may also seek actual damages such as lost license fees. See the legal overview of typeface and font copyright. This article is informational, not legal advice. Your legal or licensing counsel should interpret the contract and applicable law.
Teams can use this font licensing guide for designers and developers to organize the review, but the controlling document remains the applicable foundry agreement.
Shipping Hierarchy in CSS and Tokens
A hierarchy survives responsive changes when developers encode roles rather than scattering one-off values throughout stylesheets. Semantic tokens such as --text-display and --text-body give design, engineering, and content teams a shared vocabulary. Components can then consume the role they need without knowing every underlying size.
:root {
--text-display: 2.5rem;
--text-h2: 1.75rem;
--text-body: 1rem;
--text-caption: 0.875rem;
--leading-display: 1.15;
--leading-body: 1.5;
--content-measure: 65ch;
}
.page-title {
font-size: var(--text-display);
line-height: var(--leading-display);
}
.article-body {
max-width: var(--content-measure);
font-size: var(--text-body);
line-height: var(--leading-body);
}
@supports (font-size: clamp(1rem, 2vw, 2rem)) {
.page-title {
font-size: clamp(2rem, 5vw, 4rem);
}
}
.card-shell {
container-type: inline-size;
}
.card-title {
font-size: var(--text-h2);
}
@container (max-width: 24rem) {
.card-title {
font-size: 1.35rem;
}
}
Let the viewport and component set the context
clamp() combines a minimum, preferred fluid value, and maximum value. That lets a heading grow with the viewport without becoming unmanageably large. The minimum protects narrow screens, the preferred value creates fluid behavior, and the maximum keeps the hierarchy bounded on wide displays.
Container queries solve a different problem. A card may appear in a full-width page, a narrow sidebar, or a dense grid. If its typography responds only to the viewport, the component can inherit an unsuitable hierarchy. A container query lets the card respond to its own available width.
For unsupported browsers, declare a stable base value first, then place enhanced behavior inside @supports. For container queries, preserve a sensible component-level size as the fallback. This approach keeps the semantic roles intact even when newer layout features aren't available.
Token names should describe purpose, not implementation. --text-body remains meaningful if the team later changes the ratio, typeface, or breakpoint behavior. A production design system typography guide can help teams document those roles alongside weight, line-height, letter spacing, and spacing rules.
Accessibility, Line Length, and Contrast
Accessible hierarchy is structural. A heading can look prominent and still fail if its contrast, reading measure, line-height, or semantic order makes the content difficult to use. Designers should evaluate the visual system, while developers should verify that the DOM and CSS express the same order.
WCAG-oriented guidance commonly uses 4.5:1 for normal text and 3:1 for large text. Review the typography accessibility principles when setting text tokens. A lighter weight can reduce perceived contrast even when the color value appears to pass, so a thin display heading needs testing in its actual size, weight, and rendering context.

Preserve the reading rhythm
Line length affects the eye's ability to find the next line. Guidance converges on roughly 45 to 75 characters per line, with about 66 characters often considered comfortable. The European Commission uses a somewhat wider 75 to 85-character range for multilingual editorial layouts. See the European Commission typography guidance.
In CSS, a character-based maximum such as 65ch is more resilient than a pixel-only width:
.prose {
max-width: 65ch;
line-height: 1.5;
}
Body text generally needs at least 1.5 line-height for sustained reading, with many guides recommending 1.5 to 1.6. Large headings can use tighter 1.1 to 1.3 leading because display text already contains more inherent whitespace. These values should be tested with the chosen typeface, since x-height, weight, and wrapping affect the result.
Make the visual and semantic orders agree
Use real heading levels in the DOM, even when CSS changes their appearance. A visually small heading shouldn't be coded as a lower-level heading merely because it looks less prominent. Focus indicators should also use the system's color and spacing tokens instead of relying on a faint or inconsistent browser outline.
Animated type transitions need a reduced-motion path. If a headline scales, slides, or changes weight during interaction, users who select reduced motion should receive a stable state without the animation. For broader practical guidance on how to make your site accessible, connect the typography review to the rest of the interface rather than treating text as an isolated layer.
Use this contrast ratio checker to validate actual foreground and background combinations. This article provides informational design guidance, not legal advice, and a qualified accessibility or legal reviewer should assess the requirements that apply to your product.
Running a Typography Hierarchy Audit
A page can pass a visual review and still fail as a working system. For example, a designer may approve a heading scale while the browser loads an unlicensed weight, a developer overrides a token on one component, or a compliance reviewer cannot trace a rendered face to its permission record. A useful audit captures evidence that all three roles can inspect and reproduce.

Start with the live URL
Crawl the production page with a font audit tool. Record each detected family, file format, rendered weight, style, and delivery method. Include assets loaded by components outside the first viewport. A hidden menu, modal, or checkout state can still ship a font file and create both payload and licensing obligations.
Create a master list with fields such as:
- Family and foundry: Record the name shown in the file and the organization that owns or distributes it.
- Rendered role: Map each face to display, heading, body, caption, utility, or interface action.
- Delivery path: Mark whether the file is embedded, self-hosted, or delivered through a CDN.
- License evidence: Attach the contract, invoice, entitlement record, or other approval document.
- System token: Identify the semantic token that should control the style.
Compare the page with the declared system
Inspect the DOM and computed styles together. Check whether headings use the intended semantic levels, body copy follows the approved measure, and captions remain above the accepted contrast threshold. A token name in a stylesheet does not prove that the browser uses it. Local overrides, inherited rules, fallback fonts, and missing weights can change the result users see.
Record the visible and technical differences, then ask:
- Is the font covered by a desktop, web, or app license?
- Does the agreement permit the current page-view or download scope?
- Are modified or subsetted files allowed?
- Is the chosen self-hosting or CDN method permitted?
- Does every rendered weight have matching evidence?
- Are page font assets heavier than 250 KB, indicating possible performance debt?
The final threshold is a diagnostic prompt, not a legal limit. A large payload can indicate too many hierarchy styles, unused glyph ranges, or redundant families. It also gives developers a concrete performance finding instead of a general concern.
Teams seeking broader experience context can browse UX audit articles after the typography review. Keep the report precise enough for a developer to create a ticket and a compliance reviewer to reproduce the finding. The website font checker audit guide offers a structure for documenting live evidence without replacing legal review.
Export a defensible checklist
Use a repeatable record with these fields:
- URL and audit date
- Page and component scope
- Font family, foundry, weight, and style
- License type and permitted deployment
- Hosting method and file location
- Token-to-DOM match
- Size, line-height, measure, and contrast findings
- Performance observations
- Owner, remediation decision, and evidence attachment
Font Checker Pro can scan a live URL, PDF, image, or zipped font set and produce exportable typography reports for design, operations, and compliance workflows. Treat its detected font and licensing information as one input to the review. Legal counsel remains responsible for interpreting contractual rights.
Attach the checklist to a Jira ticket, release review, or licensing file. It makes hierarchy measurable across scan behavior, browser output, accessibility checks, performance, and authorization. Designers, developers, and compliance reviewers can then work from the same record, rather than from separate impressions of the page.



