Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Type Scale Generator

A base size and a ratio, as fixed sizes or fluid clamp() steps, with spacing to match.

Design No upload Works offline Free preview, no sign-upIncluded in your pass Pro tool Pro pass: ₹179 for 30 days

Try before you buy.

  • Free preview: every step on a watermarked specimen in your font, its zoom check and the first half of each table and export; copying and downloads stay locked.
  • Locked until you unlock it: download and copy.
  • Unlock: Pro pass, ₹179 for 30 days, a one-time payment that never renews.

Ways to unlock shows how to get the full result.

See passes (opens in a new tab)

Printing this result is locked in the free preview.

Scale

Narrow screens
px
px
Wide screens
px
px
Step names

0.25 to 6 times the base size (3xs to 3xl), rounded to the grid.

Settings
Write sizes in
px

Before each type step in CSS and SCSS; automatic gives --step-0 or --text-base.

Preview

Sizes and exports

Type scale —

Type steps

NameSizeremCSS valueZoom

Spacing steps

NameSizeCSS value

Next steps

About the Type Scale Generator

A type scale gives every text size on a site one proportion: start from a base size and multiply by the same ratio for each step up, divide for each step down. Pick a base (usually your body text, such as 16 px) and a ratio — the musical intervals of Tim Brown’s Modular Scale, from the minor second (1.067) through the major third (1.25) and the perfect fourth (1.333) to the golden ratio (1.618) — or type your own. You get each step’s size in px and rem, previewed on headings, a paragraph and captions in the font you choose.

Make it fluid and the scale grows with the screen: one base and ratio for phones, another for desktops, and every step written as a CSS clamp() that moves smoothly between them, as the Utopia calculators do. Each fluid step is checked against WCAG 2.2 success criterion 1.4.4, so you know whether zooming can still double it. A matching spacing scale (0.25 to 6 times the base, on a 4- or 8-point grid) comes with it, and everything exports as CSS variables, a Tailwind v4 @theme, a Tailwind v3 config, SCSS or design tokens. Without a pass you see a free preview: every step on a watermarked specimen and the first half of the tables and exports.

How to use it

  1. Choose Fixed for one set of sizes, or Fluid for sizes that grow between a narrow and a wide viewport.
  2. Enter the base size and pick a ratio (or Custom ratio). For a fluid scale, set the viewport width, base and ratio for narrow and for wide screens: a smaller ratio on phones keeps headings from getting too big.
  3. Set how many steps above and below the base you need, and the step names: step-0, step-1… or Tailwind’s base, lg, xl….
  4. Choose a spacing scale grid, then check the sizes on the preview: pick a font, type a sample heading and, for a fluid scale, move the window-width slider.
  5. Pick an export format. With a Pro pass, Copy or Download it; in the free preview copying and downloads are locked.

Examples

A fixed scale
Input
Base 16 px, major third (1.25), 5 steps up and 2 down
Result
48.83, 39.06, 31.25, 25, 20, 16, 12.8 and 10.24 px (3.0518rem to 0.64rem)

16 × 1.25 = 20, 20 × 1.25 = 25, … and 16 ÷ 1.25 = 12.8.

A fluid scale
Input
16 px × 1.2 at 360 px wide → 20 px × 1.25 at 1280 px wide
Result
step-0: clamp(1rem, 0.9022rem + 0.4348vw, 1.25rem); step-5: clamp(2.4883rem, 1.9693rem + 2.3067vw, 3.8147rem)

step-5 grows from 39.81 px on phones to 61.04 px on desktops; every step passes the zoom check.

The golden ratio with Tailwind names
Input
Base 16 px, golden ratio (1.618), 4 up and 1 down
Result
sm 9.89, base 16, lg 25.89, xl 41.89, 2xl 67.77, 3xl 109.66 px
Spacing on a 4-point grid
Input
Base 16 px
Result
space-3xs to space-3xl: 4, 8, 12, 16, 24, 32, 48, 64 and 96 px

Common uses

  • Setting up the type sizes of a new design system or website in one step.
  • Replacing a pile of one-off font sizes with a consistent scale.
  • Fluid headings that suit phones and desktops without media queries.
  • Spacing tokens that match the type for padding, gaps and margins.

How a modular scale works

Robert Bringhurst described a modular scale as a prearranged set of harmonious proportions, like a musical scale; Tim Brown’s More Meaningful Typography brought it to the web: start with a ratio and a number, then multiply and divide. Step n of the scale is base × ratio^n, so step 1 is base × ratio, step 2 is base × ratio², and step −1 is base ÷ ratio. The named ratios here are those of Modular Scale, from musical intervals (5:6 is the minor third, 4:5 the major third, 3:4 the perfect fourth, 2:3 the perfect fifth) and the golden section (1:1.618).

Choosing a ratio

Small ratios (1.067–1.2) keep sizes close together, which suits dense interfaces and small screens; larger ratios (1.25–1.618) give strong contrast between headings and text, which suits editorial pages and landing pages. A fluid scale can use both: a minor third on phones, where a big ratio would make headings huge, and a major third or perfect fourth on desktops.

Fluid scales

A fluid scale has a base and a ratio at a narrow viewport and at a wide one. Each step’s two sizes are joined by a straight line, written as clamp(min, intercept + slope × 100vw, max) with slope = (max − min) ÷ (wide − narrow viewport) and intercept = min − narrow viewport × slope — the Utopia method. The preview’s slider shows the scale at any window width in between. The CSS Clamp Generator explains a single value in detail.

Spacing that matches the type

The spacing scale multiplies the same base: 3xs is a quarter of it, then 2xs ½, xs ¾, s 1, m 1½, l 2, xl 3, 2xl 4 and 3xl 6 times, so padding and gaps keep the rhythm of the text. On a 4-point grid each size is rounded to a multiple of 4 px; on an 8-point grid to a multiple of 8 px with 4 px kept as the half step, which can make two neighbouring steps equal (the page says when).

Zoom and accessibility

Sizes are written in rem, so they follow the reader’s default text size and page zoom. In a fluid step, the vw part does not grow with zoom; following WCAG 2.2 success criterion 1.4.4 Resize Text, each fluid step is checked for whether page zoom up to 500 % can still make it twice as large, and steps that fail are named. A step whose largest size is at most 2.5 times its smallest always passes.

Using the exports

  • CSS variables: --step-0: clamp(…), then font-size: var(--step-0).
  • Tailwind v4: an @theme block with --text-* and --spacing-* variables, which become utilities such as text-step-0 and p-space-m.
  • Tailwind v3: theme.extend.fontSize and theme.extend.spacing for tailwind.config.js.
  • SCSS: variables and a $font-sizes map.
  • Design tokens: the Design Tokens Community Group format, with dimension tokens in px or rem; a fluid step is a group with its min and max and the clamp() under $extensions.

Limitations

  • The sizes are exact; rounding to whole pixels for a design file is up to you. Fonts with a large or small x-height can look a step larger or smaller than the numbers suggest.
  • The zoom check models page zoom as in Maxwell Barvian’s analysis of fluid type, with the zoom levels Chrome offers; Safari’s zoom can behave differently, so check your pages there too.
  • Up to 12 steps above and 12 below the base.
  • In the free preview every step is shown on a watermarked specimen with its zoom check, with the first half of the size tables and of each export; copying and downloads stay locked.

Privacy

Everything happens in your browser. What you enter or open here is not uploaded or stored by MySmartCoPilot. The preview fonts are downloaded from this site the first time you pick one; your settings never leave your device.

Frequently asked questions

What do I get without a pass?

Without a pass, Type Scale Generator shows every step on a watermarked specimen in your font, its zoom check and the first half of each table and export; copying and downloads stay locked. Until you unlock it, the result can’t be downloaded or copied. A Pro, Premium or Ultimate pass, a one-time payment that never renews, unlocks the full result. The pricing page lists the passes and their prices.

What is a good type scale ratio?

For interfaces and phones, 1.125–1.2 (major second to minor third); for most websites, 1.25 (major third) or 1.333 (perfect fourth); for editorial pages, up to 1.5 or the golden ratio 1.618. A fluid scale can use a smaller ratio on narrow screens and a larger one on wide screens.

How do I calculate font sizes from a ratio?

Multiply the base by the ratio once per step up and divide once per step down: with 16 px and 1.25, the steps are 20, 25, 31.25 and 39.06 px up and 12.8 and 10.24 px down.

What is a fluid type scale?

A scale whose sizes change smoothly with the screen width, written with CSS clamp(): each step has a size on narrow screens and a size on wide screens, and grows in a straight line between them.

Can I use it with Tailwind CSS?

Yes. Choose Tailwind names (base, lg, xl…) or keep step-0, step-1…, and use the Tailwind v4 export (an @theme block) or the v3 export (theme.extend.fontSize) for your config.

Should font sizes be in rem or px?

rem, so text follows the reader’s browser settings; the page writes rem by default and can switch to px.

Is anything sent to a server?

No. The scale is worked out in your browser; only the preview font files come from this site.

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.