Blog · Typography 3 roles · 3 families
Look Intentional · Part 3

How to pick fonts
that get along

The usual problem isn't an "ugly" font — it's too many fonts that fight. A simple formula fixes it: three roles, three families.

Fonts carry half the mood of a layout. And usually it isn't that a font is "ugly" — it's that there are too many and they fight: two loud display fonts argue, the caption is set in a decorative script and won't read. Font pairing isn't about luck — it's a simple formula. Let's start with the clearest part — toggle "fight / get along":

Weekend
best summer
a short note about the lake trip and the morning light
three scripts fight — the body won't read, the eye darts

The text is the same — only the fonts change. On the left three scripts fight for attention and the body won't read; on the right a hard headline, a handwritten accent, and a quiet body live in peace.

This is the third post in a series on making layouts prettier (the first two: order and contrast + repetition; there's a separate series for color).

The formula: 3–4 roles, 3 families max

Like with color, the secret isn't grabbing more favorite fonts — it's giving each one a role. There are three or four:

HEADLINE + ACCENT + BODY ( + small STAMP )
HEADLINEWeekendAnton
ACCENTbest summerCaveat
BODYa note about the lake trip, morning lightNunito
STAMP12 · 04 · 2026Cutive Mono

HEADLINE — sets the mood

Big, characterful, readable from across the room. A bold grotesque (Anton, Bebas Neue), a bold display serif (Abril Fatface), or a marker (Permanent Marker). Rule: one per layout, 1–3 words.

ACCENT — the spark

Highlights a key word, a date, an emotion. It should contrast the headline in shape: hard headline → handwritten accent, and vice versa. Calligraphy (Dancing Script, Great Vibes), handwriting (Caveat), retro script (Lobster, Pacifico). Sparingly — 1–3 words.

BODY — what people actually read

Dates, descriptions, captions. Neutral, legible: a clean sans (Nunito, Poppins, Quicksand) or a mono (Cutive Mono) for a journaling feel. The body is always the boring one — legibility beats character.

STAMP (optional) — a detail

A faux stamp, a tag, a checklist: a monospace (Cutive Mono, Space Mono) or a printed handwriting (Patrick Hand).

The main rule: contrast, not "almost the same"

Same as the contrast post: fonts should differ clearly. Two similar sans-serifs or two scripts side by side aren't a pair — they're mud: the eye sees "something's off" but can't tell what matters.

Ready-made pairings you can steal

Don't build from scratch — grab a proven pairing and adjust. Four by mood:

🌿 Cozy journal
Weekend
best summer
a note about the lake trip
Permanent Marker · Caveat · Nunito
✨ Trendy / minimal
Weekend
best summer
a note about the lake trip
Bebas Neue · Great Vibes · Poppins
📰 Editorial
Weekend
best summer
a note about the lake trip
Abril Fatface · Cormorant · Lora
🎈 Playful
Weekend
best summer
a note about the lake trip
Fredoka · Pacifico · Quicksand

Golden rules

  1. Three families max per layout — more is visual noise.
  2. Contrast is a must — hard + soft, big + small, upright + handwritten.
  3. One font = one role — don't use the headline font for captions.
  4. The body is always the boring one — legibility over character.

FAQ

How many fonts can I use on a page?

Three families max. Two is usually enough: a characterful headline and a clean sans for the body. A script accent is the optional third.

Which fonts go well together?

Ones that contrast in shape: a hard grotesque with a handwritten script, a display serif with a clean sans. Similar fonts (two sans, two scripts) usually fight — pick ones with different character.

What font should I use for captions and dates?

The most boring and legible one: a clean sans (Nunito, Poppins) or a monospace (Cutive Mono) for a "stamp" look. Legibility at small sizes is what matters.

Fonts get along when each has its own role and they contrast in character. Three families, three jobs: the headline leads, the accent flashes, the body reads quietly. Grab one ready-made pairing — and half your layout already sings.