The typographic scale

The typographic scale has been used for centuries as a means of creating balanced and harmonious font sizing. It is the bedrock of modern typography. This is the classic typographic scale, as recorded by Mr. Bringhurst in The Elements of Typographic Style:

6a7a8a9a10a11a12a14a16a18a21a24a30a36a48a60a72a
Classic typographic scale, from The Elements of Typographic Style.

The classic typographic scale is a harmonious progression of font sizes, like the notes of a musical scale. Because the classic typographic scale is a scale, it must obey the scaling property: if \(f\) is a size in the scale, then \(rf\) must also be a size in the scale, where \(r\) is the ratio of the scale.

6a
aaaa12a
aaaa24a
aaaa48a
aaaa96a
Classic typographic scale, with the whitespace removed to show the scaling property.

The font sizes 6, 12, 24, etc., all appear in the scale; each font size is twice as big as the last: The ratio of the classic typographic scale is two. Similarly, in music, each C note vibrates twice as fast as the previous C note. The classic typographic scale has the same ratio as a musical scale.

The second defining property of any scale is the number of notes, \(n\). In the classic typographic scale, there are five font sizes in each interval. In chromatic music, there are twelve notes in each octave.

The third, and final, property of any scale is its fundamental frequency, \(f_0\). In music, this is the Stuttgart pitch. In the classic typographic scale, the fundamental frequency is the pica. This value, 1 pica = 12 pt, is the baseline font size used in print typography.

The general formula for the frequency \(f_i\) of the \(i\)th note of a scale is:
$$\huge{f_i = f_0 r^\frac{i}{n}}$$

Using this formula, we can generate every font size in the classic typographic scale, and we can compare these values against the “rule of thumb” values guessed by the original typographers:

6a7a8a9a10a12a14a16a18a21a24a28a32a36a42a48a55a63a73a84a96a
Classic typographical scale. These are the exact mathematical values.
6aaaaa
11a12a
aaaa24a28a
30a32a
36a42a48a55a
60a63a
72a73a
84a96a
Classic typographical scale. These are the historical values guessed by human typographers. The deviations from the mathematical values are marked in red.

The human initution was very close! But there are discrepancies.

First, there is an extra note that doesn’t belong in the scale. Every interval of the classic typographic scale has five notes, but the original typographic charts have six notes in the first interval. There is an extra note! The 11 pt font size is like throwing a sharp into a musical scale.

Second, there is a lost note. The 42 pt font size is missing, despite being perfectly in tune with the rest of the scale. This font size is a scaled-up version of an existing font size, so it must be there. But it’s not.

Next, the 30 pt and 60 pt values are actually semitones: they’re midway between the true notes: 28 pt and 32 pt, 55 pt and 63 pt.

Finally, one of the notes is just a little flat. The 72 pt font size was rounded down to the nearest pica, which put it out of tune by 1 pt.

Applications in design

The point (pt) is the standard unit of print typography. However, some media are better suited to other units of measure—such as web design, with its em and px units. It would be helpful if we could adapt the classic typographic scale to all media.

In addition, we know from music that the scale chosen for a musical composition can change its feel: Are there any other typographic scales that could change the feel of our visual compositions?

There are three ways to alter a scale: you can change the fundamental frequency \(f_0\), the number of notes \(n\) in an interval, or the ratio \(r\) of the scale.

By altering the fundamental frequency, \(f_0\), you can adapt an existing scale to a new medium. For example, \(f_0\) = 12 pt generates the font sizes for print typography, whereas \(f_0\) = 1 em generates the font sizes for web typography.

By altering the number of notes in an interval, \(n\), you can change the number of font sizes that are available. For example, a musical typographical scale with \(n\) notes provides at least \(n + 2\) useful font sizes: the baseline body size, a “fine print” size, and a series of \(n\) header sizes. The classic typographic scale has a high value of \(n\), so it provides a large palette of font sizes. But some designs prefer simplicity. Sometimes less is more.

By altering the ratio, \(r\), you can change the rate at which the font sizes grow. Two compelling choices are the musical ratio (\(r = 2\)) and the golden ratio (\(r = \phi \approx 1.618034\)). When averaged over many websites, the primary header of a website is almost exactly twice the size of the body text. This means that any design based on a musical typographic scale has a beautiful property: the header and body copy are the same note, one interval apart.

Here are some of the most beautiful musical scales:

Musical tritonic scale (\(r = 2\), \(n = 3\))
Musical tetratonic scale (\(r = 2\), \(n = 4\))
Musical pentatonic scale (also known as the “classic typographic scale”) (\(r = 2\), \(n = 5\))

However, there are alternatives to the musical typographic scales: some designs are based instead on the golden ratio. These designs will be most beautiful when set in a golden typographic scale:

Golden ditonic scale (\(r = \phi\), \(n = 2\))

In some cases, a custom solution may be the most appropriate. For example, a website with consistently short, punchy titles may be well suited to a scale with a high ratio (such as \(r = 4\)). This would add impact to the titles, while remaining balanced with the other elements of the page.