The Printer's First Un-kerned Type: On the Awkward Spacing of a Perfectly Set Block Without Optical Sizing

In the mid-15th century, a typesetter in Mainz, hunched over a case of freshly cast metal sorts, would have understood our modern plight with web fonts more intimately than any of our contemporary performance dashboards. His name is lost to us, but his frustration is not. He had just set a perfect block of text for a new indulgence, a thing of mechanical marvel. Each letter was crisp, each line was straight, and the spacing between words was mathematically even. And yet, something was deeply, visually wrong.

The letters, in their rigid uniformity, seemed to repel each other. A capital ‘T’ followed by a lowercase ‘o’ left a cavernous gap, a jarring white river of space in the middle of a word. An ‘A’ and a ‘V’, placed side by side, looked as if they might topple over without the subtle overlap that the human eye expected. The page was technically correct, but it was an awkward read. It lacked the fluid, connected rhythm of a scribe’s hand. The type was set, but it wasn’t yet set right.

This is the historical echo of what we now call a Cumulative Layout Shift (CLS) event, but for the static page. It was a failure of optical alignment. The typesetter had achieved mechanical perfection but had not yet arrived at visual stability. The elements were perfectly placed according to the fixed, unyielding dimensions of their individual blocks, yet the overall composition felt unsettled, unstable, and unprofessional. The reader’s eye would stutter and jump, trying to bridge gaps that the machinery had not accounted for.

His solution, pioneered by the likes of Gutenberg and his successors, was kerning—the careful shaving down of the lead type blocks to allow for a more natural, tighter fit between specific letter pairs. It was a manual, painstaking process of creating exceptions to the rule, of acknowledging that perfect geometry must sometimes yield to perfect perception. It was the original `font-optical-sizing: auto;`.

Today, we load our web fonts and often see the same awkward dance before our eyes. The fallback font flashes into view, spacing itself according to its own metrics, only to be abruptly shoved aside when the intended web font finally loads and renders with its different character widths. The layout shudders. The text reflows. We are the modern reader, our eye stumbling over the sudden shift, pulled out of the content by the machinery behind it.

The lesson from that anonymous printer is that true typographic excellence isn't just about loading the glyphs quickly. It's about respecting the entire character of the typeface, its intended optical size, and its nuanced spacing from the very first moment. It’s about using `font-display: optional` or preloading to avoid the swap, or ensuring our fallbacks have matching metrics. We must kern our loading process, not just our type. Because a page that shifts is a page that hasn't yet been truly set.

Notes & further reading

A few pages I came back to while writing this: