The problem people misdiagnose
A page of text feels tiring. The instinct is that the font is wrong, or too small, so the typeface gets swapped and the size goes from 16 to 18. It does not help, and now the page holds less.
The usual culprit is not the typeface. It is the measure — the length of the line, counted in characters. On a wide screen with no width limit, a paragraph can run 140 characters across. Reading it is genuinely harder work.
At the end of a line your eye performs a return sweep: a long jump back and to the left onto the start of the next line. That jump is ballistic and slightly imprecise, so the longer the line, the more often it lands on the line above or below the one it wanted. You re-read a line, or skip one and lose the thread. You do not notice this happening. You notice being tired.
The numbers that matter
- 45 to 75 characters per line for continuous text, spaces included. Around 66 is the traditional target for a printed book.
- 35 to 50 on a phone.
- Fix it with a maximum width, not a smaller font — roughly 30 to 34em in CSS terms.
To measure: count the characters in one full line. Ten seconds, and the best-spent ten seconds in this course.
Line spacing follows from measure. Body text on screen wants roughly 1.4 to 1.6 times the font size. Longer lines need more, because the return sweep needs a bigger target. Headlines want less — around 1.0 to 1.2 — because at large sizes the default gap opens into a visible hole.
Point size measures a box, not the letters
This is what makes font sizes untrustworthy. A type size measures the invisible body the letters sit on, inherited from the metal block in a printing press. It does not measure the letters.
What you actually perceive as size is the x-height: the height of a lowercase x, and therefore of most of the letters in any word. Typefaces vary enormously here. Set Helvetica and EB Garamond both at 16 pixels and the Garamond looks noticeably smaller, because it has a small x-height and long ascenders. Neither is wrong; the number is just not measuring what you think it is.
Two consequences:
- When you swap a typeface, re-set the size by eye against the old one. Do not assume 16 is 16.
- Large x-heights hold up better at small sizes and on poor screens. Small x-heights read as more formal and need a size bump and more leading.
What a typeface actually communicates
Less than designers claim and more than clients think.
What is reasonably reliable is association through exposure. A typeface carries whatever the reader has seen it doing. Comic Sans reads as a school noticeboard because that is where people met it. Times New Roman reads as an unstyled document, because for twenty years it appeared when nobody chose anything. Impact reads as a meme caption. None of this is in the letterforms; it is in the reader's history.
There is also era. Heavy slab serifs come out of nineteenth-century wood-type advertising and still read as loud and physical; geometric sans-serifs built from circles and straight lines come out of 1920s European modernism and still read as rational and a bit cold.
What is not reliable is the claim that a typeface is friendly, trustworthy or premium. The research behind those assertions is thin and does not travel across cultures or scripts. The safest formulation: a typeface can be clearly wrong more reliably than it can be clearly right. A legal notice in a rounded comic face is wrong, and everyone agrees. Which of two competent sans-serifs is more trustworthy is a conversation with no answer.
Why two or three typefaces is the working limit
The limit is usually stated as a taste rule. It is not; it is an information rule.
A change of typeface signals that the kind of thing you are reading has changed — heading, not body; quotation, not commentary. With two typefaces you have one such signal, which is generally enough. With five, a change of typeface no longer means anything, because it happens constantly. You have spent the signal and received nothing.
You do not need extra families to get contrast. Within one family you have regular, semibold, bold and italic — four clearly distinct voices from one file, guaranteed to fit together because they were drawn together.
For a serif and a sans that pair without guesswork, use a superfamily: IBM Plex Sans and Serif, Source Sans and Source Serif, Noto Sans and Noto Serif. All free.
Free, and legally free
Google Fonts, Fontshare and Open Foundry give away professional typefaces under the SIL Open Font License, which permits commercial use. A genuine free path, not a compromised one.
Two warnings.
Licence. Sites advertising "1000 free fonts" often host commercial fonts someone simply uploaded. Using one in paid client work is a real exposure for you and your client. Look for the actual licence; SIL Open Font License is the safe one to see.
Script coverage. This matters more than most courses admit. Many popular Latin typefaces contain no Devanagari, Bengali, Tamil, Telugu, Thai or Arabic at all. If you set a Hindi headline in one, the text silently falls back to whatever the device has, and your careful design breaks on the phones of the people you made it for. Check the language coverage before you commit — Google Fonts lets you filter by script, and the Noto family exists to cover the ones others skip.
Today
Take one paragraph you have written and count the characters in a full line. If it is over 75, set a maximum width until it lands between 60 and 70, set the line spacing to 1.5, and read it again without changing anything else.
Before you move on